运行于Linux下的Lighttpd是一个开源Web服务器软件。Lighttpd的最大特点是其“轻量级特征”:仅仅需要相对于Apache等成熟服务器软件小得多的CPU与内存资源即可达到相同的性能。Lighttpd以BSD许可证发布。
根据 维基百科lighttpd条目 的介绍,lighttpd支持FastCGI与SCGI的负载平衡,支持Linux下chroot安全特征,支持SSL加密连接。Lighttpd虽然小巧,但是却足以满足普通的高性能Web服务请求。本文将以CentOS为例指导安装lighttpd与PHP与MySQL全套组件,基本安装方法参考了howtoforge的《Installing Lighttpd With PHP5 and MySQL Support On CentOS 6.0》一文。
本文虽然很长,但其实质非常简单,请严格按照如下方法操作即可完美安装,安装方法已经过多系统实机验证。
安装配置方法
在进行安装前,请参考《 CentOS安装教程 》安装好基本的CentOS系统,以保证环境的兼容性与统一性。
1、首先安装MySQL
CentOS中安装MySQL非常简单,直接yum即可:
1 |
[root@www ~] # yum install mysql mysql-server |
安装过程中需要输入“y”以确认。
完成后启动MySQL:
1 |
[root@www ~] #/etc/init.d/mysqld start |
安装完MySQL后,需要立即对MySQL进行基本的安全设置,使用
1 |
[root@www ~] # mysql_secure_installation |
此程序是MySQL的安全设置向导,首先会询问是否设置MySQL的root密码,直接回车表示确认设置。按照提示重新输入一个密码即可。随后会提示:
Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]
等,均直接回车(Y)。
最后使用如下命令使MySQL开机自动启动:
1 |
[root@www ~] # chkconfig --levels 235 mysqld on |
至此,MySQL组件已经安装成功,并且做好了基本的安全设置。下面将开始安装lighttpd组件。
2、安装Lighttpd组件
由于CentOS官方的源中没有Lighttpd包,因此需要手动导入RPMforge源。
请根据自己系统的情况选择如下32/64位、CentOS 5/CentOS 6操作系统的源并安装好:
32位CentOS 5
1 |
wget http://soft.bootf.com/rpm/rpmforge-release-0.5.2-2.el5.rf.i386.rpm |
3 |
rpm -Uhv rpmforge-release-0.5.2-2.el5.rf.i386.rpm |
32位CentOS 6
1 |
wget http://soft.bootf.com/rpm/rpmforge-release-0.5.2-2.el6.rf.i686.rpm |
3 |
rpm -Uhv rpmforge-release-0.5.2-2.el6.rf.i686.rpm |
64位CentOS 5
1 |
wget http://soft.bootf.com/rpm/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm |
3 |
rpm -Uhv rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm |
64位CentOS 6
1 |
wget http://soft.bootf.com/rpm/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm |
3 |
rpm -Uhv rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm |
然后即可通过yum安装Lighttpd了:
1 |
[root@www ~] # yum install lighttpd |
安装过程将会询问,输入“y”以继续。
启动Lighttpd并设置为开机自动启动:
1 |
[root@www ~] # /etc/init.d/lighttpd start |
5 |
[root@www ~] # chkconfig --levels 235 lighttpd on |
如果在启动的时候提示如下错误:
(network.c.203) socket failed: Address family not supported by protocol
则打开 /etc/lighttpd/lighttpd.conf 文件
1 |
vi /etc/lighttpd/lighttpd.conf |
找到server.use-ipv6一行配置节,将enable改为disable,如下:
## Use IPv6?
##
server.use-ipv6 = “disable“
保存后再次执行启动(/etc/init.d/lighttpd start)即可。
此时,访问服务器的IP地址,应该提示一个大大的“404 – Not Found”。表示lighttpd已经正常运行(只是没有默认的文档,因此404错误了)。如下图:
3、安装php5与Lighttpd fastcgi组件
安装php非常方便,直接执行:
1 |
[root@www ~] # yum install lighttpd-fastcgi php-cli |
即可安装成功。
4、配置Lighttpd与PHP5
将Lighttpd配置为fastCGI模式,只需要修改三个配置文件,并且比较简单。
1、打开 /etc/php.ini 文件
在php.ini文件最后加如下一行语句并保存:
cgi.fix_pathinfo = 1
2、打开 /etc/lighttpd/modules.conf 文件:
1 |
vi /etc/lighttpd/modules.conf |
将 include “conf.d/fastcgi.conf” 一行取消注释并保存,如下图:
3、打开 /etc/lighttpd/conf.d/fastcgi.conf 文件:
1 |
vi /etc/lighttpd/conf.d/fastcgi.conf |
找到 fastcgi.server这一节配置段,并将其全部反注释(使之生效),并修改为如下(注意红色为修改部分):
fastcgi.server = ( ".php" =>
( "php-local" =>
(
"socket" => "/tmp/php-fastcgi-1.socket",
"bin-path" => "/usr/bin/php-cgi",
"max-procs" => 1,
"broken-scriptfilename" => "enable",
)
),
( "php-tcp" =>
(
"host" => "127.0.0.1",
"port" => 9999,
"check-local" => "disable",
"broken-scriptfilename" => "enable",
)
),
( "php-num-procs" =>
(
"socket" => "/tmp/php-fastcgi-2.socket",
"bin-path" => "/usr/bin/php-cgi",
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "16",
"PHP_FCGI_MAX_REQUESTS" => "10000",
),
"max-procs" => 5,
"broken-scriptfilename" => "enable",
)
),
)
最后保存即可。
现在可以重启Lighttpd使之生效:
1 |
[root@www ~] # /etc/init.d/lighttpd restart |
5、测试PHP5与Lighttpd
由于 /srv/www/lighttpd/ 是其网站根目录,因此执行:
[root@www ~]# echo ‘<?php phpinfo(); ?>’ > /srv/www/lighttpd/test.php
然后访问 http://IP/test.php 即可看到PHP Info测试页面:
6、安装PHP5的MySQL支持
1 |
[root@www ~]# yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc |
上述命令已经同时安装好了php的MySQL、GD图形库、IMAP、ODBC、Pear、xml等支持组件。
7、最终测试
重启Lighttpd并刷新 http://IP/test.php 页面,即可找到MySQL模块的支持。
至此,Lighttpd+PHP+MySQL+GD全套组件安装配置完毕。
(责任编辑:IT) |