【发布时间】:2018-04-02 01:16:38
【问题描述】:
所以我有一个配置文件来说明这一点
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ServerName www.aaaaaaaa.yyyyyyyyy.co.uk
ServerAlias aaaaaaa.yyyyyyy.co.uk
ProxyPass / http://localhost:5000/
ProxyPassReverse / http://localhost:5000/
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.aaaaaaa.yyyyyyyyy.co.uk [OR]
RewriteCond %{SERVER_NAME} =aaaaaa.yyyyyyyyy.co.uk
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ServerName www.xxxxxx.yyyyyyyy.co.uk
ServerAlias xxxxxxx.yyyyyyyyy.co.uk
ProxyPass / http://localhost:8989/
ProxyPassReverse / http://localhost:8989/
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.xxxxxxxxxxx.yyyyyyyy.co.uk [OR]
RewriteCond %{SERVER_NAME} =xxxxxx.yyyyyyyyyy.co.uk
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
当访问 aaaaaaa.yyyyyyyyy.co.uk 时,它会重定向到 https,这是所需的效果并启动正确的应用程序。
但是,当我访问 xxxxx.yyyyyyy.co.uk 时,它会显示正确的应用程序,但不会重定向到 https,当我实际键入 https://xxxx.yyyyyy.co.uk 时,它会将我重定向到与 aaaaaaa.yyyyyyyyy.co.uk 相同的应用程序。
我怎样才能做到这一点!
【问题讨论】:
-
如果你使用
%{HTTP_HOST}而不是%{SERVER_NAME}会有什么变化吗? -
完全没有变化
标签: apache web mod-proxy proxypass