怎么做 "Two 301 Redirects to One 301 Redirect" Wordpress

How to do "Two 301 Redirects to One 301 Redirect" Wordpress

我需要在 Wordpress 站点上进行一次 301 重定向而不是两次

我需要https://www.example.com/sports/test/index.php -> https://www.example.com/sports/test

我有两次 301 重定向 https://www.example.com/sports/test/index.php -> https://www.example.com/sports/test/ -> https://www.example.com/sports/test

我在 Wordpress 上有一个结构为 http://www.example.com then i bougth ssl-sertificate and my structure now https://www.example.com
的网站 设置:
1) 永久链接 -> 自定义结构 https://www.example.com/%category%/%postname%/
2) 类别前缀 -> . (只是点)
3) .htacess(使用 Wordpress 原始 url 规则)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

#use many recomendation
#-------like this
#RewriteCond %{HTTP_HOST} ^example\.com [NC]
#RewriteRule ^(.*)$ https://www.example.com/ [L,R=301]
#-------end like this

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

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

# END WordPress

一切正常,但有两次 301 重定向或多次循环重定向,我需要在 WP 站点上重定向一次。谢谢你帮助我)

尝试更改永久链接结构并重新保存。

如果 .htaccess 是 wordpress 默认的,你应该没有问题。

对于 https,我使用这个插件 https://it.wordpress.org/plugins/really-simple-ssl/ 使用起来非常简单且高效。

告诉我

RewriteEngine On 之后和 RewriteBase / 之前添加以下行:

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{THE_REQUEST} " /(index\.php|([^?]*)/index\.php)"
RewriteRule ^ https://www.example.com/%2 [R=301,L,NE]

对我来说很好用