FreeBSD是一个可以在Intel兼容机、DEC Alpha或PC98架构的计算机上执行的UNIX操作系统。由于FreeBSD是Unix的一个分支系统,因此它具有Unix的特性,可以完成Unix可以做的工作。同时,FreeBSD也是一套免费的操作系统,它可以让我们的个人计算机变成先进的工作站,更稳定的提供你所需要的网络服务。接下来,本文将着重介绍如何在FreeBSD平台下架设web服务器。
一、接入Internet
首先让FreeBSD接入到互联网并设置好代理服务。使用ADSL接入互联网有两种情况,即通过拨号获取的动态IP或ISP提供的静态IP。以下主要介绍动态IP的配置过程。
方法很简单,通过直接编辑/etc/ppp/ppp.conf文件和/etc/rc.conf文件即可实现接入互联网,并支持NAT方式的透明代理。
打开PPP.conf文件对其实施配置时,使用以下命令:
# vi /etc/ppp/ppp.conf
配置实例(注意set前要有空格):
default:
set log Phase tun command
set ifaddr 10.0.0.1/0 10.0.0.2/0
adsl: # 配置代号
set device PPPoE:vr0 # vr0改成你连接ADSL modem的网卡名
set mru 1492
set mtu 1492
set authname username # username是拨号用户名
set authkey password # password是拨号密码
set dial
set login
add default HISADDR
然后打开rc.conf文件对其实施配置时,使用以下命令:
# vi /etc/rc.conf
配置实例:
# -- sysinstall generated deltas -- # Tue Jul 15 21:20:28 2006
# Created: Tue Jul 15 21:20:28 2006
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
hostname="www.usweb.com" # 你的主机域名
ifconfig_fxp0="inet 192.168.0.1 netmask 255.255.255.0" #内网网卡ip地址,fxp0是网卡名
inetd_enable="YES" # 开机加载inetd
kern_securelevel_enable="NO"
linux_enable="YES"
nfs_reserved_port_only="NO"
sendmail_enable="NO"
sshd_enable="YES"
usbd_enable="NO"
gateway_enable="YES"
firewall_enable="YES" #启用防火墙
firewall_script="/etc/rc.firewall"
firewall_type="open"
firewall_quiet="YES"
firewall_logging_enable="YES"
ppp_enable="YES" # 开机自动拨号
ppp_mode="ddial"
ppp_nat="YES" # 启用透明代理
ppp_profile="adsl" # 配置代号
# -- sysinstall generated deltas -- # Wed Jul 16 06:52:13 2006
通过对以上两个文件的修改并重新启动后,就可以拨号上网并实现透明代理了。客户端需要将DNS设置为服务商提供的DNS地址,网关设成代理服务器的内网IP地址,本例为192.168.0.1。并把IE的Internet选项里关于连接设置的所有复选框清除。如果解析不了域名就检查/etc/resolv.conf文件是否正确的配置了DNS服务器地址。
#P#
二、安装并设置web服务器
Web服务器的安装与设置请按参照以下步骤进行:
1、关掉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
2、安装ports,使用它,可让FreeBSD安装各种软件变得很轻松,命令格式为:
# /stand/sysinstall
然后依次选择Configure—>Distributions—>ports,ports即被安装到/usr/port目录中。
3、接着安装apache+modssl,安装后系统会产生启动脚本apache.sh,在/usr/local/etc/rc.d目录中,可以通过运行apache.sh start/stop来启动或停止apache。命令格式为:
# cd /usr/ports/www/apache13-modssl
# make install #FreeBSD会自动从网络下载并安装
4、安装mysql,完成后将建立启动脚本/usr/local/etc/rc.d/mysql-server.sh,命令格式为:
# cd /usr/ports/databases/mysql323-server
# make install
5、安装apache模块mod_php4,命令格式为:
# cd /usr/ports/www/mod_php4 #FreeBSD会自动从网络下载并安装
接着编辑scripts目录下的configure.php文件,加入对OpenSSL的支持,命令格式为:
# vi scripts/configure.php
打开此文件后,找到OpenSSL "OpenSSL support" ON然后将其改为OpenSSL "OpenSSL support" ,修改完成configure.php后,再编辑apache的配制文件/usr/local/etc/apache/httpd.conf ,添加如下内容:
DirectoryIndex index.php index.html # 设置默认可以使用的主页名称
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps # 这2句需要手工添加
6、开始测试,重新启动并以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进程
在浏览器地址栏输入http://192.168.0.1,如果显示apache的欢迎页面,证明web服务器安装成功;web页面文件存放在/usr/local/www/data目录中,只要把自己的网页拷贝到这个目录,就可以访问自己的主页了。