目前,很多服務器都安裝了FreeBSD操作系統。FreeBSD操作系統繼承了BSD系統的純凈性和高性能,加上其軟件包裝和發布比Linux系統更加嚴謹,同時也具有更佳的安全性,正是這些特性使得FreeBSD操作系統在服務器環境中備受推崇。本文將介紹如何在FreeBSD平臺下架設Web服務器。
一、接入Internet
配置的第一步就是讓FreeBSD接入Internet并設置好代理服務。本機使用ADSL接入Internet有兩種情況,即通過撥號獲取的動態ip或ISP提供的靜態ip。以下主要介紹動態IP的配置過程。
方法很簡單,通過直接編輯“/etc/ppp/ppp.conf”文件和“/etc/rc.conf”文件即可實現接入Internet并支持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服務器地址。
二、安裝并設置web服務器
Web服務器的安裝與設置請按參照以下步驟進行:
第一步:關掉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
第二步:安裝ports。使用它,可讓FreeBSD安裝各種軟件變得很輕松。(如果已經有/usr/ports目錄則證明已經安裝過了),命令格式為:
# /stand/sysinstall
然后依次選擇“Configure—Distributions—ports”,ports即被安裝在“/usr/ports”目錄中。
第三步:接著安裝apache1.3.27 + modssl(關于軟件的安裝版本大家可以根據實際情況選擇,下同)。安裝后系統會自動產生啟動腳本apache.sh,在/usr/local/etc/rc.d目錄中。可以通過運行apache.sh start stop來啟動或停止apache。命令格式為:
# cd /usr/ports/www/apache13-modssl
# make install #FreeBSD會自動從網絡下載并安裝
第四步:安裝mysql3.23。完成后將建立啟動腳本“/usr/local/etc/rc.d/mysql-server.sh”。命令格式為:
# cd /usr/ports/databases/mysql323-server
# make install
第五步:安裝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" YES修改完成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句需要手工添加
第六步:開始測試
重新啟動并以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目錄中,只要把自己的網頁拷貝到這個目錄,就可以訪問自己的主頁了。