Все локальные страницы через WAMP заблокированы? - PullRequest
13 голосов
/ 09 июня 2011

Я пытался исправить странную ошибку 403 Forbidden, которая появляется при попытке перейти на одну из моих страниц через WAMP на локальном хосте.

После добавления правила открытия порта 80 через брандмауэр Windows, который использует Apache, я заметил, что это НЕ решает мою проблему, а вместо этого дает 403, запрещенных для ВСЕХ моих страниц через localhost.

Удаление только что созданного правила (с которого это началось) не исправляет его. Отключение брандмауэра Windows не исправляет это. Перезагрузка моего компьютера не исправляет это. Есть идеи?

EDIT2: Я могу перейти к localhost / phpmyadmin за любую цену.

EDIT3: содержимое моего httpd.conf: http://www.mediafire.com/?p54a53443efkefs

Ответы [ 8 ]

38 голосов
/ 09 июня 2011

В 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.


Edit:

Это клуджи, и я просто хватаюсь за соломинку здесь, но попробуйте добавить новую запись в ваши vhosts:

<VirtualHost *:80>
    DocumentRoot "C:/wamp/www"
    ServerName localhost
</VirtualHost>
11 голосов
/ 29 марта 2012

Это может быть проблема с ipv6.Поэтому в вашем httpd.conf добавьте свой локальный адрес ipv6:

Измените:

Allow from 127.0.0.1

на:

Allow from 127.0.0.1
Allow from ::1:
6 голосов
/ 09 июня 2011

Попробуйте изменить строку в httpd.conf

Allow from 127.0.0.1 

или

 Allow from all

См. документацию

3 голосов
/ 08 мая 2012

Решение Марко Таманти сработало у меня:

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>
2 голосов
/ 09 июня 2011

Ваш "Deny From All" является причиной ошибки 403. Размещаемая вами настройка используется для предотвращения всего трафика с целью последующего разрешения определенного трафика. Если вы никогда не разрешите определенный трафик, вы никогда не получите его на работу.

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

http://httpd.apache.org/docs/current/mod/core.html#directory

1 голос
/ 21 декабря 2016

вам требуется 3 шага, убедитесь, что эти 3 вещи

1.

Прежде всего, порты 80 и 443 должны разрешать как пакеты TCP, так и UDP.Для этого создайте 2 правила входящего трафика для TPC и UDP на брандмауэре Windows для портов 80 и 443. (или вы можете отключить весь брандмауэр для тестирования, но для постоянного решения, если разрешите правило для входящего трафика)

2.

Если вы используете WAMPServer 3 См. Нижнюю часть ответа

Для версий WAMPServer <= 2.5 </h3> Вам необходимо изменить настройки безопасности в 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 , если строка "Разрешить от всех" неработайте для своего, затем используйте «Требовать все предоставлено», тогда он будет работать для вас. WAMPServer 3 имеет другой метод

В версиях 3 и> WAMPServer предварительно определен виртуальный хостlocalhost, поэтому вообще не изменяйте файл httpd.conf, оставьте его таким, какой вы его нашли.

С помощью меню отредактируйте файл httpd-vhosts.conf.

enter image description here

Это должно выглядеть следующим образом:

<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 для своего сайта.В этом случае оставьте определение localhost в покое и внесите изменения только в свой виртуальный хост.

3. Не забудьте перезапустить все службы Wamp или Apache после внесения этого изменения

0 голосов
/ 28 февраля 2014

То, что я обнаружил, сработало для меня после запуска WAMP: щелкнув левой кнопкой мыши значок WAMP, который появляется на панели задач, затем нажмите «Запустить все службы» в разделе «Быстрое администрирование».Затем я смог получить доступ к localhost с помощью IE.Я даже вернулся к файлу httpd.config и установил его по умолчанию.

Надеюсь, это поможет.

0 голосов
/ 20 сентября 2012

Простые решения.Просто запустите от имени администратора файл установок Wamp, и они будут работать как чудо:)

...