Я пытался исправить странную ошибку 403 Forbidden, которую я получаю, когда пытаюсь перейти на одну из моих страниц через WAMP на localhost.
После добавления правила, чтобы открыть порт 80 через брандмауэр Windows, который использует apache, я замечаю, что это НЕ исправляет мою проблему и вместо этого дает мне 403 запрещенных для ВСЕХ моих страниц через localhost.
Удаление правила, которое я только что сделал (что вызвало это для начала), не исправляет его. Отключение брандмауэра Windows не исправляет его. Перезапуск моего компьютера не исправляет его. Есть идеи?
EDIT2: Я могу перейти на localhost / phpmyadmin для того, что стоит.
EDIT3: содержимое моего httpd.conf: http://www.mediafire.com/?p54a53443efkefs
В httpd.conf найдите следующие разделы и убедитесь, что они верны:
DocumentRoot "C:/wamp/www"
<Directory /> Options None AllowOverride None Order deny,allow Deny from all </Directory> <Directory C:/wamp/www> Options None AllowOverride All Order allow,deny Allow from all </Directory>
Это настройки, которые я использую в своей установке, и они работают нормально. Обязательно перезапустите Apache, если вы внесете какие-либо изменения.
Если у вас возникли проблемы, обновите свой исходный вопрос с помощью httpd.conf.
Редактировать:
Это kludgey, и я просто хватаюсь за соломинку здесь, но попробуйте добавить новую запись к вашим vhosts:
<VirtualHost *:80> DocumentRoot "C:/wamp/www" ServerName localhost </VirtualHost>
Это может быть проблема ipv6. Поэтому в вашем httpd.conf добавьте свой адрес ipv6:
Изменить:
Allow from 127.0.0.1
чтобы:
Allow from 127.0.0.1 Allow from ::1:
Попробуйте изменить строку в httpd.conf
Allow from 127.0.0.1
или
Allow from all
См. Документацию
Решение Marco Tamanti работало для меня:
Allow from 127.0.0.1 Allow from ::1:
так что я:
<Directory "c:/wamp/www/"> Options Indexes FollowSymLinks AllowOverride all Order Deny,Allow Deny from all Allow from 127.0.0.1 Allow from ::1: </Directory>
Ваш «Deny From All» – это то, что вызывает ошибку 403. Сообщение, которое вы публикуете, используется для предотвращения всего трафика, с целью более позднего разрешения определенного трафика. Если вы никогда не разрешаете определенный трафик, вы никогда не получите его на работу.
При ошибке 404 убедитесь, что вы используете правильный путь, и в вашем журнале ошибок apache нет ошибок.
http://httpd.apache.org/docs/current/mod/core.html#directory
вам нужно 3 шага, пожалуйста, убедитесь, что эти 3 вещи
1.
прежде всего, порты 80 и 443 должны разрешать как TCP, так и UDP-пакеты. Для этого создайте 2 входящие правила для TPC и UDP в брандмауэре Windows для портов 80 и 443. (или вы можете отключить весь брандмауэр для тестирования, но постоянное решение, если разрешить входящее правило)
2.
Вам нужно изменить настройку безопасности на Apache, чтобы разрешить доступ из любого места, поэтому отредактируйте файл httpd.conf
.
Измените этот раздел:
# onlineoffline tag - don't remove Order Deny,Allow Deny from all Allow from 127.0.0.1 Allow from ::1 Allow from localhost
Для:
# onlineoffline tag - don't remove Order Allow,Deny Allow from all
если строка «Разрешить от всех» не работает для вашего использования, тогда используйте «Требовать все предоставленные», тогда он будет работать для вас.
В версии 3 и> WAMPServer есть виртуальные хосты, определенные для localhost
поэтому вообще не изменяйте файл httpd.conf
, оставьте его, как вы его нашли.
Используя меню, отредактируйте файл httpd-vhosts.conf
.
Он должен выглядеть так:
<VirtualHost *:80> ServerName localhost DocumentRoot D:/wamp/www <Directory "D:/wamp/www/"> Options +Indexes +FollowSymLinks +MultiViews AllowOverride All Require local </Directory> </VirtualHost>
Изменить его на
<VirtualHost *:80> ServerName localhost DocumentRoot D:/wamp/www <Directory "D:/wamp/www/"> Options +Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> </VirtualHost>
Надеюсь, вы создадите виртуальный хост для своего проекта и не будете использовать папку wamp\www
для своего сайта. В этом случае оставить определение локального хоста самостоятельно и внести изменения только в виртуальный хост.
3. Не забудьте перезапустить все службы Wamp или Apache после внесения изменений
Простые решения. Просто запустите как администратор файл Wamp Installations, и они будут работать как шарм 🙂
То, что я нашел, работало для меня после запуска WAMP, щелкнув по значку WAMP, который появляется на панели задач, затем нажмите «Начать все службы» под Quick Admin. Затем я смог получить доступ к локальному хосту, используя IE. Я даже вернулся к файлу httpd.config и вернул его по умолчанию.
Надеюсь это поможет.