AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[mod-proxy-ajp](server)

Martin Hope
sgc
Asked: 2021-11-05 11:32:23 +0800 CST

Apache2 VirtualHost RedirectPermanent 和 AJP 代理冲突

  • 0

事实证明,我的网站上由 ajp ProxyPass 控制的位置在 VirtualHost 重定向之前正在处理,这引起了我的注意,因为谷歌已经在 ardownload.example.org 索引了 25k+ 页面 - 我从未使用过并且不知道如何使用的子域他们开始走这条路。他们还有大约 12k 来自其他“不存在”的子域的页面。我将问题追溯到这样一个事实,即如果重定向到达 ajp 代理位置,则不尊重重定向。

期望的结果是所有子域都正确重定向到主站点,同时保留 url 和查询字符串。

部分忽略重定向的当前虚拟主机:

<VirtualHost *:80>
    ServerName example.org
    ServerAlias *.example.org
    RedirectPermanent / https://www.example.org/
</VirtualHost>

当前位置代理导致错误。

<Location /tomcatlocation/>
     ProxyPreserveHost on
     ProxyPass ajp://127.0.0.1:8009/tomcatlocation/ retry=0
     ProxyPassReverse ajp://127.0.0.1:8009/tomcatlocation/
</Location>

类似foo.example.org/tomcatlocation/或foo.example.org/tomcatlocation不会重定向的东西,而将其截断为foo.example.org/tomcatlocatio将正确重定向。

我没有运气搜索这方面的信息。谢谢。

apache2ctl -S:

VirtualHost configuration:
*:80                   is a NameVirtualHost
         default server www.example.org (/etc/apache2/sites-enabled/000-default.conf:1)
         port 80 namevhost www.example.org (/etc/apache2/sites-enabled/000-default.conf:1)
         port 80 namevhost example.org (/etc/apache2/sites-enabled/000-default.conf:10)
                 wild alias *.example.org
         port 80 namevhost example.net (/etc/apache2/sites-enabled/000-default.conf:15)

... other domains truncated ...

*:443                  is a NameVirtualHost
         default server example.org (/etc/apache2/sites-enabled/default-ssl.conf:2)
         port 443 namevhost example.org (/etc/apache2/sites-enabled/default-ssl.conf:2)
                 alias www.example.org
         port 443 namevhost example.net (/etc/apache2/sites-enabled/default-ssl.conf:25)
                 alias www.example.net
         
... other domains truncated ...


ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/lock/apache2" mechanism=fcntl 
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33
virtualhost mod-proxy-ajp apache-2.4
  • 1 个回答
  • 147 Views
Martin Hope
bwright
Asked: 2017-02-22 04:46:00 +0800 CST

使用 AJP 时会话无效

  • 1

我有以下设置: Apache 运行前端(AngularJS)
Tomcat 7 运行后端(Spring MVC,Spring Security)

阿帕奇配置

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    LoadModule proxy_module libexec/apache2/mod_proxy.so
    LoadModule proxy_ajp_module libexec/apache2/mod_proxy_ajp.so

    ProxyRequests     off
    ProxyPreserveHost on

    ProxyPass         /api/  ajp://132.230.166.21:8009/OntoRais/api/
    ProxyPassReverse  /api/  ajp://132.230.166.21:8009/OntoRais/api/

    Alias /rais "/home/bwright/Repositories/ontology-toolchain/WebClient"
    <Directory "/home/bwright/Repositories/ontology-toolchain/WebClient">
        Order allow,deny
        Allow from all
        Require all granted
    </Directory
</VirtualHost>

可以看到,我使用 ajp 协议将所有 api 调用传递给 tomcat 服务器。

Tomcat 配置 (Server.xml)

干净安装没有任何变化,除了:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"  enableLookups="false"/>

现在,当我尝试通过前端访问 tomcat 资源时,我得到 403

HTTP Status 403 - Full authentication is required to access this resource accessing /OntoRais/api/user

在我得到的tomcat服务器日志中

13:25:10.034 [ajp-bio-8009-exec-7] DEBUG o.s.s.w.s.SessionManagementFilter - Requested session ID ED0779DC647DEE3C58DEA7059C260594 is invalid. 

当通过 bowser 直接访问 tomcat 服务器的相同资源时, http://localhost:8080/OntoRais/api/user一切正常。

编辑

澄清一下,132.230.166.21 与 localhost 是同一台机器。我将配置更改为 localhost ,没有任何更改。

希望这里有人可以帮助我谢谢本尼迪克特

tomcat mod-proxy-ajp apache-2.4
  • 1 个回答
  • 474 Views
