如何使用过滤目录和保留参数获取 .htaccess 重写规则
How to get an .htaccess rewrite rule with filtering directory and keeping parameters
我正在尝试编写重写规则,我想更改它:
http://domain.de/adServer/js/first/sec/ADTECH?loc=300&alias=Home&misc=1429871690242
至:
http://domain.de/adServer/js/ADTECH.php?a=&b=
哪里$_Get在ADTECH.php喊是:
$_GET['a']=first | $_GET['b']=sec | $_GET['loc']=300 | $_GET['alias']=Home
.htaccess 文件将放在 root/adServer/js 中。
我试过了没有成功:
RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteCond %{REQUEST_URI} /adServer/js/(.*)/(.*)/ADTECH$
RewriteRule (.*)/(.*)/ADTECH$ /adServer/js/test.php?a=&b=
(我的代码将 $_GET['a']=first | $_GET['b']=sec
作为新参数,但是给定参数有什么用?)
您可以在 /adServer/js/.htaccess
中使用此代码:
RewriteEngine On
Options +FollowSymlinks
RewriteBase /adServer/js/
RewriteRule ^([^/]+)/([^/]+)/ADTECH/?$ test.php?a=&b= [L,QSA,NC]
变化是:
- 在
RewriteRule
中添加所需的标志。 Esp 重要的是 QSA
保留原始查询字符串。
- 适当添加
RewriteBase
.
- 删除多余的
RewriteCond
- 在
RewriteRule
中使用相对路径重写。
我正在尝试编写重写规则,我想更改它:
http://domain.de/adServer/js/first/sec/ADTECH?loc=300&alias=Home&misc=1429871690242
至:
http://domain.de/adServer/js/ADTECH.php?a=&b=
哪里$_Get在ADTECH.php喊是:
$_GET['a']=first | $_GET['b']=sec | $_GET['loc']=300 | $_GET['alias']=Home
.htaccess 文件将放在 root/adServer/js 中。 我试过了没有成功:
RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteCond %{REQUEST_URI} /adServer/js/(.*)/(.*)/ADTECH$
RewriteRule (.*)/(.*)/ADTECH$ /adServer/js/test.php?a=&b=
(我的代码将 $_GET['a']=first | $_GET['b']=sec
作为新参数,但是给定参数有什么用?)
您可以在 /adServer/js/.htaccess
中使用此代码:
RewriteEngine On
Options +FollowSymlinks
RewriteBase /adServer/js/
RewriteRule ^([^/]+)/([^/]+)/ADTECH/?$ test.php?a=&b= [L,QSA,NC]
变化是:
- 在
RewriteRule
中添加所需的标志。 Esp 重要的是QSA
保留原始查询字符串。 - 适当添加
RewriteBase
. - 删除多余的
RewriteCond
- 在
RewriteRule
中使用相对路径重写。