2012-01-23 54 views
0

我正在做一個項目的更新。它的默認首頁網址是www.test.com/index1.php。我想從url中隱藏這個index1.php。我嘗試在.htaccess以下重寫規則:使Index1.php在域url的末尾消失。 (在主頁上顯示)

RewriteEngine on  
RewriteCond $1 !^(index1\.php|resources|robots\.txt)  
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule ^(.*)$ index1.php/$1 [L,QSA]  

但現在顯示網址www.test.com/index1.php。任何想法?

+0

你是什麼意思「本身」? – xdazz

回答

0

由於$1作爲RewriteCond的第一個參數是沒有意義的。第一個參數適用於想要嘗試匹配的任何變量,第二個參數是要匹配的模式。

RewriteRule中,第一個參數是要匹配的模式,第二個參數是要重定向用戶的資源。在這裏,您可以使用$1,$2等來匹配您在第一個參數中在模式中創建的圓括號。

RewriteEngine on 
RewriteRule ^index1.php$/[L,R=301] 
RewriteCond %{REQUEST_URI} !^(/index1\.php|resources|robots\.txt) 
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule ^(.*)$ index1.php/$1 [L,QSA] 
+0

如果您包含關於導致問題的原因的簡要說明,爲什麼您的代碼可以修復問題,以及可以找到更多信息的文檔鏈接,則此答案會更有幫助。 –

+1

@JimDeLaHunt我只是寫它。 :-) – kba

+0

我試過這個,但它顯示的網址如www.test.com/index1.php – asitha