Martin Hope
Michael
Asked: 2016-12-24 02:23:54 +0800 CST

AJP代理配置中应该配置什么?

  • 1

我的产品中有 Apache HTTPD 服务器,我需要将 AJP 代理添加到某些特定应用程序。

Tomcat AJP 端口是 8009,Tomcat HTTP 端口是 8080(SSL 终止在 Apache 中)。这是我需要配置的 AJP 代理。

<Directory /app>
    AuthType None
    Allow from all
    Satisfy any
    AllowOverride None
    Options None FollowSymLinks
</Directory>

<Proxy http://localhost:8080/app >
    AuthType None
    Allow from all
    Order Deny,Allow
    Satisfy any
    Options None FollowSymLinks
</Proxy>
ProxyPass /app ajp://localhost:8009/app
<Location /app>
        ProxyPassReverse ajp://localhost:8009/app
</Location>

问题:应该配置<Proxy … >什么? <Proxy http://localhost:8080/app > 或者 <Proxy ajp://localhost:8009/app >

添加 了说明。整个配置包含根配置(见下文)。

我只需要将 AJP 代理添加到某些特定的应用程序。

<Directory />
    Deny from all
    Allow from localhost
    Order Deny,Allow
    AuthType Basic
    Require valid-user
    AllowOverride None
    Satisfy any
    Options None FollowSymLinks
</Directory>


<Proxy *>
    Deny from all
    Order Deny,Allow
    AuthType Basic
    Require valid-user
    Satisfy any
    Options None FollowSymLinks
</Proxy>
apache-2.2 reverse-proxy ajp mod-proxy-ajp
  • 3 个回答
  • 1043 Views
Martin Hope
I wrestled a bear once.
Asked: 2016-10-23 19:55:08 +0800 CST

Tomcat 仅处理 JSP - Apache 代理未按预期工作

  • 1

我已经获得了一些包含 .jsp 文件的 PHP 项目的源代码。我可以在工作时在我的 Mac 上设置的 XAMPP 上按原样运行它,但我正在努力在家里的 Ubuntu 设置上实现同样的效果。

我需要的是能够在我的 Apache 服务器根目录 (/var/www/html/) 中删除 .jsp 文件,并让 Apache 与 Tomcat 建立任何必要的连接来解析 .jsp 文件并让 Apache 处理其他所有事情。

我不想将我的 .jsp 文件或任何其他文件放在 Tomcat 服务器根目录中,我只是希望 Tomcat 解析我的 Apache 服务器根目录中的 .jsp 文件。

我已经阅读了有关 Stack Exchange 的几篇文章和问题,并取得了以下成果:(localhost/something/something.jsp位于 中/var/www/html/something/something.jsp)由 Apache 提供服务,Java 代码未解析地提供给客户端,同时导航到localhost/something/something.php(位于 something.jsp 旁边)显示默认的“它有效!” Tomcat 的登陆页面。这不是我想要的。

这是我设置了代理的 000-default.conf 文件:

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.example.com

    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_http_module modules/mod_proxy_http.so

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    ProxyRequests off
    ProxyPreserveHost On

    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    ProxyPass *.jsp ajp://127.0.0.1:8009/
    ProxyPassReverse *.jsp ajp://127.0.0.1:8009/

    <Directory "/var/www/html">
        AllowOverride All
    </Directory>

    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

我怎样才能达到预期的效果?

ubuntu mod-proxy-ajp apache2 tomcat7 jsp
  • 1 个回答
  • 839 Views
Martin Hope
12N
Asked: 2012-05-09 02:51:48 +0800 CST

Apache2 mod_proxy 到远程 Tomcat7 - 响应缓慢

  • 1

几天来一直坚持这个。将尝试提供尽可能多的信息,但请随时询问更多详细信息。

我在 NAT 后面有 2 个虚拟机,192.168.0.100 和 192.168.0.102,都运行 Ubuntu 11.04 x64。第一个映射到外部,是我们的网络服务器,安装了一个 Apache/2.2.17 和几个虚拟主机来提供静态内容,还有用于负载平衡的 mod_jk。第二个安装了带有多个 J2EE REST web 服务但没有 apache 的 tomcat 7 - 请求应该直接从 .100 apache 传递到 .102 tomcat。我打算准备一个tomcat集群环境。

我的问题:请求到达 192.168.0.100 没有任何问题,但随后大约需要... 100 秒数据才能真正到达 .102 - 到那时 apache 已经超时,但 tomcat 非常正常地接收和处理请求。这在使用 mod_jk、mod_proxy 或 mod_ajp_proxy 时都会发生。不知道为什么,因为两台机器都没有防火墙,所以都可以 ping 通 - 更重要的是,有 NFS 共享像魅力一样活跃 - 并且 mod_proxy 经验表明直接来自 .100 的请求被正常处理。

