Imagine these two chunks of code residing in htaccess for speeding up the website.
With php 5.2.3 on apache 2.0
block A
# preserve bandwidth for PHP enabled servers
<ifmodule mod_php4.c>
php_value zlib.output_compression 16386
</ifmodule>
block B
# compress speficic filetypes
<IfModule mod_deflate.c>
<FilesMatch "\.(js|css|eot|ttf|svg|xml|ast|php)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>
Questions that arise:
Q1. Is this the proper way to combine these two blocks A + B into 1 htaccess in the root?
Q2. Is it correct that on the second block B, |php|
is used again in the mod_edflate?
If mod_deflate is loaded and you can control apache configuration then you should let apache do output compression. Doing compression in php is always going to be slower. Here is my recommended config for your htaccess:
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
</IfModule>
I think a blacklist is more effective in this case since there are very few types of files you don't want compressed. This way you make sure to compress everything else, even those types of files you can't remember to add to a whitelist.
来源:https://stackoverflow.com/questions/5412681/speeding-up-websites-via-simple-apache-settings-in-htaccess-zlib-output-compres