2011-08-11 204 views
0

問題,我想有任何http://www.mycom/api/*路線mycom/api/index.php文件的.htaccess重定向重寫規則

RewriteEngine On 
#1 
RewriteRule ^api/([a-zA-Z]+) /mycom/api/index.php?mode=$1 [QSA,L] 

導致內部服務器錯誤

#2 
RewriteRule ^/api/([a-zA-Z]+) /mycom/api/index.php?mode=$1 [QSA,L] 
# 3 
RewriteRule ^mycom/api/([a-zA-Z]+) /mycom/api/index.php?mode=$1 [QSA,L] 

2和3沒有工作,要麼

回答

2

index.php的真實URL地址是多少? http://www.mycom/api/index.phphttp://www.mycom/mycom/api/index.php

在第一種情況下嘗試這個辦法:

RewriteRule ^api(/.*)? /api/index.php?mode=$1 [QSA,L] 

,如果它是第二

RewriteRule ^api(/.*)? /mycom/api/index.php?mode=$1 [QSA,L] 

順便說一句,你需要對原始查詢字符串和模式參數?

+0

這是第二個。 RewriteRule^api(/.*)? /mycom/api/index.php?mode=$1 [QSA,L]導致內部服務器錯誤。 – lilzz

+0

那麼問題將在其他地方。它適用於類似'/ api/asdf?foo = bar'的URL,它使用_mode_和_foo_調用'index.php'。 –