我在Apache上有一個網站,檔案夾是:
在這一層我有一個 我有很多子檔案夾,但不是所有的子檔案夾都有一個 所以我想如果有人去: 我嘗試在內容檔案夾中使用 但是Apache給我的顯示是這樣的: 內部服務器錯誤 uj5u.com熱心網友回復: 你的重寫條件是只在請求不存在的檔案或檔案夾時重寫到index.html,也就是說,任何請求存在的檔案或檔案夾的人都會阻止重寫規則的激活,從而很容易繞過你想做的事情。
無論如何,你的做法首先是錯誤的,你應該做的是限制對所有目錄的訪問,然后只允許進入你希望用戶進入的目錄。把索引檔案放在目錄中只是為那些不能正確配置apache限制的不稱職的開發者提供了一個失敗的保險。
uj5u.com熱心網友回復: 如果你的服務器沒有啟用mod_rewrite,或者 然而,你在這里似乎根本不需要mod_rewrite。
如果你想從被請求的目錄中提供 參考資料:
標籤:/var/www/html/content。
/var/www/html/content
index.html/var/www/html/content/index.html
index.htmlhttp://example.com/subfolder/subfolder,而這個子檔案夾不包含index.html,則重定向到。http://example.com/.htaccess檔案,并使用以下規則:RewriteEngine on
RewriteCond %{REQUEST_FILENAME}! !-f
RewriteCond %{REQUEST_FILENAME}! !-d
RewriteRule ^.*$ /index.html [L] 。
RewriteCond %{REQUEST_FILENAME}! !-f
RewriteCond %{REQUEST_FILENAME}! !-d
RewriteRule ^.*$ /index.html [L] 。
/index.html不存在(根據你在問題中所說的,這似乎不太可能),這將導致內部服務器錯誤(500回應)。
index.html(如果它存在的話),否則就默認從檔案根部提供/index.html(沒有外部重定向),那么你可以簡單地修改DirectoryIndex。例如:DirectoryIndex index.html /index.html
DirectoryIndex指令列出了在請求一個目錄時要嘗試的檔案。在這種情況下,index.html指的是當前請求目錄中的一個檔案。如果這個檔案不存在,那么它就會嘗試檔案根中的/index.html(一個與根相關的URL)。
