10步教你来优化WordPress速度 为服务器和访客减压
1.Cookie的静态化制作
约有80%至90%的时间,访客要花费大量的时间等你的WordPress加载静态内容。这意味着,有大部分的时间,用户浏览您的网站,他们正在等待加载,如:图像,CSS,JS脚本,flash等等。所以你可以优化内容,更快捷地让WordPress加载一个cookie域。消除了负载时的一些珍贵的时间,当然了这可能看起来并不多,但添加其他拖延问题时,才能真正减少时间损失。
我不知道其他源码的网站应该怎么做,但是wordpress很简单只要修改一下wp-config.php就好了!
在合适的位置加入:
define("WP_CONTENT_URL", "http://static.***.com");
define("COOKIE_DOMAIN", "www.***.com");
然后用“bloginfo(template_directory')”这段代码加入你要实现的静态内容中即可!
2.设置静态内容的缓存
静态的内容缓存,我就不多介绍了,你用相关的缓存插件也需要这个步骤,那就是修改.htaccess文件
代码如下:
<IfModule mod_expires.c>
ExpiresActive on
# Perhaps better to whitelist expires rules? Perhaps.
ExpiresDefault "access plus 1 month"
# cache.appcache needs re-requests
# in FF 3.6 (thx Remy ~Introducing HTML5)
ExpiresByType text/cache-manifest "access plus 0 seconds"
# Your document html
ExpiresByType text/html "access plus 0 seconds"
# Data
ExpiresByType text/xml "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType application/json "access plus 0 seconds"
# RSS feed
ExpiresByType application/rss+xml "access plus 1 hour"
# Favicon (cannot be renamed)
ExpiresByType image/x-icon "access plus 1 week"
# Media: images, video, audio
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"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"
# HTC files (css3pie)
ExpiresByType text/x-component "access plus 1 month"
# Webfonts
ExpiresByType font/truetype "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType application/x-font-woff "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
# CSS and JavaScript
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
<IfModule mod_headers.c>
Header append Cache-Control "public"
</IfModule>
</IfModule>
3.优化数据库
有一个方法来为的服务器减压,怎样才能优化wordpress的数据库呢?自然是用代码,用代码,嘿嘿,你可能编辑了几个小时都没有效果!WordPress的免费插件使得这个问题变得简单,个人推荐Yoast Optimize DB和WP DB Manager。牢记大多数缓存插件还帮助了很多本,所以你会发现大多数正在采取照顾您已经现存的缓存软件的工作量。
4.尽量缓存媒体
创建缓存可以很简单地通过插件完成。从本质上讲,这些新增转成静态页面,所有这些方式,既方便加载,又节省您的浏览器前端的滞后。那么,什么插件,听我的建议吧。
我最喜欢的缓存工具:WP Super Cache, Hyper Cache,和W3 Total Cache。用这些生成HTML文件,可以节省更多的时间。
5.使用CDN
CDN加速目前很火,那么自然火是有一定的道理的,因为CDN可以加速呀。呵呵,cdn一般是收费,不过免费的CDN也有。
下面为大家推荐一些实用的免费CDN:
免费CDN:Webluker,cloudflare
6.压缩JS和CSS文件
你可能只听过说JS和CSS文件的库转移,总没有听说过压缩吧。呵呵,这个方法是很异想天开,但是就是有人做到了,并且开发了压缩的实用工具,当然机器的压缩并不尽人意,你也可以手工压缩。
JS压缩工具推荐:Closure Compiler ,Minify JavaScript. CSS压缩工具推荐:Minify CSS ,CSS Compressor
7.压缩图像
图像的加载也是比较耗时的,想你如果试用BMP或者PSD作为图像那么速度一定和蜗牛爬一样,比较高质量保存的PNG文件我也不怎么推荐。建议试用JPG压缩,但是也不要过度!不然图片会失真。
通过WP Smush.it插件你可以比较简单的来压缩图片!
8.GZIP压缩
GZIP的压缩在一定限度内是很不错的!而且通过gzip压缩不仅能够加速而且还可以屏蔽广告(免费空间的福音啊)GZIP的压缩代码交给你!修改.htaccess文件
<IfModule mod_deflate.c>
# force deflate for mangled headers
# developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping/
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)s*,?s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
</IfModule>
</IfModule>
# HTML, TXT, CSS, JavaScript, JSON, XML, HTC:
<IfModule filter_module>
FilterDeclare COMPRESS
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/css
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/plain
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/x-component
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/javascript
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/json
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xhtml+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/rss+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/atom+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/vnd.ms-fontobject
FilterProvider COMPRESS DEFLATE resp=Content-Type $image/svg+xml
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/x-font-ttf
FilterProvider COMPRESS DEFLATE resp=Content-Type $font/opentype
FilterChain COMPRESS
FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no
</IfModule>
<IfModule !mod_filter.c>
# Legacy versions of Apache
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
</IfModule>
</IfModule>
9.禁用ETAGS
ETAGS可能我也搞不懂,但是你仅用了它就可以加速了,所以你管他神马ETAGS你说是不?
在.htaccess 文件中+这一行!
File ETag none
10.服务器环境
使用LAMP环境或者LNMP环境,可以更好的支持wordpress并且风险系数低,也很安全,估计你的服务器或者VPS几年都不会重启一次,所以网上总是我自己的linux密码忘记了重启怎么办! 这就是免费惹的祸,真是躺着也中枪啊!
总结:
这些方法中大多数只适合在LAMP或者LNMP的环境下,所以使用wordpress就必须要在linux环境下,win环境下的wordpress你会遇到一些列的问题!
本文来自:米饭维谷 教程餐厅组 | http://www.wg369.com/archives/1989.html
10步教你来优化WordPress速度 为服务器和访客减压的更多相关文章
- SQL Server数据库 优化查询速度
查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 ...
- Sql server2005 优化查询速度50个方法小结
Sql server2005 优化查询速度50个方法小结 Sql server2005优化查询速度51法查询速度慢的原因很多,常见如下几种,大家可以参考下. I/O吞吐量小,形成了瓶颈效应. ...
- 【C/C++】10分钟教你用C++写一个贪吃蛇附带AI功能(附源代码详解和下载)
C++编写贪吃蛇小游戏快速入门 刚学完C++.一时兴起,就花几天时间手动做了个贪吃蛇,后来觉得不过瘾,于是又加入了AI功能.希望大家Enjoy It. 效果图示 AI模式演示 imageimage 整 ...
- 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序
Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.ng ...
- 一步一步教你如何在linux下配置apache+tomcat(转)
一步一步教你如何在linux下配置apache+tomcat 一.安装前准备. 1. 所有组件都安装到/usr/local/e789目录下 2. 解压缩命令:tar —vxzf 文件名(. ...
- 一步一步教你将普通的wifi路由器变为智能广告路由器
一步一步教你将普通的wifi路由器变为智能广告路由器 相信大家对WiFi智能广告路由器已经不再陌生了,现在很多公共WiFi上网,都需要登录并且验证,这也就是WiFi广告路由器的最重要的功能.大致就是下 ...
- 10分钟 教你学会Linux/Unix下的vi文本编辑器
10分钟 教你学会Linux/Unix下的vi文本编辑器 vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结.不敢独享,和你们共享. 首先,记住v ...
- 第 10 章 MySQL Server 性能优化
前言: 本章主要通过针对MySQL Server(mysqld)相关实现机制的分析,得到一些相应的优化建议.主要涉及MySQL的安装以及相关参数设置的优化,但不包括mysqld之外的比如存储引擎相关的 ...
- 【python】10分钟教你用python打造贪吃蛇超详细教程
10分钟教你用python打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下python,听说pygame挺好玩的.今天就在家研究一下, 弄了个贪吃蛇出来.希望大家喜欢. 先看程序效果: 0 ...
随机推荐
- 创建C#DLL
1. 创建classlibrary 2.编写一个COM接口和一个COM类 [Guid("DBE0E8C4-1C61-41f3-B6A4-4E2F353D3D05")] public ...
- Java Thread Status(转)
public static enum Thread.State extends Enum<Thread.State>线程状态.线程可以处于下列状态之一: 1.NEW 至今尚未启动的线程的 ...
- 10g中注意谓词过滤的位置
在10g中当主查询的谓词信息,被错误的放入子查询中,会导致子查询无法展开 explain plan for UPDATE DWF.F_PTY_INDIV O SET END_DT = TO_DATE( ...
- 【转】关于Adapter的The content of the adapter has changed问题分析 关于Adapter的The content of the adapter has changed问题分析
原文网址:http://www.cnblogs.com/monodin/p/3874147.html 1.问题描述 1 07-28 17:22:02.162: E/AndroidRuntime(167 ...
- Android——自定义Actionbar左侧覆盖不全的解决方案
今天遇到一个很蛋疼的问题,就是在自定义Actionbar的时候,setCustomView中,自定义的view怎么也覆盖不了整个视图,左侧一直留有一个空白,看下图: 所写的部分代码如下: protec ...
- C# 酒鬼买酒喝,瓶盖和空瓶子可以换新的酒
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...
- Direct3D 11的流水线
流水线 流水线(Pipeline)是理解D3D必须要掌握的概念. 整个流水线有很多步骤,有的步骤是固定功能,不用怎么配置,有的步骤是要写代码的,也就是所谓的着色器程序(Shader). 一般来说,将流 ...
- this关键字的解析
this关键字的作用: 1.表示类中的属性. class Person{ // 定义Person类 private String name ; // 姓名 private int age ; // 年 ...
- node-sqlite3-API-归纳总结
SQLITE3-API-LIST:API1. new sqlite3.Database(filename,[mode],[callback]) 返回数据库对象并且自动打开和连接数据库 它没有独立打开数 ...
- (转).net程序员转战android第一篇---环境部署
原文,整个序列一样http://www.cnblogs.com/Twmin/p/3148892.html 对于.net开发人员去写java,可谓说是见山是山, 因为太多的相同; 最近段时间因工作因素, ...