Wordpress htaccess如何将404重定向到变量url而不引起无限循环?
我有一个站点,当它在url的第一个相对路径上出现404错误时,我希望它立即重定向到与用户键入内容相关的路径 例如,输入是:site.com/input 我希望此第一级url字符串重定向到:site.com/m/input 我正在尝试类似的方法,它可以工作,但会导致无限循环:Wordpress htaccess如何将404重定向到变量url而不引起无限循环?,wordpress,.htaccess,mod-rewrite,Wordpress,.htaccess,Mod Rewrite,我有一个站点,当它在url的第一个相对路径上出现404错误时,我希望它立即重定向到与用户键入内容相关的路径 例如,输入是:site.com/input 我希望此第一级url字符串重定向到:site.com/m/input 我正在尝试类似的方法,它可以工作,但会导致无限循环: RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # RewriteRule . /index.php [L] RewriteRu
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# RewriteRule . /index.php [L]
RewriteRule ^ http://www.website.com/m%{REQUEST_URI} [R,L]
因此,基本上,我希望它只触发一次,如果/m/{variable url}处的url不存在,那么我希望它降落到实际的404页面或wordpress default的重写规则上/index.php[L]
这可能吗?
非常感谢,,
Leon如果已经是
/m/
URL,则添加另一个不重定向的条件:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/m/
RewriteRule ^ http://www.website.com/m%{REQUEST_URI} [R,L]
这是工作重定向,但404页不再显示,也没有正确的页面。两者都是由服务器而不是模板指向404页面。RewriteBase/RewriteRule^index\.php$-[L]RewriteCond%{REQUEST_FILENAME}上的RewriteEngine-f RewriteCond%{REQUEST_FILENAME}-已重写cond%{REQUEST_URI}!m RewriteRule^(.*){REQUEST_URI}[L,R=301]干杯,伙计,我在404.php页面上使用了另一个选项,看起来效果不错$url='http://'$_服务器['SERVER_NAME']$_服务器['REQUEST_URI'];if(false!==strpos($url,“/m/”){}else{header(“HTTP/1.1 301永久移动”);header(“位置:);}