我在 Linux 上安装了 Apache,上面有 owncloud,我想用owncloud.domain并不是域名/owncloud。例如从 apache.local/owncloud 到 owncloud.apache.local 我有 IP 为 192.168.0.103 的 apache 和 192.168.0.106 的代理。这是我的代理配置
<VirtualHost *:80>
ServerName http://apache.hcentos.local/
ServerAlias apache.hcentos.local
ProxyRequests Off
#drupal
ProxyPass /drupal http://192.168.0.103:80/drupal
ProxyPassReverse /drupal http://192.168.0.103:80/drupal
#owncloud
ProxyPass /owncloud http://apache.hcentos.local:80/owncloud
ProxyPassReverse /owncloud http://apache.hcentos.local:80/owncloud
</VirtualHost>
我想编写 owncloud.apache.hcentos.local 并获取 owncloud。drupal 也一样。请帮忙。
答案1
您应该将所需的配置放在VirtualHost
指令里面,其中该ServerName
指令配置了所需的主机名:owncloud.domain
。
Drupal 也应该有自己的特色VirtualHost
。
在每个命令中,配置您的ProxyPass
指令以指向正确的服务器/路径。您还应该添加ProxyPassReverse
。
Apache 文档中的示例记录了所有这些内容:
Apache 文档中包含反向代理的示例:https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html
Apache VirtualHosts 文档:https://httpd.apache.org/docs/2.4/vhosts/