gdinari Posted March 1, 2015 Share Posted March 1, 2015 Hi, I have been trying to optimize my site's Pingdom performance grade and the only issue that Im having now is specifying Etags. I read a number of articles with suggestions but nothing seems to work. This is the message I get from Pingdom and Pagespeed:- The following resources are missing a cache validator. Resources that do not specify a cache validator cannot be refreshed efficiently. Specify a Last-Modified or ETag header to enable cache validation for the following resources: https://www.gizmotrims.com/50308-m_scene_default/versio-mobile-iphone-5-5s-merge-with-stand-black.jpg https://www.gizmotrims.com/50308-scene_default/versio-mobile-iphone-5-5s-merge-with-stand-black.jpg https://www.gizmotrims.com/60173-m_scene_default/apple-iphone-5-official-nfl-protector-dallas-cowboys.jpg https://www.gizmotrims.com/60173-scene_default/apple-iphone-5-official-nfl-protector-dallas-cowboys.jpg https://www.gizmotrims.com/60174-m_scene_default/apple-iphone-5-official-nfl-protector-new-england-patriots.jpg https://www.gizmotrims.com/60174-scene_default/apple-iphone-5-official-nfl-protector-new-england-patriots.jpg https://www.gizmotrims.com/60175-m_scene_default/apple-iphone-5-official-nfl-protector-new-york-giants.jpg https://www.gizmotrims.com/60175-scene_default/apple-iphone-5-official-nfl-protector-new-york-giants.jpg Now at this point, I dont know what else to try, as I have followed the instructions of different articles at a time. Can someone help? Here is my current .htaccess code. Any help will be appreciated. SuPHP_ConfigPath /home/#####/public_html/php.ini # ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again # .htaccess automaticaly generated by PrestaShop e-commerce open-source solution # http://www.prestashop.com - http://www.prestashop.com/forums <IfModule mod_rewrite.c> <IfModule mod_env.c> SetEnv HTTP_MOD_REWRITE On </IfModule> # Disable Multiviews Options -Multiviews RewriteEngine on RewriteRule . - [E=REWRITEBASE:/] RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] # Images RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L] RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [L] RewriteRule ^c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L] RewriteRule ^c/([a-zA-Z_-]+)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2.jpg [L] # AlphaImageLoader for IE and fancybox RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L] # Dispatcher RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L] </IfModule> AddType application/vnd.ms-fontobject .eot AddType font/ttf .ttf AddType font/otf .otf AddType application/x-font-woff .woff <IfModule mod_expires.c> ExpiresActive On ExpiresByType image/gif "access plus 1 month" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/jpg "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType text/css "access plus 1 week" ExpiresByType text/javascript "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" ExpiresByType application/x-javascript "access plus 1 week" ExpiresByType image/x-icon "access plus 1 year" ExpiresByType image/svg+xml "access plus 1 year" ExpiresByType image/vnd.microsoft.icon "access plus 1 year" ExpiresByType application/font-woff "access plus 1 year" ExpiresByType application/x-font-woff "access plus 1 year" ExpiresByType application/vnd.ms-fontobject "access plus 1 year" ExpiresByType font/opentype "access plus 1 year" ExpiresByType font/ttf "access plus 1 year" ExpiresByType font/otf "access plus 1 year" ExpiresByType application/x-font-ttf "access plus 1 year" ExpiresByType application/x-font-otf "access plus 1 year" </IfModule> FileETag INode MTime Size <IfModule mod_deflate.c> <IfModule mod_filter.c> AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/x-javascript </IfModule> </IfModule> #If rewrite mod isn't enabled ErrorDocument 404 /index.php?controller=404 # ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again ## 10-10-2014: Custom .htaccess code RewriteEngine On RewriteCond %{HTTP_HOST} ^gizmotrims\.com [NC] RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.gizmotrims.com/$1 [R,L] # BEGIN Compress text files <ifModule mod_deflate.c> <filesMatch ".(css|js|x?html?|php|xml|rss)$"> SetOutputFilter DEFLATE </filesMatch> </ifModule> # END Compress text files # 10-15-2014: Gary - Block user-agent libwww-perl, which can perform simple server attacks to exploit website vulnerablities SetEnvIfNoCase User-Agent "^libwww-perl*" block_bad_bots Deny from env=block_bad_bots Link to comment Share on other sites More sharing options...
Dh42 Posted March 2, 2015 Share Posted March 2, 2015 Try adding this to your htaccess file Header unset ETag FileETag None Link to comment Share on other sites More sharing options...
gdinari Posted March 2, 2015 Author Share Posted March 2, 2015 Hi, thanks I tried that, but I still get the same message from Pingdom and Pagespeed... Link to comment Share on other sites More sharing options...
Dh42 Posted March 3, 2015 Share Posted March 3, 2015 Try adding this to your htaccess file <IfModule mod_headers.c> <FilesMatch "\.(bmp|css|flv|gif|ico|jpg|jpeg|js|pdf|png|svg|swf|tif|tiff)$"> Header set Last-Modified "Mon, 31 Aug 2009 00:00:00 GMT" </FilesMatch> </IfModule> 1 Link to comment Share on other sites More sharing options...
gdinari Posted March 3, 2015 Author Share Posted March 3, 2015 I added it at the very bottom of the code. It didnt improve the results. Does the placement of the code matter? Where should I add this? Link to comment Share on other sites More sharing options...
Recommended Posts