2013-07-25 97 views
0

正如我已经设法做到foo.php Q =栏/富/酒吧问题状态,使用下面的htaccess的从/富/酒吧/重定向到foo.php Q =酒吧

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

我要如何重定向/富/酒吧foo.php?q =酒吧 ,同时检查,如果

富=富,这是说一个名叫dosearch文件存在,并且被重定向到

dosearch/data 

现在我想看看是否

/(.*)/(.*) 

的第一场比赛是dosearch,如果它是那么做dosearch.php?q=$2

编辑:

这是新的htaccess,但它一直给我“太多重定向”

Options +FollowSymLinks -MultiViews 

RewriteEngine On 
RewriteBase/


RewriteCond %{QUERY_STRING} ^q=(.*)$ 
RewriteRule ^dosearch\.php$ dosearch/%1? [R=301,NC,L] 

RewriteRule ^dosearch/([^/]+)? dosearch.php?q=$1 [NC,L] 

任何帮助appretiated家伙......

+0

是不是'/ dosearch /(.*)'你在找什么? – HamZa

+0

没有第一场比赛可能一些其他文件,我不想被重定向 – Anup

+0

好吧,你能提供一些输入和预期的输出?你也想重定向或重写? – HamZa

回答

-1

你好,我认为我得到了这个,但是下面的附录没有查询,即使它存在....如果有人可以指出......这将是很好的。

Options +FollowSymLinks +MultiViews 

RewriteEngine On 
RewriteBase/


RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /dosearch\.php\?q=(.*)\ HTTP/ 
RewriteRule ^dosearch\.php$ dosearch/%1? [R=302,L] 

RewriteRule ^dosearch/([^/]+)? dosearch.php?q=$1 [NC,L]