Что означает «Индекс каталога, запрещенный правилом»? - PullRequest
0 голосов
/ 22 февраля 2011

Что может означать следующая строка?

[Mon Feb 21 20:52:13 2011] [error] [client 66.249.71.150] 
 Directory index forbidden by rule: /var/www/vhosts/website.com/httpdocs/

У меня нет index.php в корне, так как мой индекс home.php, корневой файл сайта определяется правилами .htaccess:

Мой .htaccess файл выглядит следующим образом:

DirectoryIndex index.php /index.php
RewriteCond %{HTTP_HOST} ^website.com$
RewriteRule ^$ en/home [R=301,L]
...

Большое спасибо!

update1:

У меня нет доступа кфайлы конфигурации виртуального хоста, я на разделяемом хостинге, так что только .htacces в моем / httpdocs / вот и все, что у меня есть.Что я должен делать?Должен ли я просто отключить DirectoryIndex (я не использую это в любом случае, и сайт работает нормально!) Как я могу проверить, есть ли у меня индекс каталога или нет?

update2:

  • при тестировании вбраузер, все, кажется, работает хорошо, быстро и красиво!
  • в журнале, однако, я вижу это:

[Sun Feb 27 02:18:56 2011] [ошибка] [клиент 66.249.71.81] Файл не существует: /var/www/vhosts/website.org/httpdocs/index

В отличие от первой ошибки в верхней части этой страницы, это кажетсяобычный 404 (мой документ об ошибке 404 - это моя домашняя страница, поэтому на страницах ошибок отображается домашняя страница)

Когда я набираю 'website.org', правило htaccess выполняет свою работу, перенаправляя на страницу по умолчанию website.org/en / home, и когда я набираю «websie.org/index», он перенаправляет на сайт website.org/en/home, поэтому кажется, что все работает нормально, но я не знаю, что означают две ошибки «Индекс каталога запрещен правилом... "

Подсказки?Спасибо!

Ответы [ 2 ]

1 голос
/ 22 февраля 2011

РЕДАКТИРОВАТЬ 2: Хорошо ... Я думаю, что сначала я полностью неправильно понял этот вопрос. Вы говорите, что у вас нет index.php файла в каталоге? Если это так, DirectoryIndex index.php /index.php выглядит неправильно. Может быть, вы должны попробовать изменить это на:

DirectoryIndex home.php

Правильно ли я понимаю проблему? Вы пытаетесь отобразить страницу по умолчанию для каталога, правильно?


По умолчанию некоторые настройки http.conf имеют следующее правило:

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

Всякий раз, когда я настраиваю vhost, я часто меняю это правило, чтобы оно выглядело примерно так:

<Directory />
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Allow from all
</Directory>

Важными частями в вашем случае являются последние две части Order и Allow.

РЕДАКТИРОВАТЬ 1: На самом деле, после более подробного изучения этой ошибки, возможно, что это даже проблема с разрешениями. Можете ли вы дважды проверить, что Apache имеет доступ на чтение к каталогу, к которому вы пытаетесь получить доступ?

1 голос
/ 22 февраля 2011

Проверьте свои записи и убедитесь, что там указан виртуальный хост DocumentRoot вашего сайта, иначе apache не сможет получить к нему доступ.

...