Increasing page load performance

I’ve run tests on GTMetrix & Pingdom, both tell me that I should “Specify a Cache Validator”, “Specify a Vary: Accept-Encoding Header” and ‘Delay Javascript Parsing’ to increase performance for my page load time. I’m running SmartOptimizer, and have GZip in use as well.

I’ve added the following code to the beginning of my .htaccess file :

<FilesMatch “.(js|css|xml|gz)$”>

Header append Vary: Accept-Encoding

but I still get the warnings. I’ve also tried some code for Cache Validator, but no luck. Any ideas anyone please?


See the link in my signature. The first post links to a further post in the thread (post #57 I think off the top of my head), try the .htaccess and SmartOptimizer modifications from that post, should solve cache validation, accept-encoding and browser caching.

Moving the Javascript code to the bottom of the page works for some stores, but not all, so there isn't (yet) any specific guidelines for doing this. Any inline-Javascript can easily be deferred, so that it is processed after the page is loaded, however, some things don't like this, particularly sliding banners.

Thanks for the reply Stellar. I followed your instructions in that link, post #57, however I'm still getting the same speeds & error [color=#282828][font=arial, verdana, tahoma, sans-serif]“Specify a Cache Validator” for .js & .css files. Any idea if I'm doing something wrong? I'm happy to continue this conversation in your thread if you wish.[/font][/color]

Drop me a PM with your store URL and I'll take a look. What cache method are you using in config.local.php?


I have increased speed on a CSC MV 3.0.x store by using some of the suggestions found on this forum. However, the site speed still gets “bad grades” on GTMetrix … I would like to see an improvements here.

Besides the overall site speed, we are having speed issues with kicking off a purchased download. The file is a 1.3 GB wmv file and it takes 30-45 seconds (if not more) for the “Save as …” prompt to appear. We have the downloads set to 7 days and 5 Max attempts.

Due to the long period of time between the click and the prompt, several Customers aren't patient and click the download button again. This caused the Max counter to decrease to 0 thus running out of attempts plus the initial instance (click) isn't terminated with the additional instances (clicks) causing the load average on the server to shoot sky high (14.00+) … the server normally runs at around 0.25.

Any suggestions?

Thank you,


1.3GB download via an HTTP connection? Ouch. Why don't you compress the files, using 7Zip - choosing the best method of storage using Zip formatting so users don't need to install any software to decompress the Zip file? That would surely bring the file size down a bit.

Do you experience this in all web browsers, or only specific browsers? Your server may also have a certain degree of limitations which may cause this too.

Zipping a wmv does not compress down that much, if at all. Zipping images has basically the same results … no to little change in file size. In some cases, zipping an image or a video file results in a file size slightly bigger than the original file size.

I know this delay happens with Firefox, I have not tried any other browser … but what browser is being used shouldn't matter. I also have not tried downloading a 1.3GB zip file to see if the delay happens with this file type too , and again, it shouldn't matter what the file type is.

But now that I think more about it, it could be the compression … I did turn on gzip compression to get a better GTMetrix grade … I don't remember if I turned on gzip compression for wmv files though.

There is no problem with the actual downloading, it's the delay in getting the “Save as …” prompt, at least with wmv files, that is bugging me (and the Customers).

Thanks for the feed back Stellar … your post gave some food for thought.

You may find, if you have gzip enabled, that the server is sending the correct headers for .zip files, but not for .wav. You can test the file headers using Web Sniffer. You're looking for headers specifying 'content-length', otherwise the browser handles this, hence you may experience the issues you describe. May still be other things, but this one should be easy enough to resolve.

I found the problem … it was me, me, me.

As mentioned, I implemented your “Speed Up Version 3” suggestions which includes a .htaccess file.

This server is still running Apache 1.3 because of a custom mod_auth module which allows for multiple .htpasswd files … this allows for each 3rd party payment processor to have their own .htpasswd file … using this module, Apache searches ALL .htpasswd files when a Member logs in. I have yet to figure out how to implement this module's functionality in Apache 2.x.

Anyway, your suggested .htaccess file uses mod_deflate … an Apache 2 module … since I am using Apache 1, I figure I would added this code:

mod_gzip_on Yes

mod_gzip_dechunk Yes

mod_gzip_item_include file .(html?|txt|css|js|php)$

mod_gzip_item_include handler ^cgi-script$

mod_gzip_item_include mime ^text/.

mod_gzip_item_include mime ^application/x-javascript.

mod_gzip_item_exclude mime ^image/.*

mod_gzip_item_exclude rspheader ^Content-Encoding:.gzip.

that I got from somewhere … and there lies the cause the delay.

I removed “my add” from your suggested .htaccess file, and the Save prompt pops right up.