WAMP 403 Запрещенное сообщение в Windows 7

Я установил WAMP версии 2.1 на свой компьютер с Windows 7. Когда я перехожу на localhost в моем браузере, отображается страница сервера WAMP.

Но когда я перехожу на свой IP-адрес в браузере, я получаю сообщение

403 Запрещено: у вас нет разрешения на доступ к этому серверу.

Какие-либо предложения?


person Jake    schedule 20.11.2011    source источник
comment
Доступ к вашему серверу Apache запрещен с адресов, отличных от 127.0.0.1 в httpd.conf (файл конфигурации Apache)   -  person Nasreddine    schedule 21.11.2011
comment
Я исправил это, теперь я получаю 403 Forbidden в моем phpMyAdmin, какие-либо предложения по этому поводу?   -  person Jake    schedule 21.11.2011
comment
есть также phpmyadmin.conf, который содержит директивы для псевдонима localhost / phpmyadmin   -  person Nasreddine    schedule 21.11.2011
comment
если вы здесь для Windows 8, отметьте эту stackoverflow.com/questions/13945783/   -  person shabby    schedule 06.01.2014


Ответы (26)


Доступ к вашему серверу Apache запрещен с адресов, отличных от 127.0.0.1 в httpd.conf (файл конфигурации Apache):

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Directory>

То же самое и с доступом к PHPMyAdmin, файл конфигурации phpmyadmin.conf:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
</Directory>

Вы можете настроить их так, чтобы разрешать соединения со всех IP-адресов, как показано ниже:

AllowOverride All
Order allow,deny
Allow from all
person Nasreddine    schedule 20.11.2011
comment
Это, безусловно, откроет доступ с любого IP-адреса, но разве это не опасно? Правило, разрешающее «из 127.0.0.1», должно быть достаточно, чтобы разрешить локальный доступ, если это основная цель здесь, 127.0.0.1 - это, по сути, возврат к сетевому адаптеру. Если вы наберете в адресной строке http: //127.0.0.1: {portNumber} / {folderOrFileName}, все должно работать нормально. Это должно работать так же, как при использовании localhost, но я обнаружил, что в некоторых браузерах по какой-то причине возникают проблемы с localhost. - person Jeremy; 01.05.2012
comment
Я не смог отформатировать свою адресную строку в этом последнем комментарии, поэтому в нем есть лишнее «просто игнорируйте это извините, если это кого-то смущает». - person Jeremy; 01.05.2012
comment
Примечание: в файле устанавливаются значения по умолчанию, которые затем переопределяются по одному, поэтому убедитесь, что эти строки идут после всех переопределений. - person meetar; 12.05.2012
comment
Не забудьте перезапустить все службы из меню панели задач WAMP (или как вы это делаете). - person Plummer; 08.11.2013
comment
Для Apache версии 2.4.x замените Require local на Require all granted в файле httpd.conf внутри тега <Directory "c:/wamp/www/">, затем перезапустите все службы - person Rakesh; 12.02.2016
comment
Обязательно проверьте extra / https-vhosts.conf. Он также может содержать Require local, но он не будет перезаписан при установке wampserver в онлайн. - person Lajos Mészáros; 12.06.2017

Нашел более простое исправление ...

Несмотря на то, что значок был зеленым, WAMP по-прежнему необходимо «Подключить» (последний пункт меню при щелчке левой кнопкой мыши по значку).

После этого у меня был доступ как обычно.

person Bobs Yeruncle    schedule 07.07.2013
comment
Фактически, это должно быть отмечено как принятый ответ. Спасибо, чувак. - person ummahusla; 10.08.2015
comment
Это решение заслуживает одобрения, потому что конфигурация обновляется, когда вы действительно нажимаете кнопку подключения к сети: forum.wampserver.com/read.php?1,119467,119546 - person GPY; 12.08.2015
comment
Это исправило это и для меня. Хотя в моем случае мне пришлось сначала перевести в автономный режим, затем подключить к сети и работать без каких-либо других изменений в моих файлах конфигурации! Спасибо!! - person Osmar; 18.04.2016
comment
Собственно, я начал делать все это в первом принятом ответе. И это не помогло. Потом я увидел это здесь и подумал: «Ни в коем случае не может быть этого ...», но это было то, и это сработало. - person Fusseldieb; 18.09.2016
comment
Supercalifragilisticexpialidocious! - person Vahid; 19.11.2016

