我想创建一个301从一个页面到同一页面,除了目标页面在url中有一个参数。浏览器显示一个错误(太多重定向),所以它似乎有一个无限循环。这是我的代码:.htaccess - 301重定向如果没有查询字符串
RewriteEngine on
Redirect 301 /index.php http://www.monsite.com/index.php?step=1
感谢指点我为:d
我想创建一个301从一个页面到同一页面,除了目标页面在url中有一个参数。浏览器显示一个错误(太多重定向),所以它似乎有一个无限循环。这是我的代码:.htaccess - 301重定向如果没有查询字符串
RewriteEngine on
Redirect 301 /index.php http://www.monsite.com/index.php?step=1
感谢指点我为:d
你需要条件化重定向并做它在PHP防止无限重定向循环。
的index.php:
if(!isset($_GET['step'])){
header('Location:http://www.monsite.com/index.php?step=1');
}
您有它配置将无限期地重定向,因为没有什么话说到发动机的方式“不尽快URL变步设置重定向我。”
有一些方法可以在.htaccess文件中做到这一点,但由于这些类型的重定向通常是应用程序逻辑,因此在脚本中直接执行它似乎更有意义。
或者,对于纯的.htaccess解决方案:
#if query string is empty
RewriteCond %{QUERY_STRING} ^$
#match on/for root, or .index.php in request and send to query string version
RewriteRule ^(/|index.php)?$ /index.php?step=1 [R=301,L]
嗨,我想只使用htaccess ...感谢您的帮助 – JojoLapin45
@ JojoLapin45编辑 – DeaconDesperado
非常感谢你,它的作品就像一个魅力:) – JojoLapin45
请尝试和接受一些较旧的问题的答案......你的接受度是20%,而从帮助您阻止他人。 – DeaconDesperado