2016-12-02 55 views
0

我在我的Apache DocumentRoot目錄中有一個index.html文件,但是當我到我的URL時,我仍然得到我的DocumentRoot目錄而不是索引的目錄列表。正在顯示html文件。當我重新加載頁面時,apache access_log顯示200。有什麼建議麼?有index.html文件,但仍然得到一個目錄列表

+1

是否設置了「DirectoryIndex」? https://httpd.apache.org/docs/current/mod/mod_dir.html#directoryindex –

+0

可能重複[index.php默認不加載](http://stackoverflow.com/questions/2384423/index-php -not-loading-default) – r1verside

+0

@Pekka웃DirectoryIndex已設置。 的DocumentRoot在/ var/WWW /虛擬主機/ ihlgt/httpdocs資料 的DirectoryIndex /var/www/vhosts/ihlgt/httpdocs/index.html 我上面被列出的一個,這樣似乎是正確的我DocumentRoot的目錄? –

回答

3

使用

DirectoryIndex index.html 

它告訴Apache顯示目錄的要求是什麼文件。

更新

您應指定只Apache會查找該文件夾中所要求的文件名

+0

謝謝!就是這樣。我的網站仍然無法正常工作。 index.html只是一個測試,它真的是我正在開發的一個php應用程序。但只顯示文件名顯示index.html,現在我已將DirectoryIndex更改爲index.php,我的網站未加載。但至少我現在在錯誤日誌中得到一個PHP致命錯誤。找到解決方案是另一個單獨的主題,所以我將這個答案標記爲接受。再次感謝。 –

0

不是說這會爲您解決問題,但對我來說,當第一次開始使用的Apache2是移動或網站根目錄

ls -hal /var/www/host_one/index.html 

下寫入新文件如果上面時會被人遺忘的文件權限不具有相同的用戶讀(r)權限:組或者如果所有權不包括用戶/組的Web服務器,那麼請嘗試以下允許組讀取

# Modify ownership, change 'www_host' to Apache2 group 
chown ${USER}:www_host /var/www/host_one/index.html 
# give read+write (6) to user and read (4) to group owners 
chmod 640 /var/www/host_one/index.html 

請嘗試刷新網站並查看權限在哪裏的問題。注意大多數Web文檔只要求讀取權限和所有權對瀏覽器來說是正確的,以允許瀏覽器進行渲染,在極少數情況下,您可能需要對服務器腳本執行可執行(1或x)權限(在這種情況下應保持謹慎的所有權)並且最後寫入權限(2或w)應該永遠不會在你的web根目錄中沒有很好的理由。

第二件事嘗試,使用index.html您的瀏覽器中的地址欄

# by IP 
http://192.168.0.100/index.html 
# by domain 
http://site-name.local/index.html 

如果上面加載文檔,然後,像@Pekka웃已經說過,你可能已經得到了,這是一個服務器選項缺少或啓用目錄列表,而不是在該目錄中查找索引頁。如果這是問題,那麼修復的方法有兩種,我曾試過。一,htaccess配置禁用該子目錄內的目錄列表,二,服務器虛擬主機配置,以防止整個網站從目錄列表。就我個人而言,我更喜歡使用選項二,然後在允許列出的目錄中放置一個htaccess配置來獲得權限而不是拒絕。

相關問題