第三步:安装配置web服务器
注意:在进行这步操作前建议把squid关掉,因为在进行主页更新测试时squid的cache会使更新后的主页不能及时反映出来!
为了不使用squid,除了关掉squid外,还要删除ipfw的透明代理端口转发语句:
# cd /usr/local/etc/rc.d
# ./squid.sh stop
# mv squid.sh squid.sh.bak
# ipfw del 500 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any 80
本web服务器的其本组成为:
Apache 1.3.27
modssl
mod_php4
mod_gzip
mod_fastcgi
mod_perl
mysql3.23
为了简化安装过程并发挥FreeBSD安装软件的优势,本文后续部分将采用ports安装。Ports 使在FreeBSD下安装各种软件变得很轻松。
首先安装ports:(如果已经有/usr/ports目录则证明已经安装过了)
# /stand/sysinstall
选Configure—Distributions—ports,ports将被安装在/usr/ports目录中。
下面安装apache1.3.27 + modssl :
# cd /usr/ports/www/apache13-modssl
# make install
系统会自动下载安装包并安装完毕。
安装后系统会自动产生启动脚本apache.sh,在/usr/local/etc/rc.d目录中。可以通过运行apache.sh start|stop来启动或停止apache。
安装mysql3.23:
# cd /usr/ports/databases/mysql323-server
# make install
安装后产生启动脚本/usr/local/etc/rc.d/mysql-server.sh
安装apache模块mod_php4:
# cd /usr/ports/www/mod_php4
首先编辑scripts目录下的configure.php文件,加入对OpenSSL的支持
# vi scripts/configure.php
找到下面一句
OpenSSL "OpenSSL support" ON \
改成
OpenSSL "OpenSSL support" YES \
# make install
出现对话框时直接选ok继续
安装完成后编辑apache的配制文件/usr/local/etc/apache/httpd.conf ,添加如下内容:
# 设置默认可以使用的主页名称,这句系统一般已经有了,不用添加了
DirectoryIndex index.php index.html
# 这2句需要手工添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
安装其他Apache常用模块 mod_gzip + mod_fastcgi + mod_perl:
# cd /usr/ports/www/mod_gzip
# make install
# cd /usr/ports/www/mod_fastcgi
# make install
编辑/usr/local/etc/apache/httpd.conf文件
添加下面一句
AddHandler fastcgi-script fcgi fcgi fpl
# cd /usr/ports/www/mod_perl
# make install
重新启动让所有软件自动运行。
测试:
首先以root身份执行线程察看命令top,列表中应该有下面几个线程正在运行:
PID USERNAME PRI NICE SIZE RES STATE COMMAND
69 root 2 0 440K 296K select natd # 网络地址转换进程
132 root 2 0 3692K 3052K select httpd # apache进程
166 mysql 2 0 27480K 4824K poll mysqld # mysql进程
在浏览器地址栏输入,如果分别显示你拷入的主页证明虚拟主机配置成功!
利用上面的方法我们可以建立更多的虚拟主机,甚至对外提供主页空间服务!
如果要对外提供虚拟主机服务,需要为使用者提供ftp上传功能。下一节我们将讨论如何通过Proftpd1.2.7 + proftpd-mod-quotatab-1.2.4 + mysql实现带有空间限额和数据库用户验证功能的ftp服务器。
本文作者: