在APACHE环境下配置下载服务器的注意事项

 更新时间:2016年08月24日 22:55:42   投稿:mdxy-dxy  
这篇文章主要介绍了在APACHE环境下配置下载服务器的注意事项,需要的朋友可以参考下

环境

平台: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"  是否指定的是自己网站的根目录

找到<Directory />
           Options FollowSymLinks
           AllowOverride None
        </Directory>

在前面加上

BandWidthModule On
 ForceBandWidthModule On
 BandWidth    all 50000

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

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

 <Location /down>
  MaxConnPerIP 1
  </Location>

因为在/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

相关文章

  • Linux使用nslookup和dig来查询域名和ip信息

    Linux使用nslookup和dig来查询域名和ip信息

    nslookup 和 dig命令一般用于查询 DNS服务器,获取域名、IP地址等DNS记录信息,下面小编就来为大家介绍一下Linux如何使用nslookup和dig来查询域名和ip信息吧
    2025-03-03
  • Linux shell中的test命令用法教程

    Linux shell中的test命令用法教程

    这篇文章主要给大家介绍了Linux shell中的test命令用法的相关资料,test命令是shell环境中测试条件表达式的实用工具,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-04-04
  • Ubuntu 16.04无法切换root权限问题的解决

    Ubuntu 16.04无法切换root权限问题的解决

    root权限相信对大家来说都不陌生,下面这篇文章主要给大家介绍了关于Ubuntu 16.04无法切换root权限问题的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-04-04
  • Linux中OpenSSL命令的应用场景分析

    Linux中OpenSSL命令的应用场景分析

    这篇文章主要介绍了Linux中OpenSSL命令的应用场景,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Xshell连接不上虚拟机的解决办法

    Xshell连接不上虚拟机的解决办法

    本文主要介绍了Xshell连接不上虚拟机的解决方法,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-10-10
  • Ubuntu16.04安装Jenkins的方法图文详解

    Ubuntu16.04安装Jenkins的方法图文详解

    这篇文章主要介绍了Ubuntu16.04安装Jenkins,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • 解决linux下大量TIME WAIT的方法详解

    解决linux下大量TIME WAIT的方法详解

    本篇文章是对linux下大量TIME WAIT的解决方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Apache中配置支持CORS(跨域资源共享)实例

    Apache中配置支持CORS(跨域资源共享)实例

    这篇文章主要介绍了Apache中配置支持CORS(跨域资源共享)实例,本文给出了一个完整的apache、PHP、JavaScript结合实现的跨域资源共享实例,需要的朋友可以参考下
    2015-01-01
  • linux时间函数与时间格式与字符串之间的转化方法

    linux时间函数与时间格式与字符串之间的转化方法

    下面小编就为大家分享一篇linux时间函数与时间格式与字符串之间的转化方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • Linux RabbitMQ 集群搭建流程图解

    Linux RabbitMQ 集群搭建流程图解

    在介绍RabbitMQ之前实现要介绍一下MQ,MQ是什么?MQ全称是Message Queue,可以理解为消息队列的意思,简单来说就是消息以管道的方式进行传递。RabbitMQ是一个实现了AMQP(Advanced Message Queuing Protocol)高级消息队列协议的消息队列服务,用Erlang语言的
    2021-11-11

最新评论