此外,雪上加霜的是,在我们的办公网络中设置了类似的环境。一切都很完美。-_- 唯一的区别?我们在办公室没有 ip 转换,并且通过内部地址做所有事情 - 不知道这是否有任何相关性。

一些配置:

阿帕奇虚拟主机:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/
    ServerName www.example.com

    ProxyRequests Off
    <Proxy *>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride all
            Order allow,deny
            allow from all
    </Proxy>

    ProxyPass /bork http://192.168.0.102:8080/bork
    ProxyPassReverse /bork http://192.168.0.102:8080/bork
    LogLevel debug

    CustomLog ${APACHE_LOG_DIR}/api_access.log combined
    ErrorLog ${APACHE_LOG_DIR}/api_error.log
</VirtualHost>

Tomcat 连接器

<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />
<Connector port="8009"
    enableLookups="false"
    redirectPort="8443"
    protocol="AJP/1.3"
/>

来自 apache 的调试日志,来自使用 mod_proxy_ajp 的测试。mod_proxy 中的行为几乎相同,至少在延迟方面是这样。请注意,当日志再次开始更新时,tomcat 最终会接收并处理请求,或多或少:

[Sun May 06 14:40:33 2012] [debug] proxy_util.c(1506): [client 188.81.234.2] proxy: ajp: found worker ajp://192.168.0.102:8008/bork for ajp://192.168.0.102:8008/bork/SSOIdentityProviderSoap
[Sun May 06 14:40:33 2012] [debug] mod_proxy.c(1015): Running scheme ajp handler (attempt 0)
[Sun May 06 14:40:33 2012] [debug] mod_proxy_ajp.c(661): proxy: AJP: serving URL ajp://192.168.0.102:8008/bork/SSOIdentityProviderSoap
[Sun May 06 14:40:33 2012] [debug] proxy_util.c(2011): proxy: AJP: has acquired connection for (192.168.0.102)
[Sun May 06 14:40:33 2012] [debug] proxy_util.c(2067): proxy: connecting ajp://192.168.0.102:8008/bork/SSOIdentityProviderSoap to 192.168.0.102:8008
[Sun May 06 14:40:33 2012] [debug] proxy_util.c(2193): proxy: connected /bork/SSOIdentityProviderSoap to 192.168.0.102:8008
[Sun May 06 14:40:33 2012] [debug] proxy_util.c(2444): proxy: AJP: fam 2 socket created to connect to 192.168.0.102
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(224): Into ajp_marshal_into_msgb
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(290): ajp_marshal_into_msgb: Header[0] [Accept-Encoding] = [gzip,deflate]
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(290): ajp_marshal_into_msgb: Header[1] [Content-Type] = [text/xml;charset=UTF-8]
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(290): ajp_marshal_into_msgb: Header[2] [SOAPAction] = [""]
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(290): ajp_marshal_into_msgb: Header[3] [User-Agent] = [Jakarta Commons-HttpClient/3.1]
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(290): ajp_marshal_into_msgb: Header[4] [Host] = [www.example.com]
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(290): ajp_marshal_into_msgb: Header[5] [Content-Length] = [520]
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(450): ajp_marshal_into_msgb: Done
[Sun May 06 14:40:33 2012] [debug] mod_proxy_ajp.c(267): proxy: APR_BUCKET_IS_EOS
[Sun May 06 14:40:33 2012] [debug] mod_proxy_ajp.c(272): proxy: data to read (max 8186 at 4)
[Sun May 06 14:40:33 2012] [debug] mod_proxy_ajp.c(287): proxy: got 520 bytes of data
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(687): ajp_read_header: ajp_ilink_received 06
[Sun May 06 14:40:33 2012] [debug] ajp_header.c(697): ajp_parse_type: got 06
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 2 in child 5916 for worker ajp://192.168.0.100:8008/coding
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1837): proxy: worker ajp://192.168.0.100:8008/coding already initialized
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 2 in child 5916 for (192.168.0.100)
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 3 in child 5916 for worker http://192.168.0.102:8080
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1837): proxy: worker http://192.168.0.102:8080 already initialized
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 3 in child 5916 for (192.168.0.102)
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 4 in child 5916 for worker ajp://192.168.0.102:8008/bork
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1837): proxy: worker ajp://192.168.0.102:8008/bork already initialized
[Sun May 06 14:40:37 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 4 in child 5916 for (192.168.0.102)
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 2 in child 5918 for (192.168.0.100)
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 3 in child 5918 for worker http://192.168.0.102:8080
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1837): proxy: worker http://192.168.0.102:8080 already initialized
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 3 in child 5918 for (192.168.0.102)
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 4 in child 5918 for worker ajp://192.168.0.102:8008/bork
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1837): proxy: worker ajp://192.168.0.102:8008/bork already initialized
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 4 in child 5918 for (192.168.0.102)
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 2 in child 5917 for worker ajp://192.168.0.100:8008/coding
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1837): proxy: worker ajp://192.168.0.100:8008/coding already initialized
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 2 in child 5917 for (192.168.0.100)
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 3 in child 5917 for worker http://192.168.0.102:8080
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1837): proxy: worker http://192.168.0.102:8080 already initialized
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 3 in child 5917 for (192.168.0.102)
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 4 in child 5917 for worker ajp://192.168.0.102:8008/bork
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1837): proxy: worker ajp://192.168.0.102:8008/bork already initialized
[Sun May 06 14:40:38 2012] [debug] proxy_util.c(1934): proxy: initialized single connection worker 4 in child 5917 for (192.168.0.102)
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(687): ajp_read_header: ajp_ilink_received 04
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(697): ajp_parse_type: got 04
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(516): ajp_unmarshal_response: status = 200
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(537): ajp_unmarshal_response: Number of headers is = 1
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(599): ajp_unmarshal_response: Header[0]     [Content-Type] = [text/xml;charset=utf-8]
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(609): ajp_unmarshal_response: ap_set_content_type done
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(687): ajp_read_header: ajp_ilink_received 03
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(697): ajp_parse_type: got 03
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(687): ajp_read_header: ajp_ilink_received 03
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(697): ajp_parse_type: got 03
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(687): ajp_read_header: ajp_ilink_received 05
[Sun May 06 14:42:09 2012] [debug] ajp_header.c(697): ajp_parse_type: got 05
[Sun May 06 14:42:09 2012] [debug] mod_deflate.c(615): [client 188.81.234.2] Zlib: Compressed 447 to 255 : URL /bork/SSOIdentityProviderSoap
[Sun May 06 14:42:09 2012] [debug] mod_proxy_ajp.c(570): proxy: got response from (null) (192.168.0.102)
[Sun May 06 14:42:09 2012] [debug] proxy_util.c(2029): proxy: AJP: has released connection for (192.168.0.102)
[Sun May 06 14:42:09 2012] [info] [client 188.81.234.2] Request body read timeout

