美文网首页
第七十一章 Apache (UNIX® Linux macOS)

第七十一章 Apache (UNIX® Linux macOS)

作者: Cache技术分享 | 来源:发表于2024-05-03 12:19 被阅读0次

    第七十一章 Apache (UNIX® Linux macOS) 的替代选项 - 替代选项 1:带有 NSD 的 Apache API 模块 (mod_csp24.so)

    替代选项 1:带有 NSDApache API 模块 (mod_csp24.so)

    如果 CSP 模块作为预构建共享对象 (mod_csp24.so) 随发行版一起提供,则从运行时配置开始。要从提供的源文件 mod_csp.c 构建共享对象,请选择下面的方法 1 或方法 2。优选方法 1

    请务必结合 Apache 发行版中包含的特定文档阅读以下有关创建共享对象的说明。请注意,此处给出的说明假定 Apache 安装的根目录是 /usr/apache。实际上,此目录名称通常会附加 Apache 版本号。

    方法 1:使用 apxs (APache eXtenSion) 工具将 CSP 模块构建为共享对象

    以下命令使用 Apache 扩展工具 apxsApache /modules 目录中构建并安装共享库 mod_csp24.so。它还添加了一个指令来将模块加载到 Apache 配置文件 /conf/httpd.conf 中。

    apxs –c –o mod_csp24.so mod_csp.c
    

    将生成的共享对象 (mod_csp24.so) 复制到以下目录:/opt/webgateway/bin

    方法 2:手动将 CSP 模块构建为共享对象

    执行以下步骤将 CSP 模块手动构建为共享对象:

    1. 将模块源文件 mod_csp.c 安装在以下目录中:/usr/apache/src/modules/extra
    2. 返回/usr/apache/src目录并编辑配置文件。在此文件末尾附近,找到以下行:
    # AddModule modules/example/mod_example.o
    

    在此行之后,添加以下行:

    ShareModule modules/extra/mod_csp24.so
    
    1. 使用以下命令配置构建过程:
    ./Configure
    
    1. 使用以下命令构建共享对象:
    make
    

    /usr/apache/src/modules/extra 中生成共享对象 mod_csp24.so

    注意:有关 apxs 工具的更多信息,请参阅 Apache 文档:https://httpd.apache.org/docs/2.4/programs/apxs.html

    运行时配置

    编辑 Apache 配置文件 httpd.conf。对于标准 Apache 发行版,该文件位于:

    /usr/apache/conf
    

    对于 Red Hat Linuxhttpd.conf 的运行时版本位于:

    /etc/httpd/conf
    

    假设希望为包含 .csp.cls.zen 扩展名的请求文件调用 CSP 引擎,请将以下部分添加到 httpd.conf 的末尾。

    LoadModule csp_module /opt/webgateway/bin/mod_csp24.so
    CSPFileTypes csp cls zen cxw 
    Alias /csp/ /opt/webgateway/csp/
    <Directory "/opt/webgateway/csp">
            AllowOverride None
            Options MultiViews FollowSymLinks ExecCGI
            Require all granted
            <FilesMatch "\.(log|ini|pid|exe)$">
                    Require all denied
            </FilesMatch>
            <Files CSPnsd>
                    Require all denied
            </Files>
    </Directory>
    ScriptAlias /csp-bin/ "/opt/webgateway/bin/"
    ScriptAliasMatch /csp/bin/Systems/Module.cxw "/opt/webgateway/bin/nph-CSPcgiSys" 
    ScriptAliasMatch /csp/bin/RunTime/Module.cxw "/opt/webgateway/bin/nph-CSPcgi"
    <Directory "/opt/webgateway/bin/">
            AllowOverride None
            Options None
            Require all granted
    </Directory>
    
    

    更改 httpd.conf 后重新启动 Apache

    相关文章

      网友评论

          本文标题:第七十一章 Apache (UNIX® Linux macOS)

          本文链接:https://www.haomeiwen.com/subject/icecfjtx.html