此选项将重置所有页面设置,包括任何以关闭的widgets及类别

重置

网站提速全攻略

网站页面的加载速度是用户体验中相当重要的一部分,yahoo推出了Yslow这个工具,它可以对你的网站速度的各项指标进行评级。通过这个工具,我们可以找到影响网页加载速度的原因,并针对性的进行优化。

根据Yslow的评分标准,我们可以在以下方面对网站进行重点的优化。

1.尽量减少HTTP请求的数量。

网页中不可避免的要引入一些文件,比如Js,CSS,背景图片等等,由于Http协议的无状态性,用户的每一次访问,都会重新向服务器请求所有文件,而大量Http请求的累加,正是影响网站速度的最主要原因。
所以我们尽可能的要将这些文件合并,网站只用一个JS文件,一个CSS文件,一个背景图片,是最完美的解决方案。

2.使用CDN网络

这种方法效果很好,但涉及到一定的投入,对于小网站来说,实现起来有些困难。所以这里略过。如果你不知道什么是CDN,请google.

3.Add an Expires header

Add an Expires header,通俗点说,就是让客户端第一次浏览你的网站时,把一些常用但改动不频繁的网页元素缓存起来,比如CSS,JS,各种图片等。我们可以在服务器端设定一个很长的时间,比如一个月,那么用户在一个月内再次访问你的网站时,就会直接调用本地的缓存内容,无需再重新请求服务器。
这里以apache服务器为例,如果服务器安装了expires模块(一般的虚拟主机商都有支持expires),就可以在.htaccess中添加下面的内容:

ExpiresActive On
ExpiresDefault A600
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
ExpiresByType text/javascript A2592000
ExpiresByType text/css A604800
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/plain A86400
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType video/x-flv A2592000
ExpiresByType application/pdf A2592000
ExpiresByType text/html A600

上面字母A后面的数字是秒,也就是缓存的时间。

3.给网站启用Gzip压缩

Gzip可以将用户请求的网页元素进行压缩传输,压缩比很高,大智若鲁的html压缩比达到了百分之七十。我们可以对html,css,js,php,xml等文件进行gzip压缩,但不要试图压缩图片文件,据说越压越大的。
如何启用gzip压缩呢?主要有两种方法:
最好的情况是你的主机采用的是 Apache 2,并安装启用了mod_deflate 模块,虚拟主机需要询问主机商。如果主机支持就很简单了,只需要在 .htaccess 文件中加入以下代码可以压缩 HTML, PHP, JS, CSS, XML 后缀的文件。

AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript

如果主机不支持,就得用下面很麻烦的方法了:
已为css文件启用gzip为例:
把css文件后缀改为php,在你要压缩的css头部添加以下代码:

在尾部添加:

< ?php if(extension_loaded('zlib')) {ob_end_flush();} ?>

然后把页面中的css路径改为此php文件就可以了。
如果压缩js,方法同上,只是要把头部的代码换成:

这种方法很麻烦,需要对每个文件逐一的更改,如果你是懒人,也可以试试下面的方法:
在网站根目录创建文件:gzip.php,写入如下代码:

 'text/css',
'js' => 'text/javascript',
'html' => 'text/html',
'htm' => 'text/html',
);
$file = isset($_GET['url']) ? $_GET['url'] : null;
$extension = explode('.', $file);
$extension = array_pop($extension);
if(isset($allowed[$extension]))
{
$pos = strpos($file, '..');
if ($pos === false && is_file($file))
{
@ob_start ('ob_gzhandler');
header("Content-type: {$allowed[$extension]}; charset: UTF-8");
readfile($file);
} else {
header('HTTP/1.1 404 Not Found');
}
}
?>

然后修改.htaccess,添加下面的规则:

RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} ^.*\.(css|js|html|htm)$
RewriteRule ^(.*)$ gzip.php?url=$1 [QSA,L]

这样,就会给网站的所有css,js,htm文件启用gzip压缩了。但是这种方法会占用一定的系统资源,如果你的主机配置过低,反而会减慢速度,请根据实际情况应用。

4. Put CSS at the top / 将Css文件放在头部

很好理解的一条,主要是为了避免最后加载Css引起的浏览器白屏,改善用户体验。

5. Put JS at the bottom / 将Js文件放在底部

同样很容易理解,为了让DOM先行加载。

6.关闭ETAGS

一般的小型网站并不需要Etag,我们可以关闭它以便节约带宽。
在.htaccess中添加:

FileETag None
 
Header unset Last-Modified


【你可能还喜欢这些文章:】

3 评论

  1. ETAG的本来需求就是节约服务器带宽啊!

看贴不回的后果...你懂的..