早上好,
我希望优化我的网站上的效果,特别是缓存和压缩设置,因为当我在我的网站上运行Google和Yahoo测试时,我总是在这些项目上排名不好。
我想知道哪种方法可以达到良好的性能。 我想编写一些可重复使用的代码,以便与我的所有网站一起使用,并且每次都稍微自定义。
谷歌搜索,我选择并定制了这两个步骤:
1)将这个PHP块放在每个页面的顶部,为我的所有文件设置长缓存时间,如果服务器接受gzip或deflate压缩,脚本将运行正确的PHP处理程序:
<?php
header('Accept-Encoding: gzip, deflate');
header('Expires: Tue, 01 Apr 2014 16:00:00 GMT');
header('Cache control: public');
header('Last-Modified: Tue, 12 Mar 2013 12:45:26 GMT');
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'))
{ ob_start("ob_gzhandler"); }
elseif (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'deflate'))
{ ob_start("ob_deflatehandler"); }
else
{ ob_start(); }
?>
2)在我的cPanel中激活压缩,或者通过.htaccess添加这段代码: #在此行下方添加您自己的指令
# compress text, HTML, JavaScript, CSS, and XML with gzip if exists
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
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.*
</ifModule>
# compress text, HTML, JavaScript, CSS, and XML with deflate
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/richtext
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
# remove browser bugs
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
这是最好的方法吗? 哪种方法可以让我获得良好的表现并且可以重复使用?
谢谢,伙计们,