0

我需要一些关于 .htaccess 文件和 mod_rewrite 的帮助。

现在我已经为我的 SMS 支付提供商提供了一个脚本,它根据您解析给它的变量执行不同的任务。问题是,该脚本被称为:

http://examp.le/path/script.php&param1=x&param2=whatever&param3=823

等等。如您所知,这是错误的。第一个字符应该是查询标记,而不是和号。所以我需要编写一个重写规则来用一个查询标记替换第一次出现的&符号。我从来不擅长正则表达式或一般的htaccess。

但。如果您正在回答,请解释哪些角色在世界上做什么以及它是如何工作的。先感谢您。

4

1 回答 1

0

通过启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On

RewriteCond %{THE_REQUEST} \s/(script\.php)&(param1=[^\s]+) [NC]
RewriteRule ^ /%1?%2 [R=302,L]

确认它工作正常后,替换R=302R=301. R=301在测试你的 mod_rewrite 规则时避免使用(永久重定向)。

于 2013-08-07T15:24:30.910 回答