2012-05-14 182 views
1

我正在失去理智。我已經從字面上嘗試了我可以找到的這些電路板上的所有建議。Centos 6 MOD_REWRITE不工作

我有一個簡單的網址:

www.somedomain.com/!/profile.php?id=1234567 

我有這樣的.htaccess文件:

<IfModule mod_rewrite.c> 
    Options +FollowSymlinks 
    RewriteEngine On 
    RewriteRule ^([a-zA-Z0-9]+)(/?)$ profile.php?id=$1 [QSA,L] 
</IfModule> 

我不明白爲什麼它不重寫somedomain.com/!/1234567

+0

...它是在'/'目錄!? –

+0

yes profile.php is in!/ – Wes

回答

0

做的正是你在你在一個.htacess文件的問題,即要什麼/!/目錄需要下列

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$ 
RewriteRule ^[a-zA-Z0-9]+[.]php$ %1 [L] 

如果可以的話,它最好不要使用.htaccess文件,因爲它影響性能。可以按如下方式放置在虛擬主機的東西:

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$ 
RewriteRule ^/!/[a-zA-Z0-9]+[.]php$ %1 [L] 

,或者如果你想要做的事與文件名和路徑:

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$ 
RewriteRule ^(/!/[a-zA-Z0-9]+)[.]php$ $0/%1 [L] 
+0

現在如果我轉到那個鏈接,我會得到一個404錯誤? – Wes