Hi,
I've succesfuly optimized the Web site I'm working on (say
https://beta.mydomain.org) using the wonderful tool MPS is. Some images are hosted on another domain (which is available at
https://api.mydomain.org) and the next step is to have them optimized and proxied by MPS. As for the environment, I'm using mod_pagespeed/1.12.34.1-0 on Apache/2.4.10 (Debian) and the MPS configuration file can be found at the end of this message.
XXX.XXX.XXX.XXX - - [29/Nov/2017:08:54:01 +0100] "GET /api/ximg,3A002121714CRS.jpg.pagespeed.ic.7ZodJ3SDe7.webp HTTP/1.1" 200 14049 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36"
XXX.XXX.XXX.XXX - - [29/Nov/2017:09:00:31 +0100] "GET /api/ximg,3A002121714CRS.jpg.pagespeed.ic.7ZodJ3SDe7.webp HTTP/1.1" 304 320 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36"
XXX.XXX.XXX.XXX - - [29/Nov/2017:09:00:32 +0100] "GET /api/ximg,3A002121714CRS.jpg.pagespeed.ic.7ZodJ3SDe7.webp HTTP/1.1" 304 182 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36"
The problem is that, after a few refreshes, the images aren't proxied/optimized anymore and the URL reverted back to
https://api.mydomain.org/img:002121714CRS.jpg . Investigating this, I noticed relevant entries in MPS message history e.g.:
Those messages are reflected in Apache error.log:
More information is available in HTML comments after enabling the debug filter using the URL parameter:
I tried to flush MPS cache using the admin page with no luck. I would be grateful for any clue on how to solve these issues.
Here Follows the configuration. Any remarks (like useless entries, Iknow there are some) would also be highly welcome.
ModPagespeed on
AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER text/html
AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER application/xhtml+xml
ModPagespeedSslCertDirectory "/etc/ssl/certs/gandi/"
ModPagespeedSslCertFile "GandiStandardSSLCA2.pem"
#***********************************************************************
#***********************************************************************
# LOADING STATIC FILES FROM FILE SYSTEM INSTEAD OF FETCHING THEM
#***********************************************************************
#***********************************************************************
"/home/beta/www/preprod/wp-includes/"
"/home/beta/www/preprod/wp-content/"
ModPagespeedLoadFromFileRuleMatch disallow .*$
ModPagespeedLoadFromFileRuleMatch allow \.css$
ModPagespeedLoadFromFileRuleMatch allow \.js$
ModPagespeedLoadFromFileRuleMatch allow \.gif$
ModPagespeedLoadFromFileRuleMatch allow \.png$
ModPagespeedLoadFromFileRuleMatch allow \.jpg$
ModPagespeedLoadFromFileRuleMatch allow \.jpeg$
ModPagespeedLoadFromFileRuleMatch allow \.pdf$
ModPagespeedLoadFromFileRuleMatch allow \.svg$
#***********************************************************************
#***********************************************************************
# ENABLING GZIP COMPRESSION FOR FILES SERVED BY MOD_PAGESPEED
#***********************************************************************
#***********************************************************************
# enable mod_deflate for html,xml,js,css,php files
ModPagespeedFetchWithGzip on
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml text/javascript
AddOutputFilterByType DEFLATE text/css application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
DeflateCompressionLevel 9
# for old (not compatbile) browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
# Set env var for images
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
#***********************************************************************
#***********************************************************************
# CACHING
#***********************************************************************
#***********************************************************************
# "extend cache": better cacheability while allowing resource updates
# to be propagated to the user's browser
ModPagespeedEnableFilters extend_cache,extend_cache_pdfs
# enabling memcached
ModPagespeedMemcachedServers localhost:11211
ModPagespeedFileCachePath "/var/mod_pagespeed/cache/"
ModPagespeedFileCacheSizeKb 102400
ModPagespeedLRUCacheKbPerProcess 8192
ModPagespeedLRUCacheByteLimit 16384
# enable individual URL cache purging
ModPagespeedEnableCachePurge on
ModPagespeedPurgeMethod PURGE
# further speedup : a portion of the cache is kept in memory, to reduce
# load on disk (or memcached) from many small files.
ModPagespeedCreateSharedMemoryMetadataCache "/var/cache/mod_pagespeed/" \
51200
#***********************************************************************
#***********************************************************************
# ENABLING/CONFIGURING NON CORE FILTERS FOR IMG, CSS, JS RESOURCES
#***********************************************************************
#***********************************************************************
#***********************************************************************
# Image filters
#***********************************************************************
ModPagespeedEnableFilters rewrite_images,insert_image_dimensions
ModPagespeedEnableFilters sprite_images,lazyload_images,inline_images
ModPagespeedEnableFilters inline_preview_images,resize_images
ModPagespeedEnableFilters recompress_images,convert_jpeg_to_webp
ModPagespeedEnableFilters recompress_jpeg,recompress_png,recompress_webp
ModPagespeedEnableFilters convert_gif_to_png,convert_jpeg_to_progressive
# Default is 8, the server can (and should) handle more
# Helps with reducing the "Too busy to rewrite image" messages
ModPagespeedImageMaxRewritesAtOnce 30
ModPagespeedEnableFilters resize_rendered_image_dimensions
ModPagespeedImageInlineMaxBytes 5096
#***********************************************************************
# CSS filters
#***********************************************************************
ModPagespeedEnableFilters rewrite_css,move_css_above_scripts,combine_css
ModPagespeedEnableFilters inline_css,flatten_css_imports
ModPagespeedEnableFilters prioritize_critical_css,inline_google_font_css
ModPagespeedEnableFilters rewrite_style_attributes,move_css_to_head
#***********************************************************************
# JS filters
#***********************************************************************
ModPagespeedEnableFilters rewrite_javascript,inline_javascript
ModPagespeedEnableFilters canonicalize_javascript_libraries
ModPagespeedEnableFilters combine_javascript,rewrite_javascript
ModPagespeedEnableFilters make_google_analytics_async
ModPagespeedEnableFilters include_js_source_maps
ModPagespeedMaxCombinedJsBytes -1
#***********************************************************************
#***********************************************************************
# Misc Filters
#***********************************************************************
#***********************************************************************
ModPagespeedEnableFilters combine_heads
ModPagespeedEnableFilters collapse_whitespace,elide_attributes
ModPagespeedEnableFilters trim_urls,remove_quotes,insert_dns_prefetch
ModPagespeedEnableFilters inline_import_to_link,remove_comments
#***********************************************************************
#***********************************************************************