希望你能帮助我这个,我有一个Apache服务器configuration为一些域的反向代理。 他们指向和IIS服务器,也有一些PHP网站作为虚拟主机在同一台机器。
对于反向代理我做到了这一点:
<VirtualHost *:80> ServerName reverseprox1 ServerAlias site1.domain.com ProxyRequests Off ProxyPass / http://site1.domain.com/ ProxyPassReverse / http://site1.iisserver.internald.com/ ProxyPassReverseCookieDomain site1.iisserver.internald.com site1.domain.com </VirtualHost> <VirtualHost *:80> ServerName reverseprox2 ServerAlias site2.domain.com ProxyRequests Off ProxyPass / http://site2.domain.com/ ProxyPassReverse / http://site2.iisserver.internald.com/ ProxyPassReverseCookieDomain site2.iisserver.internald.com site2.domain.com </VirtualHost> ...
工作正常,但现在我需要添加约20个testing网站(随机的名称,不只是site1,site2,site3等)指向iis服务器。 有没有办法让这个dynamic? IE它检测site2.domain.com的site2并将其指向site2.iisserver.internald.com。
我不能使用鱿鱼。
这是我的尝试,但迄今为止失败了
<VirtualHost *:80> ServerName default ServerAlias domain.com ProxyRequests Off RewriteEngine on RewriteCond %{HTTP_HOST} (.+)\.domain\.com ProxyPass / http://%1.domain.com/ ProxyPassReverse / http://%1.iisserver.internald.com/ ProxyPassReverseCookieDomain %1.iisserver.internald.com %1.domain.com </VirtualHost>
非常感谢您的帮助
有两个class轮有什么问题:
1-21的情况。
#!/bin/bash while [[ $(( $i < 21 )) != 0 ]]; do cat << EOF <VirtualHost *:80> ServerName reverseprox$i ServerAlias site$i.domain.com ProxyRequests Off ProxyPass / http://site$i.domain.com/ ProxyPassReverse / http://site$i.iisserver.internald.com/ ProxyPassReverseCookieDomain site$i.iisserver.internald.com site$i.domain.com </VirtualHost> EOF i=$(( $i + 1 )) done
任何事情 – 的情况。
它打印所有需要添加到您的conf文件的logging。
#!/bin/bash #Read a file, or query a db somewhere. for i in $(cat /path/to/namelist); do cat << EOF <VirtualHost *:80> ServerName reverseprox$i ServerAlias $i.domain.com ProxyRequests Off ProxyPass / http://$i.domain.com/ ProxyPassReverse / http://$i.iisserver.internald.com/ ProxyPassReverseCookieDomain $i.iisserver.internald.com $i.domain.com </VirtualHost> EOF done
我很确定你可以使用重写规则。
有关如何设置重写规则以使用mod_proxy的说明,请参阅http://httpd.apache.org/docs/current/rewrite/flags.html#flag_p 。