![Apache2 mod_proxy_ajp 与 Tomcat 导致 500 内部服务器错误](https://linux22.com/image/679828/Apache2%20mod_proxy_ajp%20%E4%B8%8E%20Tomcat%20%E5%AF%BC%E8%87%B4%20500%20%E5%86%85%E9%83%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%94%99%E8%AF%AF.png)
我目前正在部署运行 Ubuntu 14.04 的云服务器实例。我已经安装了 LAMP Stack 以及 Tomcat 7 服务器。我想从此服务器运行基于 Java 的应用程序,因此发送到我的服务器(即 www.example.com/app)的任何请求都应加载我的应用程序。
但是,现在已经过去 10 个小时了,我仍然收到 500 内部服务器错误。位于 /etc/apache2/sites-available/000-default.conf 中的默认虚拟主机文件是:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin user@postmaster
DocumentRoot /var/www/html
<Proxy *>
Require all granted
AddDefaultCharset Off
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass /app ajp://localhost:8009/app/
ProxyPassReverse /app ajp://localhost:8009/app/
ErrorLog /var/log/apache2/ajp.error.log
CustomLog /var/log/apache2/ajp.log combined
</VirtualHost>
当我直接访问 example.com:8080 上的应用程序时,它显示正常。我遗漏了什么吗?我读了很多关于必须启用代理和 proxy_http 的内容,我可以确认它们都已加载。我遗漏了什么吗?可能是权限问题吗?
我希望这对您有所帮助,我是从二进制文件安装 Tomcat 的,而不是使用 aptitude。我觉得这样更容易管理。
我是 Linux 服务器管理的新手,非常感谢大家的帮助。谢谢!
答案1
删除 2 条代理线路并尝试
<Location /app>
ProxyPass ajp://localhost:8009/app
ProxyPassReverse ajp://localhost:8009/app
</Location>
您的 Apache 日志中是否有任何内容可以提供帮助?