我有一台只有一个 IP 地址但有很多域(和子域)的服务器,但每个域在我的主机服务器上都有专用的虚拟机。
我尝试将 mod_proxy 用于 ProxyPass 和 Reverse 请求,并且在 apache conf 中我做到了:
<VirtualHost *:80>
ServerAlias mydomain.domain.com
ProxyRequests Off
<Proxy />
Order deny,allow
Allow from all
ProxyPass http://192.168.1.8/
ProxyPassReverse http://192.168.1.8/
</Proxy>
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
ErrorLog ${APACHE_LOG_DIR}/error.log
</VirtualHost>
<VirtualHost *:80>
ProxyRequests Off
ServerAlias domain.domain2.org
ServerAlias subdomanin.domain.com
DocumentRoot /var/www
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
ErrorLog ${APACHE_LOG_DIR}/error.log
</VirtualHost>
在这个conf中:
domain.domain1.com -> go to 192.168.1.8
subdomanin.domain1.com and another domain -> go to document root.
使用 ProxyRequests On 和“Allow from All”(此 conf),apache 是一个 openproxy ...使用此配置(和 ProxyRequest Off),如果有人使用代理 mydomain.domain.com 请求“www.google.it”,他不会没有谷歌,但服务器将其重定向到 myNumericIp
如果http://mydomain.domain.com/some请求使用 url http://my.Numeric.Ip/some otherwise 代理不响应任何内容重定向到 myNumericIp,那么正确的配置是什么)。
我试试这个:
<Proxy http://mydomain.domain.com/>
Order deny,allow
Allow from all
ProxyPass http://192.168.1.8/
ProxyPassReverse http://192.168.1.8/
</Proxy>
或这个:
<Proxy />
Order deny,allow
Allow from all
ProxyPass http://192.168.1.8/
ProxyPassReverse http://192.168.1.8/
</Proxy>
<Proxy *>
Order deny,allow
Deny from all
</Proxy>
但是不要工作...