发新话题
打印

FreeBSD系统平台下的WEB服务的组建

FreeBSD系统平台下的WEB服务的组建

  在FreeBSD系统中,一个标准的FreeBSD系统,至少要有一个网络界面以便与其他计算机通信。它支持Token Ring和FDDI,以及普通电话拨号连接、ISDN、ATM等广域网连接方式。本文要讨论的是基于此系统平台下的WEB服务的组建情况,FreeBSD的使用版本为4.7。

  一.接入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 1997

  # Created: Tue Jul 15 21:20:28 1997

  # 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.webjx.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 1997

  通过对以上两个文件的个性修改并重新启动后,就可以拨号上网并实现透明代理了。客户端需要将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目录中,只要把自己的网页拷贝到这个目录,就可以访问自己的主页了。
发新话题