我目前有一个子域代理和子文件夹代理作为单独的虚拟主机工作。
我想通过合并来最小化/简化代码。
我的最终目标是让子域指向不同的物理/虚拟服务器,同时使用子文件夹访问该服务器中的不同服务。
例如:
www.example.com = Server 0 Apache
www.example.com/webmin = Server 0 Webmin
server1.example.com = Server 1 Apache
server1.example.com/webmin = Server 1 Webmin
server1.example.com/ad = Server 1 Active Directory UI
server2.example.com = Server 2 Apache
server2.example.com/webmin = Server 2 Webmin
server2.example.com/ad = Server 2 Active Directory UI
我有以下作为单独的虚拟主机工作:
#NAS as nas.example.com
ProxyPass / http://10.0.28.1:5000/
ProxyPassReverse / http://10.0.28.1:5000/
#Webmin as nas.example.com/webmin
ProxyPass /webmin/ http://10.0.28.1:10000/
ProxyPassReverse /webmin/ http://10.0.28.1:10000/
我猜第一个条目会覆盖第二个条目,因为第一个条目是 /。我似乎无法弄清楚如何覆盖并让两个 ReverseProxies 在同一个
答案1
刚刚尝试重新排序但仍然不起作用。
<VirtualHost *:443>
# NAS
ServerName nas.example.com
ServerAdmin [email protected]
DocumentRoot /mnt/WWW
ProxyPass /webmin/ http://10.0.27.1:10000/
ProxyPassReverse /webmin/ http://10.0.27.1:10000/
ProxyPass / http://10.0.27.1:5000/
ProxyPassReverse / http://10.0.27.1:5000/
# SSL Certificates
SSLEngine on
SSLCertificateFile /root/ssl/example.com.crt
SSLCertificateKeyFile /root/ssl/private.key
SSLCACertificateFile /root/ssl/intermediateCA.crt
# Error Logs
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
以上是到另一台服务器 (NAS) 的反向代理。nas.example.com 应该是 NAS 的默认 GUI,而 nas.example.com/webmin 应该指向同一台服务器 (NAS) 上的 Webmin。所发生的情况是 /webmin 从 NAS GUI 返回一个页面,提示找不到该页面。