科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道Linux下增加Apache的rewrite Module

Linux下增加Apache的rewrite Module

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了在Linux下增加Apache的rewrite Module的方法。

作者:CSDN 来源:CSDN 2006年10月25日

关键字: Apache Linux

  • 评论
  • 分享微博
  • 分享邮件

    ZDNetChina服务器站 10月25日操作系统技巧最近,项目需要在已经编译好的Apache上以动态方式加载rewrite模块。于是,我们在网上找了许多资料,但都讲解得不是很详细且格式错位问题严重。所以我们有必要把这一过程再重述一遍。实际操作步骤如下:

    工作现场描述:

    Linux 2.4.21
    apache_1.3.34.tar.gz    解压后的目录为 /root/apache_1.3.34 文中简称为“源码目录”
    apache安装目录 /usr/local/apache 文中简称为“目标目录”

    步骤:

    1、Apache安装rewrite模块的时候需要DBM支持,否则无法编译,所以首先要安装一个GDBM 

    下载地址:ftp://ftp.gnu.org/gnu/gdbm/

    安装步骤:
        进入安装目录,
        ./configure
        make
        make install
        make install-compat    (最后行也要执行。否则无法编译出ndbm.h头文件)

    如果您不能确定服务器上是否已经装有DBM,那么可以安装一下。否则这步可以跳过。

    2、现在到apache源码目录的标准模块目录中

    (/root/apache_src/src/modules/standard/)中,使用如下指令编译出so文件:
    /usr/local/apache/bin/apxs -c mod_rewrite.c -lgdbm

  即可得到mod_rewrite.so文件。

    备注:"-lgdbm"是用为说明在编译mod_rewrite.c时要把gdbm链接进来。这样在第6步启动apache时就不会报出"dbm fetch"的错误了。

    3、现在让apache的apxs来自动向http.conf配置文件中加入LoadModule语句并将mod_rewrite.so文件拷贝到apache/libexec目录/usr/local/apache/bin/apxs -i -A -n rewrite /root/apache_1.3.34/src/modules/standard/mod_rewrite.so

    备注:命令中的rewrite参数是告诉apxs命令mod_rewrite.so文件中的模块名。在命令执行后,apxs会在LoadModule中为rewrite加上"_module"以标名模块名称。如果你在启动apache时发现总是给出“不能定位API”之类的错误,那就是说明LoadModule后面的模块名的语法要根据您的apache版本加以改变。

    4、停止apache
    apache/bin/apachectl stop

    5、运行配置文件检查命令

    apache/bin/apachectl configtest
    如显示Syntax OK,则表示整个操作成功。那么可以到第6步。否则根据提示信息进行调试。但只要按照此文所说进行操作是不会出错的。

    6、启动apache
    apache/bin/apachectl start

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章