2012-08-24 45 views
0

使用此mod_rewrite的的mod_rewrite和{QUERY_STRING}

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

如何让我的查询字符串仍然工作,因为改变了我的网址,从

http://www.website.com/b.php?n=45&t=example 

这个

http://www.website.com/45/example 

我想用$ _GET

echo '<img src="gifs/' . $_GET["t"] . '/' . $_GET["n"] . '.gif">'; 
+1

的URL可以你解释你的问题到底是什么? '$ _GET'以什么方式不包含你想要的?仅仅是'n = $ 1&b = $ 2'应该是'n = $ 1&t = $ 2'? – DaveRandom

+0

是的,[QSA]应该允许您查询字符串仍然是?在这种情况下,您可以根据$ _server变量重建GET数组。 – freshnode

+0

@mario嘿,我认为这是我上次学到的更好的问题!对不起buddy – user1616846

回答

1

您可以使用下面的.htaccess代码发送完整URL b.php文件,并有可以拆分使用爆炸功能,可以分别得到查询字符串

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/* b.php?url=%{REQUEST_URI} [L,NC,QSA] 
+0

所以我只是把它添加到我的.htaccess中,然后我该怎么做。我不确定爆炸功能是什么意思?干杯好友 – user1616846