apache / incubator-pagespeed-mod

Apache module for rewriting web pages to reduce latency and bandwidth.
http://modpagespeed.com
Apache License 2.0
696 stars 158 forks source link

404 error to .webp images #1862

Open cukier49 opened 5 years ago

cukier49 commented 5 years ago

Hello Everyone,

i have issue with 404 .webp images. First of all mod_pagespeed optimze images random, never all in one loading. Second one i have random 404 error to optimized media.

mod_pagespeed version: 1.13.35.2-0

This is my 456_pagespeedconf:

<IfModule !mod_version.c>
  LoadModule version_module modules/mod_version.so
</IfModule>

<IfVersion < 2.4>
  LoadModule pagespeed_module modules/mod_pagespeed.so
</IfVersion>
<IfVersion >= 2.4.2>
  LoadModule pagespeed_module modules/mod_pagespeed_ap24.so
</IfVersion>

<IfModule pagespeed_module>
  # Turn on mod_pagespeed. To completely disable mod_pagespeed, you
  # can set this to "off".
  ModPagespeed on
  ModPagespeedDisallow "transjack.pl"

  # Direct Apache to send all HTML output to the mod_pagespeed
  # output handler.
  AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER text/html

  # The ModPagespeedFileCachePath and
  # ModPagespeedGeneratedFilePrefix directories must exist and be
  # writable by the apache user (as specified by the User
  # directive).
  ModPagespeedFileCachePath            "/var/mod_pagespeed/cache/"

  # Override the mod_pagespeed 'rewrite level'. The default level
  # "CoreFilters" uses a set of rewrite filters that are generally
  # safe for most web pages. Most sites should not need to change
  # this value and can instead fine-tune the configuration using the
  # ModPagespeedDisableFilters and ModPagespeedEnableFilters
  # directives, below. Valid values for ModPagespeedRewriteLevel are
  # PassThrough, CoreFilters, TestingCoreFilters and AllFilters.
  #
  ModPagespeedRewriteLevel PassThrough
  #Core filters
  ModPagespeedEnableFilters rewrite_images
  ModPagespeedEnableFilters inline_images
  ModPagespeedEnableFilters convert_png_to_jpeg
  ModPagespeedEnableFilters convert_jpeg_to_webp
  ModPagespeedEnableFilters convert_to_webp_lossless
  ModPagespeedEnableFilters inline_google_font_css
  #ModPagespeedEnableFilters prioritize_critical_css
  #ModPagespeedEnableFilters defer_javascript

  # Additionnal filters
  ModPagespeedEnableFilters collapse_whitespace
  ModPagespeedEnableFilters remove_comments

  # Disabling filters that can be troublesome.
  # Add <head/> tags if missing. Useless.
  # ModPagespeedDisableFilters add_head
  # Heavy server load. Can be replaced by smart image management:
  # Compress and resize your images before uploading to server.
  #ModPagespeedDisableFilters rewrite_images
  # No real point. Allow the browser to render the correct
  # image dimensions without loading the image.
  # No real point. Allow the browser to render the correct
  # image dimensions without loading the image.
  # ModPagespeedDisableFilters insert_img_dimensions
  # Break XHTML by removing attribute quotation. No real point.
  #ModPagespeedDisableFilters remove_quotes
  # Can break SEO and cause 404 errors.
  #ModPagespeedDisableFilters trim_urls

    # Example pagespeed exclusion configuration (mandatory for some JS editors and frameworks

  # Explicitly disables specific filters. This is useful in
  # conjunction with ModPagespeedRewriteLevel. For instance, if one
  # of the filters in the CoreFilters needs to be disabled for a
  # site, that filter can be added to
  # ModPagespeedDisableFilters. This directive contains a
  # comma-separated list of filter names, and can be repeated.
  #
  # ModPagespeedDisableFilters rewrite_images

  # Explicitly enables specific filters. This is useful in
  # conjunction with ModPagespeedRewriteLevel. For instance, filters
  # not included in the CoreFilters may be enabled using this
  # directive. This directive contains a comma-separated list of
  # filter names, and can be repeated.
  #
  ModPagespeedDomain https://cpsystem.pl
  ModPagespeedDomain *.cpsystem.pl
  ModPagespeedMapOriginDomain "http://localhost" "https://cpsystem.pl"
  #ModPagespeedLoadFromFile "https://cpsystem.pl/wp-content" "/public_html/wp-content"
  ModPagespeedLoadFromFile disallow .*$
  ModPagespeedLoadFromFile allow \.jpe?g$
  #ModPagespeedLoadFromFile allow \.jpeg$
  ModPagespeedLoadFromFile allow \.png$
  ModPagespeedLoadFromFile allow \.gif$
  ModPagespeedRewriteDeadlinePerFlushMs 300000
  ModPagespeedRespectXForwardedProto on
  # authorizes rewriting of JS, CSS, and Image files found in this
  # domain. By default only resources with the same origin as the
  # HTML file are rewritten. For example:
  #
  ModPagespeedFetchHttps enable
  ModPagespeedSslCertDirectory /var/cpanel/ssl/installed/certs
  ModPagespeedSslCertFile /var/cpanel/ssl/installed/certs/cpsystem_pl_e187d_906d5_1518363944_b004b1d67f4a39ed4d90bed5bebfc52a.crt

  # This will allow resources found on http://cdn.myhost.com to be
  # rewritten in addition to those in the same domain as the HTML.
  #
  # Wildcards (* and ?) are allowed in the domain specification. Be
  # careful when using them as if you rewrite domains that do not
  # send you traffic, then the site receiving the traffic will not
  # know how to serve the rewritten content.

  # Other defaults (cache sizes and thresholds):
  #
  ModPagespeedFileCacheSizeKb          102400
  ModPagespeedFileCacheCleanIntervalMs 3600000
  ModPagespeedLRUCacheKbPerProcess     1024
  ModPagespeedLRUCacheByteLimit        16384
  ModPagespeedLRUCacheKbPerProcess     1024
  ModPagespeedLRUCacheByteLimit        16384
  ModPagespeedImgInlineMaxBytes        4096
  ModPagespeedJsInlineMaxBytes         2048
  ModPagespeedCssOutlineMinBytes       3000
  ModPagespeedJsOutlineMinBytes        3000
  # Bound the number of images that can be rewritten at any one time; this
  # avoids overloading the CPU.  Set this to 0 to remove the bound.
  #
  ModPagespeedImgMaxRewritesAtOnce        0

  # When Apache is set up as a browser proxy, mod_pagespeed can record
  # web-sites as they are requested, so that an image of the web is built up
  # in the directory of the proxy administrator's choosing.  When ReadOnly is
  # on, only files already present in the SlurpDirectory are served by the
  # proxy.
  #
  # ModPagespeedSlurpDirectory ...
  # ModPagespeedSlurpReadOnly on

  # The maximum URL size is generally limited to about 2k characters
  # due to IE: See http://support.microsoft.com/kb/208427/EN-US.
  # Apache servers by default impose a further limitation of about
  # 250 characters per URL segment (text between slashes).
  # mod_pagespeed circumvents this limitation, but if you employ
  # proxy servers in your path you may need to re-impose it by
  # overriding the setting here.  The default setting is 1024
  # characters.
  #
  # ModPagespeedMaxSegmentLength 250

  # Uncomment this if you want to prevent mod_pagespeed from combining files
  # (e.g. CSS files) across paths
  #
  # ModPagespeedCombineAcrossPaths off

  # Whether or not to log timing information for rewriting filters.
  # Off by default to keep logs uncluttered.
  #
  # ModPagespeedLogRewriteTiming on

  # Enables server-side instrumentation and statistics.  If this rewriter is
  # enabled, then each rewritten HTML page will have instrumentation javacript
  # added that sends latency beacons to /mod_pagespeed_beacon.  These
  # statistics can be accessed at /mod_pagespeed_statistics.  You must also
  # enable the mod_pagespeed_statistics and mod_pagespeed_beacon handlers
  # below.
  #
  # ModPagespeedEnableFilters add_instrumentation

  # This handles the client-side instrumentation callbacks which are injected
  # by the add_instrumentation filter.
  # You can use a different location by adding the ModPagespeedBeaconUrl
  # directive; see the documentation on add_instrumentation.
  <Location /mod_pagespeed_beacon>
        SetHandler mod_pagespeed_beacon
  </Location>

  # Uncomment the following line if you want to disable statistics entirely.
  #
  ModPagespeedStatistics on

  # This page lets you view statistics about the mod_pagespeed module.
  <Location /mod_pagespeed_statistics>
      Order allow,deny
      # You may insert other "Allow from" lines to add hosts you want to
      # allow to look at generated statistics.  Another possibility is
      # to comment out the "Order" and "Allow" options from the config
      # file, to allow any client that can reach your server to examine
      # statistics.  This might be appropriate in an experimental setup or
      # if the Apache server is protected by a reverse proxy that will
      # filter URLs in some fashion.
      Allow from localhost
      SetHandler mod_pagespeed_statistics
  </Location>
</IfModule>

if other information is needed, I will give it

Lofesa commented 5 years ago

Hi Tried https://cpsystem.pl/?PageSpeedFilters=+debug.-inline_images Then no images are getting a 404 but the images that returns 404 are served w/o optimization. In the debug code (injected by +debug) pagespeed module are getting 4xx headers in some images.

In other hand, if i remember the "ModPagespeedLoadFromFile allow" don´t exists is "ModPagespeedLoadFromFileRule allow" or "ModPagespeedLoadFromFileRuleMatch Disallow" see it at Limiting Direct Loading