Назад | Перейти на главную страницу

Почему я получаю сообщение об ошибке сети: 403 запрещено в firebug для файлов, к которым я не пытаюсь получить доступ?

Вопросы

Я хотел бы знать

ПОДРОБНОСТИ

Я использую wampserver 2.2 для доступа к папке через браузер. Браузер находится на том же компьютере, что и сервер. На компьютере установлена ​​Windows 7 Ultimate.

Когда я просматриваю веб-папку через браузер, hXXp: // localhost / folder

Я вижу содержимое папки нормально

но в Firebug я получаю Сетевая ошибка: 403 запрещено

Я не пытаюсь намеренно получить доступ к этим файлам в сообщениях об ошибках. Вы заметите, что они находятся в совершенно другой папке, чем та, на которую я смотрю.

Я проверяю apache_error.log и увидеть

[26 сентября, среда, 00:05:10 2012] [ошибка] [клиент 127.0.0.1] клиент отклонен конфигурацией сервера: C:/ apache2, ссылка: hxxp: // локальный / папка /

Wampserver 2.2 установлен на диске D.

Я просмотрел файл httpd.conf, но не нашел никаких ссылок на c:

Когда я смотрю в Access.log Apache я вижу

127.0.0.1 - - [26/Sep/2012:00:05:10 +0900] "GET /icons/blank.gif HTTP/1.1" 403 217
127.0.0.1 - - [26/Sep/2012:00:05:10 +0900] "GET /icons/back.gif HTTP/1.1" 403 216
127.0.0.1 - - [26/Sep/2012:00:05:10 +0900] "GET /icons/text.gif HTTP/1.1" 403 216
127.0.0.1 - - [26/Sep/2012:00:05:10 +0900] "GET /icons/unknown.gif HTTP/1.1" 403 219
127.0.0.1 - - [26/Sep/2012:00:05:10 +0900] "GET /icons/folder.gif HTTP/1.1" 403 218

КОНФИГУРАЦИЯ

У тебя есть Options Indexes включен где-то в вашей конфигурации. Это то, что заставляет Apache генерировать страницу, которую вы видите выше.

Эта страница состоит из HTML и слева от каждого элемента (где вы видите [ ] и [TXT] и т. д.) обычно появляется изображение, представляющее тип файла, для которого предназначена эта строка. Эти изображения запрашиваются, как и любая обычная HTML-страница, и они поступают из /icons/. На самом деле это не папка в вашем корневом веб-каталоге, а псевдонимы, использующие что-то вроде Alias /icons/ "/usr/share/apache2/icons/".

Наконец, вы настроили другую часть конфигурации Apache, чтобы запретить эти запросы, поэтому вы получаете ответ 403 и альтернативный текст, отображаемый вместо значков.

Это вряд ли вызовет какие-либо серьезные проблемы, но это не то, что вы обычно оставляете активным (либо Options Indexes или Alias /icons/ ...) на производственном сервере.

Чтобы решить проблему с иконкой, мне пришлось отредактировать httpd-autoindex.conf, расположенный в \ bin \ apache \ apache2.2.22 \ conf \ extra

Я изменился

Alias /icons/ "c:/apache2/icons/"

к

Alias /icons/ "D:/wamp/bin/apache/apache2.2.22/icons/"

и

<Directory "c:/apache2/icons">

к

<Directory "D:/wamp/bin/apache/apache2.2.22/icons/">

Значки теперь будут отображаться как обычно.

Большое спасибо Ladadadada за то, что указал мне в правильном направлении!

  • Почему я получаю сообщение об ошибке сети: 403 Запрещено в firebug для файлов, к которым я не пытаюсь получить доступ?
  1. У тебя есть Индексы опционов где-нибудь в httpd.conf. Это позволяет вам видеть список файлов в каталоге, и Apache автоматически сгенерирует эту страницу для вас и автоматически попытается добавить значки для известных типов. В реальной (производственной) среде у вас не должно быть индексов.

Скорее всего, где определен корень вашего документа. Это может выглядеть примерно так:

DocumentRoot "${WEBROOT}/"
<Directory "${WEBROOT}/">
    HeaderName HEADER.html
    ReadmeName FOOTER.html
    IndexIgnore FOOTER.html HEADER.html
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
  1. Почему вы получаете Сетевая ошибка: 403 запрещено? Вы получаете это, потому что Apache пытается получить доступ к значкам из каталога, который не существует в указанном месте. Внимательно проверьте пути - как в httpd.conf, так и в httpd-autoindex.conf. Вероятно, проблема в отсутствии косой черты.
  • Может ли это вызвать серьезные проблемы на веб-сервере?
  1. По сути, это не может вызвать никаких проблем. Но это покажет файлы в каталоге. Так любой может свободно просматривать ваши файлы и каталоги и, вероятно, иметь доступ к файлам, к которым нельзя обращаться таким образом, что является проблемой. Так что проблема не техническая, а человеческая.
  • Как это исправить?
  1. Тщательно проверяйте пути!
  • Почему мой браузер пытается получить доступ к этим файлам в сообщении об ошибке?
  1. Браузер просто показывает страницу, созданную Apache. Он пытается получить доступ ко всем изображениям на странице и показать их. Так что это не ошибка браузера. :)