2016-08-14 77 views
1

我決定在我的網站上做一些改寫。 目前,我有這樣的htaccess:.htaccess沒有打開索引

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

它所做的是,你可以輸入.PHP文檔,而無需添加php擴展 ,像

您可以通過訪問文件夾/ file.php輸入文件夾/文件進入網址欄。

但是,現在我意識到index.php不再工作了。

如果我嘗試通過folder/index.phpfolder/index進入指數,它工作正常,但打字時只是folder/

我失去了什麼規則在這裏不開呢?

對不起,我不習慣htaccess。謝謝你的幫助。

回答

2

...但只鍵入文件夾/

想必你只是得到一個404的時候它不開呢?

您還應該排除內部重寫的目錄。例如:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

所以,現在,當你鍵入example.com/folder/(映射到一個目錄,不是文件),它不會被上面的指令和mod_dir重寫將能夠加載DirectoryIndex

旁白:有是有所有這些不同的網址(例如folder/index.phpfolder/indexfolder/)訪問相同內容的附加警告 - 你現在有一個潛在的重複內容問題。一定要保持內部鏈接的一致性,包括規範元標記和重定向(如果它成爲問題)。

+0

加上一個用於重複內容警告 – Martin