在使用AJP代理Tomcat时,我在为Windows计算机创建子域时遇到问题。这就是我在httpd.conf文件中的内容:
<VirtualHost *:80>
ServerName subdomain.localhost
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / ajp://localhost:8009/folder/
ProxyPassReverse / ajp://localhost:8009/folder/
<Location />
Order allow,deny
Allow from all
</Location>
</VirtualHost>
子域名已添加到`c:\ windows \ system32 \ drivers \ etc \ hosts
127.0.0.1 localhost
127.0.0.1 subdomain.localhost
当我去http://localhost
时,我直接进入代理。当我去http://subdomain.localhost
时,我也去了代理。我如何制作,所以子域只去代理,常规去Apache?
答案 0 :(得分:1)
您需要使用localhost声明第二个VirtualHost作为ServerName。
答案 1 :(得分:0)
这可能应该移到superuser.com,但有一件事要尝试:
<VirtualHost *:80
&GT;通知它接受端口80上的所有传入连接以使用这些设置。我会尝试改变它来说:
<VirtualHost subdomain.localhost:80>
并查看在使用子域时是否仅应用这些设置。
与子域一起放置的ServerName标记不会告诉它要监听的对象。官方文件说明:
ServerName指令设置 服务器使用的主机名和端口 识别自己。这是在使用时使用的 创建重定向URL。对于 例如,如果机器的名称 托管Web服务器是 simple.example.com,但机器 还有DNS别名www.example.com 并且您希望Web服务器如此 确定,以下指令 应该使用:
您可以阅读有关这些配置的更多信息here。