RewriteRule指向域名parsing为127.0.0.1

我试图在Apache中设置代理,如下所示:

<VirtualHost *:80> ServerName test.public.domain ... RewriteRule "^/dir/(.*)" "http://x-service.local/$1" [P,L] ... 

在同一台服务器上还有另一个虚拟主机configuration:

 <VirtualHost *:80> ServerName x-service.local ... 

在Apache服务器上的/etc/hosts我有以下条目:

 x-service.local 127.0.0.1 

当我从我的工作站curl test.public.domain/dir/xxx我得到5xx代码。

当我从服务器本身curl x-service.local/xxx ,我得到了200个代码。

当我改变

 x-service.local 127.0.0.1 

 x-service.local 192.168.1.1 

curl test.public.domain/dir/xxx工作正常。 192.168.1.1是服务器接口的IP地址。

  • apache听取0.0.0.0:80
  • 没有防火墙

看起来像代理到域parsing为回送接口由于某种原因不起作用。 我不明白为什么我想知道如何使它工作,因为这样的设置将简化我的configuration多个服务器。