Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1445747
  • 博文数量: 295
  • 博客积分: 10051
  • 博客等级: 上将
  • 技术积分: 3850
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-11 08:50
文章分类

全部博文(295)

文章存档

2011年(1)

2009年(4)

2008年(290)

我的朋友

分类: BSD

2008-04-15 15:35:39

环境

平台:FreeBSD6.1

服务器:APACHE2.0.59

组件:
libiconv-1.9.2_2.tbz    pkgconfig-0.20.tbz          #pkg_add添加组件时需要的文件
libxml2-2.6.23_1.tbz perl-5.8.8.tbz                    #要使用pkg_add添加的组件
mod_bw-0.7.gz    mod_limitipconn-0.22.tar.gz     
#起到限速和限制IP多线程下载的模块

根据版本的不同,有的时候直接安装APACHE即可,如果APACHE主目录下的/bin/apxs不能加载和编译模块的话,需要安装perl支持。

在我的机器上是先安装了perl

将以上这6个组件放到同一目录中,我习惯放到/root/src

#----------------------------------------------- ------------------------------------------第一步--------------------------- ---------

www#pkg_add libxml2-2.6.23_1.tbz
www#pkg_add perl-5.8.8.tbz
www#tar zxvf httpd-2.0.59.tar.gz

www#cd httpd-2.0.59

www#
./configure --prefix=/usr/local/apache --enable-so
www#make

www#make install
#prefix用来制定安装APACHE的目录   enable-so是用来使APACHE运行起来以后可以加载mod动态模块

我们开始加载两个具有限制功能的模块

www#/usr/local/apache/bin/apxs -i -c -a /root/src/mod_bw/mod_bw.c

www#/usr/local/apache/bin/apxs -i -c -a /root/src/mod_limitipconn/mod_limitipconn.c

加载是否成功,可以察看一下/usr/local/apache/bin/httpd.conf中是否有以下这段文字

# LoadModule foo_module modules/mod_foo.so
LoadModule bw_module          modules/mod_bw.so
LoadModule limitipconn_module modules/mod_limitipconn.so

如果有就说明我们的APACHE已经加载上了

#-----------------------------------------------------------------------------------------第二部----------------------------------

编辑APACHE主配置文件

找到/usr/local/apache/bin/httpd.conf文件中的以下这些内容是否配置正确

DocumentRoot "/usr/local/apache/htdocs" 是否指定的是自己网站的根目录

找到
          Options FollowSymLinks
          AllowOverride None
      

在前面加上

BandWidthModule On
ForceBandWidthModule On
BandWidth    all 50000

前两句是启用限速模式,第三句是设置限制速度的多少,单位是字节。我们这里设置限速在50k以下

找到#ExtendedStatus On 这行配置 将前面的注释“#”取消,或者在上面的配置下直接写上这句话也可以,然后在下面添加:


MaxConnPerIP 1

因为在/usr/local/apache/htdocs/down目录下放的都是网站提供下载的内容,对其进行单线程的限制,如果不指明/down这个目录,很有可能会造成客户在下载内容的时候无法正常浏览网页,因为浏览网页也会产生一个线程。

#----------------------------------------------- ------------------------------------------------------------附加---------- -------------------------

Apache通过 bin/apachectl或者bin/httpd来控制启动或者停止.
# /usr/local/apache/bin/httpd -k start   #启动apache
# /usr/local/apache/bin/httpd -k stop   #停止apache
# /usr/local/apache/bin/httpd -k restart #重启apache

如果想让APACHE随机器一起启动的话,可以写一个启动脚本放到/etc/rc.d目录下

cd /usr/local/etc/rc.d
vi apache.sh
添加如下内容:
/usr/local/apache/bin/apachectl start &
执行:wq!命令保存后退出,并执行如下命令:
chmod 777 apache.sh

#-------------------------

阅读(1085) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~