Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 重写规则-如何从错误地址重定向到正确地址_Php_.htaccess_Mod Rewrite - Fatal编程技术网

Php 重写规则-如何从错误地址重定向到正确地址

Php 重写规则-如何从错误地址重定向到正确地址,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,我需要重定向这样的链接: www.website.com/index.phpsite=transport(这是一个错误的链接,添加到许多页面目录等中,从该链接重定向到正确的链接非常重要) 对于这一点(显而易见): www.website.com/index.php?site=transport 所有这些都是关于地址中丢失的“?”的。 所以我想使用.htaccess和RewriteRule,但不知道如何使用 你能帮我吗?如何编写用工作链接替换错误链接的规则 提前感谢,, Konrad.以下内容应该

我需要重定向这样的链接:

www.website.com/index.phpsite=transport(这是一个错误的链接,添加到许多页面目录等中,从该链接重定向到正确的链接非常重要)

对于这一点(显而易见): www.website.com/index.php?site=transport

所有这些都是关于地址中丢失的“?”的。 所以我想使用.htaccess和RewriteRule,但不知道如何使用

你能帮我吗?如何编写用工作链接替换错误链接的规则

提前感谢,,
Konrad.

以下内容应该适合您(尽管很遗憾,我没有时间完全测试代码):

我在结尾使用了
*
通配符,因为我不确定在需要重定向的某些URL中是否可以有更多的URL参数


所有这些行为都记录在中。

如果您使用的是Apache服务器,请在htaccess文件中编写重定向规则

重写规则URL1 URL2[R=301,L,NC]


既然成功了,我的回答是:

RewriteRule ^index.phpsite=transport$ /index.php?site=transport [L]

试试重写规则^index.phpsite=transport$/index.php?site=transport[L]@dierre谢谢,效果很好!您的解决方案会引发500个错误。不知道为什么。@KonradKolasa谢谢你让我知道。现在已经修好了。我不小心输入了
*。
,而不是
*
@KonradKolasa的正确语法。当你有机会时,请将此标记为答案。有关更多信息,请参阅:
RewriteRule ^index.phpsite=transport$ /index.php?site=transport [L]