给wordpress网站提速的方式有很多,比较常见的包括使用插件,使用CDN服务,修改代码等多种方式。其中修改代码,因为不会给网站增加负担,被很多人使用。这里要分享的也就是如何通过修改或者添加代码的方式来提高网站加载速度。需要注意的是,因为部分文件对整个网站的设置有至关重要的作用,一着不慎甚至致使网站显示错误或者崩溃,所以正式操作前,一定做好网站的相关备份。

另外,很多修改代码的操作,可以通过wordpress对应的插件来完成。如果不想碰代码的,可以选择安装插件,但是这样会占用网站的内存,实际上也会对网站打开速度造成不好的影响。插件能少装就少装,不用的尽量都卸载。调整前后,建议通过网站测速工具检测网站的打开速度。

通过代码给Wordpress网站提速的途径

  1. 开启Gzip功能
  2. 激活Keep Alive功能
  3. 禁止热
  4. 为静态图片添加有效期
  5. 指明图片尺寸及字符集链接
  6. 释放缓冲
  7. 使wordpress自动清理垃圾箱

代码给Wordpress网站提速的步骤

方法一:开启Gzip功能

什么是Gzip?Gzip是通过压缩文件的方式加快网络传输的一种方法,同时Gzip也是一种文件格式。使用Gzip压缩css和html文件可以节约50%-70%文件大小的空间。

对于wordpress网站来讲,比较常见的是在.htaccess文件中添加代码的方式。这需要具有查看根目录文件的权限,并登录文件管理器中对文件进行修改(通过ftp软件的方式修改也可以)。.htaccess文件控制了网站许多重要的设置,如果想进一步了解的话可以查看这篇文章

想要开启Gzip功能,只需在.htaccess文件中加入以下代码:

<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>

添加完代码后,应保存对文件的修改,并刷新网站。是否成功开启Gzip功能可以到此处去检测。

方法二:激活Keep Alive功能

启用Keep-Alive响应头通过使客户端/服务器连接在处理多个发送到服务器的请求期间一直保持打开状态,提高了 Web 服务器的性能。当客户端发出多个对网页内容的请求时,打开的连接将可以提高性能,因为服务器可以更快地为每个请求返回内容。 否则,服务器必须为每个请求打开一个新连接。更多内容可参看文章“启用Keep-Alive”。

添加以下代码到你的.htaccess文件将会添加Keep-Alive头都你的请求里,这将覆盖很多web服务器或者主机限制。

<ifModule mod_headers.c> Header set Connection keepalive </ifModule>

方法三:禁止热链

如果您的博客有很多很多图片,空间又有流量限制,那么防止别人盗取自己的图片链接应该说是势在必行了,因为在国内,博客内容互相复制的现象相当的普遍,大家都非常珍惜自己的那一点点空间,直接复制图片(复制是带链接的哦!)就象一顿家常便饭一样,已经司空见惯了。图片被盗链不仅会让你的空间流量很快消耗掉,也会影响网站页面加载速度!

网上有许多设置图片防盗链方法,这里这需要利用.htaccess文件进行一些简单的设置便能够轻易防止别人盗取自己网站原创图片的链接。在htaccess文件中添加下列代码:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?your-site.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?your-other-domain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://i.imgur.com/g7ptdBB.png [NC,R,L]

解析:

  1. Line 1 turns on the rewrite engine used for enabling the redirection process.
  2. Line 2 allows blank referrers to view the image. Some folks who use firewall usually surf without any referrers. Now, you don’t want to block your images from them. Hence, you allow blank referrers.
  3. Line 3 allows ‘your-site.com’ to view the images. Replace ‘your-site.com’ with your actual domain name – don’t use the www.
  4. Similarly if you want to allow other sites to use your images, you can replace ‘your-other-domain.com’ with the proper domain name.
  5. Line 5 replaces all unauthorized images to be replaced by the this image. You can also create a custom image and upload it to any directory other than the root directory. If you place it in the root directory, your server might fall in an infinite loop. Thus, its best to place the image in a folder say “images” and use that link. In which case the URL would be: “http://my-site.com/images/preventhotlink.png”

方法四:为静态图片添加有效期

为网站静态图片添加到期时间能够减少网页加载时的http请求数量,从而提升网页打开的速度。只需将以下代码黏贴到.htaccess文件中:

<IfModule mod_expires.c>
# Enable expirations
ExpiresActive On 
# Default directive
ExpiresDefault "access plus 1 month"
# My favicon
ExpiresByType image/x-icon "access plus 1 year"
# Images
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
# CSS
ExpiresByType text/css "access plus 1 month"
# Javascript
ExpiresByType application/javascript "access plus 1 year"
</IfModule>

当然,其中文件到期时间可以根据实际需要来修改。比如css文件的变更频率比较频繁,所以可以将到期时间改成一周,或是更短。

方法五:指明图片尺寸及字符集链接

Before a visitor’s browser can display your Web page, it has to figure out how to lay out the content around the images. Without knowing the size of these images, the browser has to figure it out, causing it to work harder and take longer.
Specifying image dimensions saves the browser from having to go through this step, speeding things up.
For the same reason, specifying a character set in your HTTP response headers is useful, so that the browser doesn’t have to spend extra time working out which one you’re using. Simply add the character set to your website’s head section.

方法六:修改header.php代码,释放缓冲

当访客浏览网站页面时,后台服务器要话费大概200 – 500毫秒来加载整个html页面。加载期间,浏览器是不工作的。 flush功能可以实现将加载好的部分html页面先上传到浏览器,在继续加载剩余html页面的同时,浏览器开始获取其他的资源。

要启动flush功能,需要在wordpress网站的header.php文件中找到</head>标签,并在其与<body>标签之间插入代码 <?php flush(); ?>。效果如下:

</head>
<?php flush(); ?>
<body>

方法七:使wordpress自动清理垃圾箱

通过在wp-config.php文件中添加下方代码的方式,使wordpress自动清理垃圾桶里面的材料。其中的数字wordpress自动清理垃圾的间隔时间:

define(‘EMPTY_TRASH_DAYS’, 10 );

结语

除了修改代码外,还有许多其他的网站提速方法。将会在后续的文章中慢慢提及。