Для меня включение «Требовать локальный» помогло решить ошибку 403. Конфигурационный файл псевдонима выглядит следующим образом:

Alias /mytest/ "C:/mytest/" 

<Directory "C:/mytest/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
    Require local
</Directory>
person Girts Strazdins    schedule 02.01.2013
comment
Это сработало и у меня, используя Apache 2.4.9. Давно искал это. Спасибо! - person Jonathan Lidbeck; 12.10.2014
comment
Options Indexes FollowSymLinks MultiViews также требуется - person Hammad Khan; 09.07.2015
comment
Есть ли причина для добавления части C: / mytest /? Кажется, что это не имеет никакого эффекта, и просто оставить / в конце, как это стандартно, похоже, работает так же хорошо. - person Squazz; 20.07.2015
comment
Если вы хотите открыть свой сайт на других устройствах в вашей локальной сети, лучше используйте «Требовать все предоставленные» вместо «Требовать локальный». - person Rakesh; 21.11.2017
comment
Добавление Allow from all сделало это за меня. - person Rex the Strange; 26.03.2020

Решение для изменения разрешений в httpd.conf будет работать, если вы согласны предоставить доступ к серверу WAMP извне.

Если вы не хотите этого делать, все, что вам нужно сделать, это сообщить Windows, что домен «localhost» указывает на 127.0.0.1. Вы можете сделать это, отредактировав файл hosts в системном каталоге.

Файл находится по адресу: C: \ Windows \ System32 \ drivers \ etc \ hosts

по умолчанию Windows 7 поставляется с:

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost

Вы должны не комментировать сопоставление для localhost:

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
#   ::1         localhost

Примечание: вы не сможете редактировать файл hosts, поскольку он доступен только для чтения. Для редактирования вы должны быть администратором, скопировать файл в другое место, отредактировать его, а затем скопировать обратно в каталог etc.

Я не рекомендую менять файл hosts. Используйте разрешения файла httpd.conf. используйте подход с использованием файлов hosts только в том случае, если вы не хотите, чтобы к серверу был доступ извне.

person Punit Raizada    schedule 20.04.2012

Попробуйте добавить следующие строки кода в файл httpd-vhosts.conf:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:\wamp\www"
ServerName localhost
</VirtualHost>
person WADeveloper    schedule 14.06.2013

Еще я выяснил, что если ваш сетевой адаптер использует IPV6, он не будет отображаться как 127.0.0.1, а :: 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>

То же самое касается вашего доступа к PHPMyAdmin, файл конфигурации - phpmyadmin.conf:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
        Allow from ::1
</Directory>
person Geekhuh    schedule 16.11.2012
comment
Я думаю, что этот ответ действительно обращается к важной задаче, а именно к тому, что когда IPv6 включен, localhost преобразуется в IPv6-адрес (:: 1), а это, в свою очередь, означает, что запрашивающий адрес также будет IPv6-адресом (также :: 1), который НЕ совпадает с 127.0.0.1, который является единственным адресом, с которого разрешены соединения. Кроме того, localhost разрешается через локальный DNS-сервер по умолчанию (а не через хосты), и, по моему мнению, лучше всего оставить его таким и вместо этого либо отключить IPv6, чтобы localhost разрешился до 127.0.0.1, либо измените / включите, как указано выше. - person fast-reflexes; 20.03.2013
comment
просто добавление 'Allow from :: 1' в файл c: \ wamp \ alias \ phpmyadmin.conf решило проблему phpmyadmin 403. - person ewroman; 04.03.2016

если вы использовали localhost / phpmyadmin /

просто используйте

127.0.0.1/phpmyadmin/ для PHPMyAdmin

127.0.0.1/sqlbuddy/ для SQLBuddy

или если вы использовали localhost: 8080 / phpmyadmin /, тогда

127.0.0.1:8080/phpmyadmin/ для PHPMyAdmin

127.0.0.1:8080/sqlbuddy/ для SQLBuddy

person suiz    schedule 04.08.2012

Не забудьте удалить фиктивные элементы в httpd-vhosts.conf

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>
person user3684707    schedule 28.05.2014
comment
Спасибо! Это исправило это. - person Steve; 17.11.2015

Для версии Apache 2.4.x просто замените Require local на Require all granted в httpd.conf файл внутри тега <Directory "c:/wamp/www/">, затем Перезапустите все службы

person Rakesh    schedule 12.06.2017
comment
Это помогло мне. Странно то, что 2 других VirtualHosts (в httpd-vhosts.conf) не имеют «Требовать локальный» или «Требовать все предоставлено» и по-прежнему работают нормально. ¯_ (ツ) _ / ¯ - person kmdsax; 25.08.2017

Для Wamp 3.1.3 и Apache 2.4 мне просто пришлось изменить одну строку в моем файле httpd-vhosts.conf.

  1. Откройте httpd-vhosts.conf
  2. Измените "Требовать локальный" на "Требовать всех предоставленных".
  3. Перезапустить все службы

Затем я смог получить доступ к своему серверу apache с других компьютеров.

Отметьте это видео: https://www.youtube.com/watch?v=Sy_f6wBGnjI < / а>

person EldritchText    schedule 09.01.2019

У этой проблемы могло быть много причин.

Что я испытал:
1) запись 127.0.0.1 localhost дублировалась в файле hosts
2) Apache mod_rewrite не был включен

Независимо от причины поможет резервное копирование вашей www папки, файла конфигурации vhost (и файла конфигурации httpd). И такой процесс занимает несколько минут.

Удачи

person ericn    schedule 31.10.2012

Я прочитал и попробовал все исправления, но ни одно не помогло. Наконец я обнаружил, что логотип сервера Wamp зеленый, но должен быть "ВЫКЛЮЧЕНО". Так просто и быстро исправить после проверки вашего PHPMyAdmin.Cofg & HttPD.cofg Просто нажмите кнопку «ВЫКЛЮЧИТЬ ОНЛАЙН»

person Nexones    schedule 07.11.2013

Я пробовал указанные выше конфигурации, и только это сработало для моей конфигурации WAMP Apache 2.4.2. Для нескольких корневых сайтов без именованных доменов в вашем файле хостов Windows используйте http://locahost:8080, http://localhost:8081, http://localhost:8082 и эту конфигурацию:

#ServerName localhost:80
ServerName localhost

Listen 8080
Listen 8081
Listen 8082
#..... 
<VirtualHost *:8080>
    DocumentRoot "c:\www"
    ServerName localhost
    <Directory "c:/www/">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require local
    </Directory>
</VirtualHost>
<VirtualHost *:8081>
    DocumentRoot "C:\www\directory abc\svn_abc\trunk\httpdocs"
    ServerName localhost
    <Directory "C:\www\directory abc\svn_abc\trunk\httpdocs">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require local
    </Directory>
</VirtualHost>
#<VirtualHost *:8082></VirtualHost>.......
person s6712    schedule 27.10.2012

Я столкнулся с этой проблемой с wamp на Windows 7. Добавление следующего кода в httpd-vhosts.conf решило проблему для меня.

<VirtualHost *:80>
  DocumentRoot "F:/wamp_server/www/"
  ServerName localhost
</VirtualHost>
person Vishal    schedule 07.02.2015

Спасибо за вопрос. Я использую Wamp 3 сейчас. И я нахожу простой ответ на ваш вопрос. Но этот ответ должен немного измениться на wamp 3. Шаги следующие:

  1. Щелкните правой кнопкой мыши значок wamp
  2. Выберите настройку Wamp
  3. Щелкните пункт меню: онлайн / офлайн
  4. Щелкните левой кнопкой мыши значок wamp
  5. Вы обнаружите, что появился новый элемент под названием «Разместить в сети».
person Smart Du    schedule 04.05.2016
comment
Спасибо, @ miltonb. - person Smart Du; 12.01.2017

Мне потребовалась целая вечность, чтобы понять это.

C: \ wamp \ bin \ apache \ apache2.4.9 \ conf \ extra \ httpd-vhosts.conf

В этом файле вы увидите несколько примеров файлов виртуального хоста, которые выглядят так:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

Просто удалите эти записи и замените на:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "C:\wamp\www"
    ServerName localhost
</VirtualHost>

Вам определенно нужно убедиться, что другие ваши утки находятся в ряду, но это для меня с решением, которое сработало.

person Aaron S.    schedule 07.12.2016

привет есть 2 решения:

  1. измените порт 80 на 81 в текстовом файле (httpd.conf) и щелкните 127.0.0.1:81

  2. изменить настройки сети перейти в панель управления - сеть и Интернет - сеть и центр обмена

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

person يوسف الجرعي    schedule 09.05.2012

У меня тоже была эта пробема. Моя проблема возникла из-за ошибки в файле vhosts.conf. Если вы используете vhosts, это еще одна вещь, которую нужно проверить

person Pattle    schedule 03.04.2013

Эта конфигурация в httpd.conf мне подходит.

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1 ::1
</Directory>
person Fabio    schedule 12.04.2013

Убедитесь, что вы не используете символ разделителя каталогов Windows (обратная косая черта) в именах путей в файле .conf, даже если вы работаете в Windows. Apache их не понимает, но все равно запустится, а затем выведет 403 Forbidden Message.

неправильный:

<Directory "c:\websites\my-website\">

правильно:

<Directory "c:/websites/my-website/">
person David Murdoch    schedule 18.04.2013

Удивительно, но квадратные скобки в путях DocumentRoot (и связанных, например ‹Directory›) также могут вызывать ошибку 403:

  • DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master[bang]" не удалось с ошибкой 403, в то время как
  • DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master" работал нормально.

(Я не удосужился выяснить, какой путь Apache экранирует, если он есть, просто вместо этого переименовал путь. Если кто-нибудь знает, комментарии приветствуются.)

person Sz.    schedule 10.05.2013

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

Ive select these files > right click > properities > general tab > andvanced > uncheck encrypt files...

И вуаля работает.

person petkopalko    schedule 17.09.2015

Я перепробовал все, кроме устранения беспорядка в файле .htaccess.

Перейдите в каталог www / и сделайте копию файла .htaccess в другой папке. Затем очистите все строки в исходном файле .htaccess. И добавьте эту строку,

RewriteEngine On

Затем перезапустите сервер. Это решило мою проблему и получил доступ ко всем моим сайтам localhost. Надеюсь, это решит и вашу.

person siddhu151dj    schedule 02.06.2015

Также на Apache 2,4 вам может потребоваться добавить это в директиву каталога в conf, если вы решили включить httpd-vhosts.conf.

По умолчанию вы можете установить Wamp в C: \, но все же выбрать развертывание веб-разработки в другом месте.

Для этого внутри vhosts.conf вы можете добавить эту директиву:

<Directory "e:/websites">
    Options Indexes FollowSymLinks MultiViews
    DirectoryIndex index.php
    AllowOverride All
  <IfDefine APACHE24>
    Require local
  </IfDefine>
  <IfDefine !APACHE24>
    Order Deny,Allow
    Allow from all
    Allow from localhost ::1 127.0.0.1
  </IfDefine>
</Directory>
person amresh tripathi    schedule 09.12.2014

убедитесь, что имя файла в каталоге c:/wamp/apps/phpmyadmin3.1.3.1/ совпадает с именем (или версией) в phpMyAdmin.conf (Alias /phpmyadmin "c:/wamp/apps/phpmyadmin3.1.3.1/")

person M.Yousif    schedule 09.09.2016

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

Alias /phpmyadmin "C:/Program Files (x86)/Ampps/phpMyAdmin"

обратите внимание, я использую усилители, и я не знаю наверняка, подойдет ли он для других, но попробовать стоит;)

person Nik Hendricks    schedule 19.10.2016