繁体   English   中英

Apache将ServerAlias重定向到ServerName

[英]Apache redirect ServerAlias to ServerName

我通过“加密”安装了SSL证书。 除了我的域的某些变化之外,一切都很好,我从浏览器中收到一条消息,提示“您的连接不是私有的”。 我认为这是因为我仅将流量重定向到该URL的https版本,而不是重定向到我的规范URL(ServerName)。

这是我的apache文件的设置。 在端口80上,有一些重定向将流量转发到端口443。

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAlias dev.example.com

    [... some other stuff... ]

    RewriteEngine On
    CustomLog /var/log/apache2/serviam2/access.log combined
    RewriteCond %{SERVER_NAME} =example.com [OR]
    RewriteCond %{SERVER_NAME} =www.example.com [OR]
    RewriteCond %{SERVER_NAME} =dev.example.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

这是重要的部分:所有流量都重定向到443版本(这很好),但是我还希望所有ServerAlias都重定向到ServerName。

所以... http://dev.example.com应该重定向到https://example.com

另外, https://dev.example.com应该重定向到https://example.com

我不是apache功夫高手,并且正在通过修改当前设置来使其适应要求。

您需要将RewriteRule %{SERVER_NAME}更改为目标域,例如:

RewriteRule ^ https://example.com%{REQUEST_URI} [END,NE,R=permanent]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM