如何加速Drupal 7.7与Boost和nginx(Debian Squeeze)
本教程将介绍如何在Boost和nginx的帮助下,在LAMP(Debian Squeeze)上加快您的Drupal 7.7安装。 Boost为Drupal提供静态页面缓存,可以为接收绝大多数匿名流量的站点提供非常显着的性能和可扩展性。 Boost确保您登录的用户始终通过不为登录用户缓存页面来获取新鲜内容。 在第一步中,我将通过在正常的LAMP(Apache2,PHP,MySQL)上启用Boost来显示如何使您的网站更快,在第二步中,我将解释如何使用nginx作为反向代理使您的网站更快坐在Apache前面,传递由Boost缓存的静态HTML页面。 nginx提供比Apache更快的静态文件,并且使用较少的内存/ CPU。
我不会保证这将为您工作!
1初步说明
我在Debian Squeeze上使用了一个普通的LAMP,例如, 在Debian Squeeze(LAMP)上使用PHP5安装Apache2和MySQL支持 。 我的Drupal 7.7安装使用域www.example.com
和example.com
,我的文档根目录是/var/www/www.example.com/web
。
我假设您已经使用干净的URL来进行正常的Drupal 7.7安装。
确保启用了Apache模块重写
, 头文件
和过期时间
:
a2enmod rewrite
a2enmod headers
a2enmod expires
/etc/init.d/apache2 restart
2使用tmpfs在内存中创建缓存目录
默认情况下,Boost会将文件缓存
在文档根目录中的缓存
目录中(即我的情况下为/var/www/www.example.com/web/cache
)。 将缓存的文件存储在内存中可以使您的站点更快,以便Apache不必访问硬盘驱动器。 我们可以使用tmpfs
文件系统在内存中创建缓存分区(请参阅使用tmpfs存储内存中的文件/目录 )。
首先我们(重新)创建缓存目录:
rm -fr /var/www/www.example.com/web/cache
mkdir /var/www/www.example.com/web/cache
然后将以下行添加到/ etc / fstab中
:
vi /etc/fstab
[...] tmpfs /var/www/www.example.com/web/cache tmpfs size=256M,mode=0777 0 0 |
size = 256M
表示分区的大小为256MB。 这对于大多数网站应该是足够的 - 对于非常大的网站,您可能需要增加大小,对于小型网站,您可以使用更少的内存。 确保您的系统有足够的内存留给指定的大小!
现在重新安装所有分区:
mount -a
您现在应该在...的输出中看到您的缓存分区
mount
root@server1:/var/www/www.example.com/web# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
tmpfs on /var/www/www.example.com/web/cache type tmpfs (rw,size=256M,mode=0777)
root@server1:/var/www/www.example.com/web#
...和:
df -h
root@server1:/var/www/www.example.com/web# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 29G 1.1G 27G 4% /
tmpfs 502M 0 502M 0% /lib/init/rw
udev 497M 100K 497M 1% /dev
tmpfs 502M 0 502M 0% /dev/shm
tmpfs 256M 0 256M 0% /var/www/www.example.com/web/cache
root@server1:/var/www/www.example.com/web#
如果您使用的是没有/ etc / fstab
的OpenVZ虚拟机,则可以将以下行添加到/etc/rc.local
,以便在内存中还可以有缓存目录:
vi /etc/rc.local
[...] /bin/mount -t tmpfs -o size=256M,mode=0777 tmpfs /var/www/www.example.com/web/cache [...] |
每次启动系统时,这将自动挂载分区。 要立即安装它,以便您不必重新启动,请运行:
mount -t tmpfs -o size=256M,mode=0777 tmpfs /var/www/www.example.com/web/cache
3安装和配置升压
以管理员用户身份登录到Drupal,然后转到“ 模块”
部分( http://www.example.com/admin/modules/install
)。 在“ 从URL
安装
”字段中填写http://ftp.drupal.org/files/projects/boost-7.x-1.x-dev.tar.gz ,然后单击“ 安装
”按钮(您可以随时找到最新的Boost版本为Drupal 7在http://drupal.org/project/boost ;在撰写本文时,只有boost-7.x-1.x-dev.tar.gz
包):
安装成功后,您将看到此屏幕。 单击启用新添加的模块
链接启用Boost:
这将带您到模块列表( http://www.example.com/admin/modules
)。 向下滚动到Boost模块,检查它,然后单击保存配置
:
之后,您应该在Boost模块后面找到一个配置
链接。 单击该链接以启动Boost配置:
现在在Boost配置( http://www.example.com/admin/config/system/boost
)中,您应该在“ BOOST SETTINGS
”选项卡上找到自己。 可以接受默认值 - 点击保存配置
:
转到CACHE EXPIRATION
选项卡。 再次,默认设置应该可以,所以点击保存配置
再次:
接下来,转到文件系统
选项卡。 确保您有根缓存目录
字段中的缓存
(这应该是默认值) - 这转换到我们的缓存目录/var/www/www.example.com/web/cache
。 其他默认值也可以,所以点击保存配置
: