Wordpress 404错误的301重定向

Wordpress 404错误的301重定向,wordpress,.htaccess,mod-rewrite,redirect,Wordpress,.htaccess,Mod Rewrite,Redirect,我的Wordpress安装中有404错误警报: 我正试图用你的方式解决这个问题 RewriteCond %{HTTP_HOST} http://example.org/^/example.org(.*) [NC] RewriteRule ^(.*) http://example.org/$1 [L,R=301] 我想去掉最后一个“example.org”,所以301重定向到 但它不起作用,我做错什么了吗 先谢谢你 更新: 我试图复制规则以应对另一个案例,我在与阿努巴瓦先生的评论部分走得

我的Wordpress安装中有404错误警报:

我正试图用你的方式解决这个问题

RewriteCond %{HTTP_HOST} http://example.org/^/example.org(.*)  [NC]
RewriteRule ^(.*) http://example.org/$1 [L,R=301]
我想去掉最后一个“example.org”,所以301重定向到

但它不起作用,我做错什么了吗

先谢谢你


更新: 我试图复制规则以应对另一个案例,我在与阿努巴瓦先生的评论部分走得太远了,以下是我试图做的:

如果请求URL看起来像example.com/[page]/example.com,则应将其重定向到example.com/[page]/

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^([^/]+)/example\.com /$1/ [NC,L,R=301]
RewriteRule ^([^/]+)/(example\.com\.mx)/?$ http://$2/$1/ [NC,L,R=301]
此规则工作正常,但在另一种情况下,如果请求的URL是example.com/[page]/example.com.mx,则重定向应转到example.com.mx/[page]/

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^([^/]+)/example\.com /$1/ [NC,L,R=301]
RewriteRule ^([^/]+)/(example\.com\.mx)/?$ http://$2/$1/ [NC,L,R=301]

看起来这条规则应该行得通,但实际上不行。有什么线索吗?

您可以将此规则用作第一条规则:

RewriteCond %{HTTP_HOST} ^example\.org$  [NC]
RewriteRule ^([^/]+)/example\.org/?$ /$1/ [NC,L,R=301]

您可以将此规则用作第一条规则:

RewriteCond %{HTTP_HOST} ^example\.org$  [NC]
RewriteRule ^([^/]+)/example\.org/?$ /$1/ [NC,L,R=301]

http_主机只包含主机名。它没有url的其余部分。您需要测试
%{REQUEST\u URI}^example.org
或其他东西。http\u主机只包含主机名。它没有url的其余部分。你需要测试一下
%{REQUEST_URI}^example.org
之类的东西。非常感谢你,我现在明白我做错了什么。嘿,阿努巴瓦,我正试图让这项工作也像这样:RewriteCond%{HTTP_HOST}^example\.com\.mx$[NC]RewriteRule^([^/]+)/example\.com\.mx/?$/$1/[NC,L,R=301]成为{HTTP_HOST}example.com,我想将example.com.mx重定向到example.com.mx/page/它不起作用。当URL类似时,我尝试重定向到而不是。您给我的解决方案适用于第一种情况,但这种情况也会发生,我想我可以用第一种解决方案来解决第二种情况。我没有充分解释自己:当请求的url为example.com/page/example.com时,我需要将其重定向到example.com/page/。这完全是你的规则,谢谢。但是当请求的url是example.com/page/example.com.mx时,我需要将其重定向到example.com.mx/page/而不是。好的,然后添加一个新规则:
RewriteRule^([^/]+)/(example\.com\.mx)/?$http://$2/$1/[NC,L,R=301]
非常感谢,我现在明白我做错了什么。嘿,阿努巴瓦,我也在尝试这样做:RewriteCond%{HTTP_HOST}^ example\.com\.mx$[NC]RewriteRule^([^/]+)/example\.com\.mx/?$/$1/[NC,L,R=301]作为{HTTP_HOST}example.com,我想将example.com.mx重定向到example.com.mx/page/它不起作用。当URL像我尝试重定向到而不是。您给我的解决方案适用于第一种情况,但这种情况也会发生,我想我可以用第一种解决方案来解决第二种情况。我没有充分解释自己:当请求的url为example.com/page/example.com时,我需要将其重定向到example.com/page/。这完全是你的规则,谢谢。但是当请求的url为example.com/page/example.com.mx时,我需要将其重定向到example.com.mx/page/而不是。确定然后添加一个新规则:
RewriteRule^([^/]+)/(example\.com\.mx)/?$http://$2/$1/[NC,L,R=301]