想知道是否有人可以提供一些建议,甚至可能指出任何可怕的、可怕的配置错误?提前致谢!

tomcat ubuntu apache-2.2 mod-proxy mod-proxy-ajp
  • 1 个回答
  • 2551 Views
Martin Hope
Peter Sankauskas
Asked: 2010-03-27 15:59:15 +0800 CST

Tomcat over AJP 的 Apache 负载均衡器限制

  • 6

我让 Apache 在 3 个 Tomcat 服务器前充当负载平衡器。有时,Apache 会返回 503 响应,我想将其完全删除。就 CPU、内存或磁盘而言,所有 4 台服务器都没有承受很大的负载,所以我有点不确定是什么达到了它的限制或为什么。当所有工作人员都处于错误状态时返回 503 - 不管这意味着什么。以下是详细信息:

阿帕奇配置:

<IfModule mpm_prefork_module>
  StartServers           30
  MinSpareServers        30
  MaxSpareServers        60
  MaxClients            200
  MaxRequestsPerChild  1000
</IfModule>

...

<Proxy *>
  AddDefaultCharset Off
  Order deny,allow
  Allow from all
</Proxy>

# Tomcat HA cluster
<Proxy balancer://mycluster>
  BalancerMember ajp://10.176.201.9:8009 keepalive=On retry=1 timeout=1 ping=1
  BalancerMember ajp://10.176.201.10:8009 keepalive=On retry=1 timeout=1 ping=1
  BalancerMember ajp://10.176.219.168:8009 keepalive=On retry=1 timeout=1 ping=1
</Proxy>

# Passes thru track. or api.
ProxyPreserveHost On
ProxyStatus On

# Original tracker
ProxyPass /m  balancer://mycluster/m
ProxyPassReverse /m balancer://mycluster/m

Tomcat 配置:

<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    <Engine name="Catalina" defaultHost="localhost">
      <Host name="localhost"  appBase="webapps"
          unpackWARs="true" autoDeploy="true"
          xmlValidation="false" xmlNamespaceAware="false">
    </Engine>
  </Service>
