【发布时间】:2017-08-04 13:17:08
【问题描述】:
非 www 重定向到 www 并强制 https,仅在 http://www.example.com 上返回 302 temporary redirect。
根据协议和主机名查看下面的Status Codes - 测试我的网站http://www.mypetcerts.com
- https://www.example.com -> 200
- https://example.com -> 301 - https://www.example.com
- http://example.com -> 301 -> https://www.example.com
- http://www.example.com -> 302 -> https://www.example.com
example.conf
<VirtualHost *:80>
ServerName www.example.com
# server config
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
RedirectMatch permanent ^/?(.*) https://www.mypetcerts.com/$1
</VirtualHost>
我想这是因为我在没有 https 重定向的情况下点击了上面的 VirtualHost 1,因为规范名称是正确的,并且不需要在 ServerName example.com 上点击 VirtualHost 2。有人对这种风格设置有答案吗?我也在 Amazon ELB 上运行。
注意:这是 Apache2.2 我不能利用 Apache2.4 IF 指令 :(
我认为可以先重定向到 www,然后再重定向到 https,但据我了解,执行多重重定向(例如先到 www,然后再到 https)对 SEO 来说不是很好。
我需要所有可能的结果才能使用单个 301 permanent redirect 转到 https://www.example.com。
【问题讨论】:
标签: apache virtualhost http-redirect amazon-elb apache2.2