2.3. 将 Apache HTTP 服务器配置为加载 mod_jk


您可以通过在 mod_jk.conf 文件中指定配置设置,将 Apache HTTP 服务器配置为加载 mod_jk。

您还可以执行以下可选配置步骤:

  • 除了 JkMount 指令外,您还可以使用 JkMountFile 指令指定挂载点的配置文件。配置文件包含用于 Tomcat 转发的多个 URL 映射。
  • 您可以配置作为负载均衡器运行的 Apache HTTP 服务器,以记录处理请求的每个 worker 节点的详情。如果您需要对负载均衡器进行故障排除,这很有用。

流程

  1. 前往 JBCS_HOME/httpd/conf.d 目录。
  2. 创建一个名为 mod_jk.conf 的新文件,并输入以下配置详情:

    # Load mod_jk module
    # Specify the filename of the mod_jk lib
    LoadModule jk_module modules/mod_jk.so
    
    # Where to find workers.properties
    JkWorkersFile conf.d/workers.properties
    
    # Where to put jk logs
    JkLogFile logs/mod_jk.log
    
    # Set the jk log level [debug/error/info]
    JkLogLevel info
    
    # Select the log format
    JkLogStampFormat  "[%a %b %d %H:%M:%S %Y]"
    
    # JkOptions indicates to send SSL KEY SIZE
    JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
    
    # JkRequestLogFormat
    JkRequestLogFormat "%w %V %T"
    
    # Mount your applications
    JkMount /application/* loadbalancer
    
    # Add shared memory.
    # This directive is present with 1.2.10 and
    # later versions of mod_jk, and is needed for
    # for load balancing to work properly
    JkShmFile logs/jk.shm
    
    # Add jkstatus for managing runtime data
    <Location /jkstatus/>
        JkMount status
        Require ip 127.0.0.1
    </Location>
    Copy to Clipboard Toggle word wrap
    重要

    确保 LoadModule 指令引用您已安装的 mod_jk 原生二进制文件。

    注意

    JkMount 指令指定 Apache HTTP 服务器可以转发到 mod_jk 模块的 URL。根据 JkMount 指令的配置,mod_jk 会将接收的 URL 转发到正确的 servlet 容器。

    要启用 Apache HTTP 服务器直接提供静态内容(或 PHP 内容),且只使用 Java 应用程序的负载均衡器,前面的配置示例指定 Apache HTTP 服务器仅向 mod_jk 负载均衡器发送请求。

    或者,您可以通过在 JkMount 指令中指定 /*,将 Apache HTTP 服务器配置为将所有 URL 转发到 mod_jk

  3. 可选:要使用 JkMountFile 指令指定挂载点的配置文件,请执行以下步骤:

    1. 前往 JBCS_HOME/httpd/conf.d/ 目录。
    2. 创建名为 uriworkermap.properties 的文件。
    3. 指定您要转发和 worker 名称的 URL。

      例如:

      # Simple worker configuration file
      
      # Mount the Servlet context to the ajp13 worker
      /application=loadbalancer
      /application/*=loadbalancer
      Copy to Clipboard Toggle word wrap
      注意

      所需语法的格式是: /URL=WORKER_NAME

      前面的示例将 mod_jk 配置为将 /application 的请求转发到 JBoss Web Server Tomcat 后端。

    4. JBCS_HOME/httpd/conf.d/mod_jk.conf 文件中,输入以下指令:

      # Use external file for mount points.
      # It will be checked for updates each 60 seconds.
      # The format of the file is: /url=worker
      # /examples/*=loadbalancer
      JkMountFile conf.d/uriworkermap.properties
      Copy to Clipboard Toggle word wrap
  4. 可选:要启用 Apache HTTP 服务器日志,请执行以下步骤之一:

    • JkRequestLogFormat 指令中包含 %w,如上一步中有关 mod_jk.conf 设置所示。
    • 通过在 Apache HTTP 服务器 LogFormat(s)中包含 %{JK_WORKER_NAME}n 记录要使用的 mod_jk worker 名称。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat