WAMP Не удается получить доступ в локальной сети 403 Запрещено

Я знаю, что этот вопрос задавался много раз

Я следил за большинством ответов в Интернете Но я все равно получаю то же сообщение

403 Запрещено

У вас нет разрешения на доступ к этому серверу.

Странно, что при доступе к одному ПК на localhost:1234 он работает нормально, но если я получаю доступ к своему IP-адресу 192.168.0.188:1234

Также очень странно, что я пытался установить WAMP на другом ПК и без какой-либо конфигурации я мог бы получить доступ к этому ПК.

Итак, я подумал, что McAfee и Firewall, поэтому я открываю порт для Widows и McAfee, и ничего не изменилось, и я отключил Firewall и все равно ничего не изменил.

Тогда я по какой-то причине открыл порт через "переадресацию портов" маршрутизатора и ничего не изменил.

Я не думаю, что это потому, что моя конфигурация в WAMP, так как я все еще могу получить это сообщение 403 Forbidden, а также используя другой компьютер без какой-либо конфигурации, я мог бы получить к нему доступ.

Оба компьютера настроены следующим образом:

Windows 8 Pro

  • WAMP Wampserver: 2.4
  • Версия Apache: 2.4.4
  • Версия PHP: 5.4.12
  • Версия MySQL: 5.6.12

Доступный ПК использует Microsoft Security Essentials.

Недоступный компьютер использует McAfee Internet Security.

Я попытался отключить от WAMP и запустить IIS. Для Microsoft Server (отлично работает с любого ПК), но WAMP все еще не работает

Я следил за этим учебным пособием:

И переполнение стека отвечает здесь:

Ответ 1

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

Для версий WAMPServer <= 2,5

По умолчанию Wampserver настроен так надежно, насколько это возможно, поэтому Apache настроен только на доступ к машине, работающей с Wamp. Позже он должен быть сервером разработки, а не сервером.

Также была обнаружена небольшая ошибка с WAMPServer 2.4, где вместо старого синтаксиса Apache 2.4 для прав доступа использовался старый синтаксис Apache 2.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

To:

#   onlineoffline tag - don't remove
    Require local
    Require ip 192.168.0

Require local позволяет получить доступ из этих ip 127.0.0.1 & localhost & ::1.

Оператор Require ip 192.168.0 позволит вам получить доступ к серверу Apache из любого IP-адреса в вашей внутренней сети. Кроме того, он будет обеспечивать доступ, используя сервер mechines фактический IP-адрес с сервера, как вы пытаетесь сделать.

У WAMPServer 3 есть другой метод

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

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

Ответ 2

Для Apache 2.4.9

Кроме того, посмотрите файл httpd-vhosts.conf в C:\wamp\bin\apache\apache2.4.9\conf\extra

<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot C:/wamp/www
<Directory "C:/wamp/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require local
</Directory>
</VirtualHost>

Изменить на:

<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot C:/wamp/www
<Directory "C:/wamp/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require all granted
</Directory>
</VirtualHost>

изменение с "Требовать локального" на "Требовать все предоставленные" разрешило ошибку 403 в моей локальной сети

Ответ 3

Я получил этот ответ от здесь. и его работы для меня

Require local

Изменить на

Require all granted
Order Deny,Allow
Allow from all

Ответ 4

Чтобы расширить ответ на RiggsFolly или для тех, кто сталкивается с той же проблемой, но использует Apache 2.2 или ниже, этот формат должен хорошо работать:

Order Deny,Allow
Deny from all
Allow from 127.0.0.1 ::1
Allow from localhost
Allow from 192.168
Allow from 10
Satisfy Any

Подробнее об изменениях формата для Apache 2.4, официальная страница Обновление до версии 2.2 от 2.4 довольно четкая и краткая. Ключевые моменты:

Старые идиомы управления доступом должны быть заменены новыми механизмов аутентификации, хотя для совместимости со старыми конфигурации, предоставляется новый модуль mod_access_compat.

Это означает, что системные администраторы по всему миру не обязательно должны паниковать об изменении конфигураций Apache 2.2 до 2.4 совместимых.

Ответ 5

Для тех, кто может использовать WAMP 3.1.4 с Apache 2.4.35 в Windows 10 (64-разрядная версия)

Если у вас возникают проблемы с подключением внешних устройств к локальному узлу и появляется ошибка 403 Forbidden, это может быть связано с вашими файлами httpd.conf и httpd-vhosts.conf, а также строкой "Require local", которую они оба имеют в их.

[До того] httpd-vhosts.conf

<VirtualHost *:80>
 ServerName localhost
 ServerAlias localhost
 DocumentRoot "${INSTALL_DIR}/www"
 <Directory "${INSTALL_DIR}/www/">
   Options +Indexes +Includes +FollowSymLinks +MultiViews
   AllowOverride All
   Require local     <--- This is the offending line.
 </Directory>
</VirtualHost>

[После] httpd-vhosts.conf

<VirtualHost *:80>
 ServerName localhost
 ServerAlias localhost
 DocumentRoot "${INSTALL_DIR}/www"
 <Directory "${INSTALL_DIR}/www/">
   Options +Indexes +Includes +FollowSymLinks +MultiViews
   AllowOverride All
 </Directory>
</VirtualHost>

Кроме того, вам необходимо обновить файл httpd.conf следующим образом:

[До того] httpd.conf

DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
#   onlineoffline tag - don't remove

    Require local  #<--- This is the offending line.
</Directory>

[После] httpd.conf

DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
#   onlineoffline tag - don't remove

#   Require local
</Directory>

Обязательно перезапустите сервер WAMP через (Панель задач в правом нижнем углу экрана → щелкните значок WAMP левой кнопкой мыши → "Перезапустить все службы").

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

Отказ от ответственности: если вы находитесь в корпоративной среде, это не проверено с точки зрения безопасности; пожалуйста, убедитесь, что вы хорошо осведомлены о локальных протоколах доступа к среде разработки, прежде чем вносить какие-либо радикальные изменения.

Ответ 6

1. Щелкните левой кнопкой мыши на значке панели задач Wamp

2. Выберите "Поставить онлайн"