Почему я получаю Сетевую ошибку: 403 Запрещено в firebug для файлов, к которым я не пытаюсь получить доступ?
Вопросы
Я хотел бы знать
почему я получаю сообщение об ошибке сети: 403 Запрещено в firebug для файлов, к которым я не пытаюсь получить доступ?
это может вызвать серьезные проблемы на веб-сервере?
как это исправить.
- Почему мой браузер пытается получить доступ к этим файлам в сообщении об ошибке?
ПОДРОБНОСТИ
Я использую Wampserver 2.2 для доступа к папке через браузер. Браузер находится на том же компьютере, что и сервер. Компьютер работает под управлением Windows 7 Ultimate.
Когда я просматриваю веб-папку через мой браузер, hXXp://localhost/folder
Я могу видеть содержимое папки хорошо
но в firebug я получаю ошибку сети: 403 запрещено
Я специально не пытаюсь получить доступ к этим файлам в сообщениях об ошибках. Вы заметите, что они находятся в совершенно другой папке, чем та, на которую я смотрю.
Я проверяю apache_error.log и вижу
[Wed Sep 26 00:05:10 2012] [ошибка] [клиент 127.0.0.1] клиент отклонен из-за конфигурации сервера: C:/ apache2, реферер: hxxp: // localhost / folder /
Wampserver 2.2 установлен на диск D.
Я взглянул на файл httpd.conf, но не смог найти никаких ссылок на c:
Когда я смотрю в Apache access.log я вижу
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
КОНФИГУРАЦИИ
- Wampserver 2.2 установлен на диске D
- Apache 2.2.22
- PHP 5.4.3
- MySQL 5.5.24
- Firebug 1.10.3
- Firefox 15.0.1
3 ответа
У тебя есть 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/">
Иконки теперь будут отображаться как обычно.
Большое спасибо Ладададада за то, что он указал мне правильное направление!
- Почему я получаю сообщение об ошибке сети: 403 Запрещено в firebug для файлов, к которым я не пытаюсь получить доступ?
- У вас есть параметры индексов где-то в 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>
- Почему вы получаете Ошибка сети: 403 Запрещено? Вы получаете это, потому что Apache пытается получить доступ к значкам из каталога, который не существует в указанной локализации. Тщательно проверьте пути - как в httpd.conf, так и в httpd-autoindex.conf. Вероятно, проблема в пропущенном слэше.
- Это может вызвать серьезные проблемы на веб-сервере?
- Само по себе это не может вызвать никаких проблем. Но это покажет файлы в каталоге. Так что любой может свободно просматривать ваши файлы и каталоги и, возможно, иметь доступ к файлам, к которым не следует обращаться таким образом, что является проблемой. Так что не техническая проблема, а человеческая.
- Как это исправить?
- Проверьте пути, внимательно!
- Почему мой браузер пытается получить доступ к этим файлам в сообщении об ошибке?
- Браузер просто показывает страницу, сгенерированную Apache. Это пытается получить доступ ко всем изображениям на странице и показать их. Так что это не ошибка браузера.:)