微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Tomcat的Apache代理AJP给出404

如何解决Tomcat的Apache代理AJP给出404

我想使用Apache代理来访问由Tomcat 9交付的基于Java的API(servlet)。但是我只能使用404

Tomcat正在运行,我在http://myappname.localhost:8080/api/test下得到了想要的东西。

但是404的{​​{1}}

进一步的 Tomcat 9.0.39配置

server.xml:
http://myappname.localhost/myappname-app/api/test/

我在Eclipse中使用以下日志启动它:

 <Connector address="0.0.0.0" port="8009" protocol="AJP/1.3" redirectPort="8443" secret="null"/>
# ...
<Engine defaultHost="localhost" name="Catalina">
从Eclipse服务器配置

enter image description here

enter image description here

Apache正在运行,我在Nov 10,2020 12:37:38 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["ajp-nio-0.0.0.0-8009"] Nov 10,2020 12:37:42 PM org.apache.coyote.AbstractProtocol start INFO: Starting ProtocolHandler ["ajp-nio-0.0.0.0-8009"] 下得到了静态前端文件

更多 Apache 2.4.41配置

api.conf
http://myappname.localhost/myappname-app/

在这里两个问题

  1. 我需要像<VirtualHost myappname.localhost:80> ServerName myappname.localhost #ProxyRequests Off #ProxyPass /myappname-app/api ajp://127.0.0.1:8009/api/ #ProxyPassReverse /myappname-app/api ajp://127.0.0.1:8009/api/ LogLevel debug # Settings for adding a trailing slash to the URL RewriteEngine On RewriteCond %{REQUEST_URI} ^/(portal)$ RewriteRule ^(.*)$ http://%{HTTP_HOST}$1/ [R=301,L] # Settings for Apache Reverse Proxying <IfModule mod_proxy.c> # Proxy specific settings ProxyRequests Off ProxyPreserveHost On <Proxy *> AddDefaultCharset off Order deny,allow Allow from all </Proxy> ProxyPass /myappname-app/api ajp://127.0.0.1:8009/api/ ProxyPassReverse /myappname-app/api ajp://127.0.0.1:8009/api/ </IfModule> </VirtualHost> 这样的东西吗?或者这不适合我的目的(它将路径用作绝对路径吗?)?
  2. JkMount /myappname-app/api ajp13指令中使用ServerName myappname.localhost 127.0.0.1 有什么问题吗?
摘自/etc/libapache2-mod-jk/workers.properties:
ProxyPass
apachectl -M包含
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
#
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
#  ----> lbfactor must be > 0
#  ----> Low lbfactor means less work done by the worker.
worker.ajp13_worker.lbfactor=1

我不确定whether I am using mod_jkor mod_proxy_ajp,但我想它是 libapache2-mod-jk 中的那个。

我试图

jk_module (shared)

在虚拟主机的配置文件中,而提示

Include /etc/apache2/mods-available/proxy_ajp.load

但这没有任何改变。

/var/log/apache2/mod_jk.log只是说
LoadModule proxy_ajp_module /usr/lib/apache2/modules/mod_proxy_ajp.so

但是我不知道这是否适合

Tue Nov 10 13:42:02.219 2020] [16136:139701289012288] [info] init_jk::mod_jk.c (3591): mod_jk/1.2.46 initialized

任何人(其他)都知道我在这里做错了吗?

这些答案并没有太大帮助:firstsecondthird (a really useful one)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。