我需要一些.htaccess文件和mod_rewrite的帮助。
现在我的SMS支付提供程序有一个脚本,它根据您解析的变量执行不同的任务。 问题是,该脚本被称为:
http://examp.le/path/script.php¶m1=x¶m2=whatever¶m3=823
等等。 你肯定知道,这是错误的。第一个字符应该是查询标记,而不是&符号。因此,我需要编写一个重写规则,用查询标记替换&符号的 first occurence 。我从来都不擅长正则表达式,或者一般都是htaccess。
但是。如果您正在回答,请说明角色做什么以及世界如何运作。提前谢谢。
答案 0 :(得分:0)
通过httpd.conf
启用mod_rewrite和.htaccess,然后将此代码放在.htaccess
目录下的DOCUMENT_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=302
替换为R=301
。在测试mod_rewrite规则时,请避免使用R=301
(永久重定向)。