【问题标题】:redirect www URL to non www with https使用 https 将 www URL 重定向到非 www
【发布时间】:2018-07-14 14:22:27
【问题描述】:

如何使用 https 将所有 www 请求重定向到非 www?

例如所有以下 3 个网址:
http://www.example.com/about-us
http://example.com/about-us
https://www.example.com/about-us

应该重定向到https://example.com/about-us

我已尝试在
redirection issue in www to non www with ssl/https
发布的答案 和
.htaccess redirect www to non-www with SSL/HTTPS
但他们不工作。我目前的规则是

RewriteEngine On
RewriteCond %{SERVER_PORT} !=443 [OR]
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [R=301,L]

请指导。

【问题讨论】:

    标签: .htaccess ssl redirect https


    【解决方案1】:

    试试下面的代码“

    RewriteEngine On
    RewriteCond %{HTTPS} off [OR] 
    RewriteCond %{HTTP_HOST} ^www\. 
    RewriteRule ^(.*)$ https://example.com/$1 [L,NE,R=302]
    

    所以,上面的场景是通过这个条件RewriteCond %{HTTPS} off捕获所有有或没有wwwhttp,然后用这个条件RewriteCond %{HTTP_HOST} ^www\.捕获所有www,然后强制全部进入https://

    注意:清除浏览器缓存并对其进行测试,如果没问题,请将302 更改为301 以获得永久重定向。

    更新:

    在您的.htaccess 中转到这些行:

    # RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
    # RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
    

    像这样在没有# 的情况下制作它们:

    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
    RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
    

    然后直接进入最后一页的代码:

    RewriteEngine On
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\.
    RewriteRule ^(.*)$ https://phoddalo.com/$1 [L,NE,R=302]
    

    改成这样:

    RewriteCond %{HTTPS} off 
    RewriteRule ^(.*)$ https://phoddalo.com/$1 [L,NE,R=302]
    

    测试它并确保清除浏览器缓存。

    如果没问题,将302 更改为301,如上所述。

    【讨论】:

    • 我尝试了您的代码,现在所有非 ssl 页面都被重定向到 ssl 主页,即:'code' example.com/about-us 重定向到 example.com
    • 那么,你需要什么?我知道你想用 ssl 强制所有 www,对吗?
    • 是的,但不是打开特定页面,而是每次打开主页。例如,它不会打开关于我们、联系我们的页面,而是重定向到主页
    • 不好意思看不懂,多解释一下
    • 一些链接在网站中是硬编码的,它们有非 ssl url`s。单击它们而不是打开它们的 ssl 版本后,每次都会打开主页。例如,我现在有一个链接example.com/about-us,如果我点击它,那么example.com/about-us 应该会打开,但页面会被重定向到example.com(主页)
    猜你喜欢
    • 2012-02-06
    • 2016-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-22
    • 1970-01-01
    • 2021-12-03
    • 1970-01-01
    相关资源
    最近更新 更多