tdb*_*i22 5 proxy virtualhost apache-2.2
我有 2 个 web Debian 服务器,一个接受来自端口 80 的请求的前端和一个通过前端代理的后端。
我想要做的是将许多不同的 URL 发送到带有虚拟主机的后端服务器。
这是前端 Apache 设置
<VirtualHost *:80>
ServerName dev.example.com
ProxyPass / http://192.168.144.100:80/
ProxyPassReverse / http://192.168.144.100:80/
</VirtualHost>
<VirtualHost *:80>
ServerName sandbox.example.com
ProxyPass / http://192.168.144.100:80/
ProxyPassReverse / http://192.168.144.100:80/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
这是后端 Apache 设置
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName dev.example.com
DocumentRoot /var/www/example.com/dev/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/example.com/dev/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName sandbox.example.com
DocumentRoot /var/www/example.com/sandbox/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/example.com/sandbox/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
当我转到 dev.example.com 或 sandbox.example.com 时,它会将我带到默认的 /var/www 文件。
基本上,我希望能够在后端服务器上运行多个虚拟主机。
谢谢你的帮助。
小智 7
像这样修改你的前端设置怎么样?并且您不需要在后端设置虚拟主机。
<VirtualHost *:80>
ServerName dev.example.com
ProxyPass / http://192.168.144.100:80/
ProxyPassReverse / http://192.168.144.100:80/
</VirtualHost>
<VirtualHost *:80>
ServerName sandbox.example.com
ProxyPass / http://192.168.144.100:80/example.com/dev/
ProxyPassReverse / http://192.168.144.100:80/example.com/dev/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)