内网APACHE配置反向代理到另外一台服务器的相关问题

kelove 2016-11-12 1060

本帖最后由 kelove 于 2016-11-12 19:09 编辑

两个服务器都在内网,路由有一个公网IP,通过80端口映射到服务器A(192.168.0.2)
服务器A上APACHE配置为:
<VirtualHost *:80>
 ServerName a.com
 ProxyPass / http://192.168.0.3/
 ProxyPassReverse / http://192.168.0.3/
 </VirtualHost>
 <VirtualHost *:80>
 ServerName b.com
 ProxyPass / http://192.168.0.3/
 ProxyPassReverse / http://192.168.0.3/ 
</VirtualHost>
在服务器B(appnode-192.168.0.3)上配置nginx,监听80口和a.com,b.com两个域名
server {
    listen       192.168.0.3:80;
    server_name  a.com;
    root         /var/www/a.com;
    index        index.html index.htm index.php;
  }

server {
    listen       192.168.0.3:80;
    server_name  b.com;
    root         /var/www/b.com;
    index        index.html index.htm index.php;
  }

结果两个域名访问都指向一个首页(两个站点的首页应该是不同的),不知道为什么?

最新回复 (2)
  • 虚竹 2016-11-12
    引用 2
    你查看下apache的反向代理资料,是否有传递Host头的相关选项。
    如果没有传递Host,反代到后端时相当于是以IP地址打开的,默认就是打开第一个站点。
  • kelove 2016-12-8
    引用 3
    感谢,是Host的问题·~~嘿嘿~~
返回
发新帖