WordPress所有页面的301重定向

问题描述 投票:0回答:1

我有一个WordPress网站,我想强制所有的网页都转到https和非www。

所以我想要以下的重定向。

http:/example.com --> https:/example.com www.example.com --> https:/example.com http:/example.comabcd --> https:/example.comabcd www.example.comabcd --> https:/example.comabcd

在我的.htaccess文件中,我有以下代码

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteEngine On
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\. [NC]
    RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
    RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]

    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress


问题是它只正确地重定向了主页,对于内页,我得到一个Page not FoundSite cannot be reached的错误。

wordpress apache
1个回答
1
投票

试试这个。

RewriteCond %{HTTP_HOST} ^(www\.)(.+) [OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)
RewriteRule ^ https://%2%{REQUEST_URI} [R=301,L]
© www.soinside.com 2019 - 2024. All rights reserved.