我有一台使用 nginx 作为反向代理的 raspberrypi,还有另一台机器使用 nginx(用于 owncloud)和 apache(phpbb)。
重定向到 nginx 有效,但重定向到 apache 无效,而是将我重定向到 owncloud。我认为 apache 不“响应” nginx 代理是有原因的,因此 nginx 代理使用按字母顺序排列的第一个 vhost。这不是防火墙问题,我已经使用 nmap 检查了端口。我也可以直接使用 local_ip:8080 访问 apache,它正常工作。
-
nginx 代理的 vhost:
owncloud:http://pastebin.com/G6Q6fiKz
phpbb:http://pastebin.com/Keb5t4gt
-
阿帕奇:phpbb虚拟主机:
<VirtualHost *:8080>
#ServerName forum.spooky4672.me
DocumentRoot /var/www/phpbb
ErrorLog ${APACHE_LOG_DIR}/forum_error.log
CustomLog ${APACHE_LOG_DIR}/forum_access.log combined
</VirtualHost>
答案1
简短的回答是:基于名称的虚拟主机不适用于 SSL。因为 SSL 连接是在客户端开始与服务器讨论“名称”之前协商的。
面向 Internet 的 nginx 代理的选项包括:
- 为每个安全服务器使用不同的 IP 地址
- 为每个安全服务器使用不同的端口
- 使用一个服务器名称,但将服务划分到不同的位置
- 有一种东西叫信噪比,但我还没有尝试过