2014-10-01 87 views
0

長話短說重定向我試圖重定向:奇怪的錯誤,而使用的.htaccess

http://example.com/?_escaped_fragment_=/onetwothree 

是這樣的:

http://example.com/serve.php?_escaped_fragment_=/onetwothree 

我用下面的.htaccess代碼:

# Enable Rewriting 
RewriteEngine on 
RewriteCond %{QUERY_STRING} _escaped_fragment_= [NC] 
RewriteRule ^(.*)$ http://example.com/serve.php$1 [P,QSA,L] 

但是反應很奇怪:

Forbidden 

You don't have permission to access /serve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpserve.phpindex.html.var on this server. 
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. 

我做錯了什麼?我對此很陌生。我將衷心感謝您的幫助。

更新1

我試着使用:

RewriteEngine on 
RewriteCond %{QUERY_STRING} _escaped_fragment_= [NC] 
RewriteCond $1 ^serve\.php 
RewriteRule ^(.*)$ http://example.com/serve.php$1 [P,QSA,L] 

但現在它不工作。當我嘗試訪問example.com/?_escaped_fragment_=/dfas它將我重定向到example.com/?_escaped_fragment_=/dfas#!而不是example.com/serve.php?_escaped_fragment_=dfas請幫助我們我不知道爲什麼會發生這種情況。這對我來說非常重要。

回答

0

你需要檢查你不是已經被重定向到serve.php:

RewriteEngine on 
RewriteCond %{QUERY_STRING} _escaped_fragment_= [NC] 
RewriteCond $1 !^serve\.php 
RewriteRule ^(.*)$ http://example.com/serve.php$1 [P,QSA,L] 
+0

現在我無法重定向到serve.php文件...它重定向到http:// example.com/?_escaped_fragment_=/dfas#!而不是http://example.com/serve.php?_escaped_fragment_=dfas – Chaitanya 2014-10-02 04:53:26

+0

@ChaitanyaChoudhary抱歉,錯過了'!',請參閱編輯 – 2014-10-02 14:53:47