当我尝试反向代理时,不太确定发生了什么,但我一直收到错误 500。我启用了 mod_proxy 和 mod_proxy_html,并且我的反向代理的 conf 文件如下所示:
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /panel http://mydomain.com:8005/
ProxyPassReverse /panel http://mydomain.com:8005/
我几乎尝试了所有方法,比如用斜线和不用斜线来写反向文字。当我
tail /var/log/apache2/error.log
[Tue Dec 06 12:58:00 2011] [warn] RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Tue Dec 06 12:58:00 2011] [notice] suEXEC mechanism enabled (wrapper: /usr/lib/apache2/suexec)
[Tue Dec 06 12:58:00 2011] [notice] Digest: generating secret for digest authentication ...
[Tue Dec 06 12:58:00 2011] [notice] Digest: done
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/ming.ini on line 1 in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/sqlite.so' - /usr/lib/php5/20090626+lfs/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0
[Tue Dec 06 12:58:00 2011] [notice] mod_python: Creating 8 session mutexes based on 150 max processes and 0 max threads.
[Tue Dec 06 12:58:00 2011] [notice] mod_python: using mutex_directory /tmp
[Tue Dec 06 12:58:00 2011] [warn] RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Tue Dec 06 12:58:00 2011] [notice] Apache/2.2.20 (Ubuntu) DAV/2 mod_fcgid/2.3.6 Phusion_Passenger/2.2.11 PHP/5.3.6-13ubuntu3.2 with Suhosin-Patch proxy_html/3.0.1 mod_python/3.3.1 Python/2.7.2+ mod_ruby/1.2.6 Ruby/1.8.7(2011-06-30) mod_ssl/2.2.20 OpenSSL/1.0.0e configured -- resuming normal operations
答案1
确保mod_proxy
并mod_proxy_http
已加载。
答案2
在反向代理中,ProxyRequests
应设置为关闭。请参阅mod_proxy 文档。
答案3
有几种可能性:
我知道这听起来很简单但这可能是 DNS 问题。
mydomain.com 可以通过代理解析吗?
从代理 ping mydomain.com。它解析到哪个 IP,并且该 IP 地址上的端口 8005 是否打开。
在调试时,我通常会尽可能使用 IP 来消除 DNS。
另外,请尝试关闭 ProxyPreserveHost。我不熟悉您的后端服务器,但如果 Host: 与配置使用的 IP 域不匹配,它可能不会响应。