</Server>

阿帕奇错误日志:

[2010 年 3 月 22 日星期一 18:39:47] [错误] (70007) 指定的超时已过期:代理:AJP:尝试连接到 10.176.201.10:8009 (10.176.201.10) 失败
[2010 年 3 月 22 日星期一 18:39:47] [错误] ap_proxy_connect_backend 禁用(10.176.201.10)的工作人员
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:AJP:无法连接到后端:10.176.201.10
[2010 年 3 月 22 日星期一 18:39:47] [错误](70007)指定的超时已过期:代理:AJP:尝试连接到 10.176.201.9:8009(10.176.201.9)失败
[2010 年 3 月 22 日星期一 18:39:47] [错误] ap_proxy_connect_backend 禁用 (10.176.201.9) 的工作人员
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:AJP:无法连接到后端:10.176.201.9
[2010 年 3 月 22 日星期一 18:39:47] [错误] (70007) 指定的超时已过期:代理:AJP:尝试连接到 10.176.219.168:8009 (10.176.219.168) 失败
[2010 年 3 月 22 日星期一 18:39:47] [错误] ap_proxy_connect_backend 禁用(10.176.219.168)的工作人员
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:AJP:无法连接到后端:10.176.219.168
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态

负载均衡器top信息:

top - 23:44:11 up 210 天,4:32,1 个用户,平均负载:0.10、0.11、0.09
任务:总共 135 个,运行 2 个,睡眠 133 个,停止 0 个,僵尸 0 个
中央处理器:0.1%us、0.2%sy、0.0%ni、99.2%id、0.1%wa、0.0%hi、0.1%si、0.3%st
内存:总共 524508k,已使用 517132k,空闲 7376k,9124k 缓冲区
交换:总计 1048568k,已使用 352k,免费 1048216k,缓存 334720k

雄猫top信息:

top - 23:47:12 up 210 天,3:07,1 个用户,平均负载:0.02、0.04、0.00
任务:总共 63 个,1 个正在运行,62 个正在睡眠,0 个停止,0 个僵尸
中央处理器:0.2%us、0.0%sy、0.0%ni、99.8%id、0.1%wa、0.0%hi、0.0%si、0.0%st
内存:总共 2097372k,已使用 2080888k,可用 16484k,21464k 缓冲区
交换:总计 4194296k,已使用 380k,免费 4193916k,缓存 1520912k

Catalina.out 中没有任何错误消息。

根据 Apache 的服务器状态,它似乎达到了 143 个请求/秒的最大值。我相信服务器可以处理比它们实际更多的负载,因此任何有关低默认限制或其他原因导致此设置最大化的提示将不胜感激。

tomcat apache-2.2 load-balancing mod-proxy-ajp mod-balancer
  • 7 个回答
  • 43522 Views
Martin Hope
Jesus
Asked: 2010-01-29 14:25:22 +0800 CST

通过 apache mod_proxy 和 ajp 在 jboss 5 中 https root webapp

  • 0

我在我的服务器中安装了 apache 2.2.3 和 jboss 5.1,在 apache 中我在 php+mysql 中有 2 个应用程序,在 jboss 中我在根应用程序 (/) liferay 门户中有。我使用 mod_proxy 来访问 jboss 应用程序:

<VirtualHost server_ip:80>
ServerName intranet.mycompany.com
ProxyPreserveHost On
ProxyPass / balancer://jbosscluster/
ProxyPassReverse / http://server_ip:8080
</VirtualHost>

但现在我必须仅在 intranet.mycompany.com 中启用 https,而且我不知道在 apache、jboss 中配置 ssl 的位置。我尝试在 server.xml 中的 jboss 中使用 keytool 生成自签名证书,但 apache 没有转发到https://server_ip:8443

我会感谢你的帮助。

apache-2.2 jboss https mod-proxy-ajp
  • 2 个回答
  • 2483 Views
Martin Hope
danb
Asked: 2009-05-21 12:13:41 +0800 CST

增加 mod_proxy_ajp 连接的超时

  • 7

我让我的 apache (2.2.3) 通过 mod_proxy_ajp 与 tomcat 6.something 交谈。

我有一些可笑的长期请求(2-6 分钟),我认为我们在某个地方遇到了一些默认超时……哪里是正确的地方?

这是我的代理定义:

<Location /blah>
  ProxyPass ajp://localhost:8010/blah
  ProxyPassReverse ajp://localhost:8010/blah
</Location>
tomcat apache-2.2 proxy ajp mod-proxy-ajp
  • 2 个回答
  • 20584 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve