2014-02-20 25 views
1

我试图解决以下问题:行动=从URL删除与重写规则的.htaccess

获得一个网址,如

domain.com/?action=param 

我想从URL删除?action=

我认为有以下重写规则

RewriteRule ^$ /?action=$1 

RewriteRule ^(.*) /?action=$1 

但是,这并不工作来解决这个问题。任何想法?

回答

0

将删除所有的查询字符串参数:

RewriteCond %{QUERY_STRING} ^$ 
RewriteRule (.*) /$1? [R=301, L] 
0

尝试:

RewriteEngine On 
RewriteCond %{QUERY_STRING} ^action= 
RewriteRule^%{REQUEST_URI}? [L,R=301] 
1

我觉得在这个问题说明什么地方,你的问题迷路了。如果我得到你想要做什么,就像你说的只是想删除?action=这将只留下param这样你就可以使用URL这样

http://domain.com/param 

如果这是你在找什么。试试这个规则。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /?action=$1 [QSA,L] 
+0

感谢您的答复的。我试图实现这种方法,但我已经有一些规则。如果这些新的方法即时得到错误的URL重写RewriteEngine叙述 #turn上 #remove需要.PHP extention 的RewriteCond%{} REQUEST_FILENAME!-d 的RewriteCond%{REQUEST_FILENAME} \ PHP -f 重写规则^ $ $ 1.PHP (。*) 报头中设置访问控制允许来源 “*” Dominee

+0

它为我工作endly ..我删除了?行动=从我的href和现在回到干净的URL权 – Dominee