Ошибка WAMP: запрещено У вас нет прав доступа к / phpmyadmin / на этом сервере - PullRequest
270 голосов
/ 03 декабря 2011

Я новичок в WAMP , и я только что установил его сегодня.

Настройка прошла успешно, и localhost работает, но когда я пытаюсь получить доступ к phpMyAdmin Я получаю эту ошибку:

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

Почему я получаю это сообщение об ошибке доступа с помощью phpMyAdmin?

Я использую Windows 7.

Ответы [ 33 ]

364 голосов
/ 03 декабря 2011

Измените содержимое файла c:\wamp\alias\phpmyadmin.conf на следующее.

Примечание. В целях безопасности вы должны установить директиву Allow, разрешающую доступ с локального компьютера.Директива Allow from all небезопасна и должна быть ограничена вашим локальным компьютером.

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

Здесь моя установка WAMP находится в папке c:\wamp.Измените его в соответствии с вашей установкой.

Ранее это было примерно так:

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

Современные версии Apache 2.2 и выше будут искать петлю IPv6 вместо петли IPv4 (ваш localhost).

Реальная проблема заключается в том, что wamp привязывается к IPv6-адресу.Исправление: просто добавьте Allow from ::1 - Tiberiu-Ionuț Stan

<Directory "c:/wamp22/apps/phpmyadmin3.5.1/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
    Deny from all
    Allow from localhost 127.0.0.1 ::1
</Directory>

Это позволит только локальному компьютеру получать доступ к локальным приложениям для Apache.

Перезагрузите сервер Apache послевнесение этих изменений.

135 голосов
/ 06 марта 2012

Вам нужно просто проверить, подключен ли ваш сервер WAMP к сети или нет.

Чтобы перевести сервер WAMP в оперативный режим, выполните следующие действия.

  1. Перейтина значок уведомления вашего сервера WAMP (в панели задач).
  2. Один щелчок по значку сервера WAMP.
  3. Выберите последний параметр в меню, то есть Перевести в сеть
  4. Ваш сервер перезагрузится автоматически (только в последних версиях).В противном случае вам придется перезагрузить сервер вручную.

И вы СДЕЛАНЫ ...

114 голосов
/ 20 июня 2012

Если вы используете WAMP с Apache 2.4.2 или выше, вам нужно использовать Require all вместо Allow и удалить Order Deny,Allow:

<Directory "f:/Projects/myproject/www/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Require all granted
</Directory>

*, как указано в этом сообщение в блоге

41 голосов
/ 01 мая 2012

Просто используйте 127.0.0.1 вместо localhost (никаких изменений в файле конфигурации не требуется).

Система:

  • Windows 7
  • wampserver2.2d-x64

Это работает:

http://127.0.0.1/phpmyadmin/

Этот провал:

http://localhost/phpmyadmin/
35 голосов
/ 15 июня 2012

У меня просто была такая же проблема.Оказывается, моя установка Windows использует IPv6 адрес ::1 вместо 127.0.0.1.Чтобы решить эту проблему, я открыл httpd.conf и изменил следующую строку:

Allow from 127.0.0.1

на:

Allow from 127.0.0.1 ::1

Теперь я могу получить доступ к серверу через localhost.Что бы вы ни делали, не удаляйте Deny from all from строку выше, иначе любой пользователь в вашей сети сможет получить доступ к вашему веб-серверу (если, конечно, это не то, что вам нужно).

21 голосов
/ 21 декабря 2012

Если вы работаете в Windows 7 или 8, то Apache может видеть соединения, исходящие из ":: 1", что эквивалентно IPv6 127.0.0.1.

Вы можете проверить это, просмотрев журнал доступа Apache (доступный из меню WAMP)

::1 - - [20/Dec/2012:21:35:04 +0000] "GET /phpmyadmin/ HTTP/1.1" 403 213

:: 1 в начале - это адрес клиента. 403 в конце - это код отказа в доступе.

Ответы выше снимают все ограничения и открывают phpmyadmin для всех, но если вы все еще хотите ограничить phpmyadmin только для вашей машины (как правило, хорошая идея), то под строкой ...

Allow from 127.0.0.1

.. добавить следующее:

Allow from ::1

(редактировать: добавлено предложение от Nukeface)

9 голосов
/ 02 января 2013

Изменение

Listen 80 

до

Listen 127.0.0.1:80 

в вашем файле httpd.conf. Он будет связывать Apache с конкретным IP-адресом и портом.

8 голосов
/ 10 апреля 2012

Я обнаружил, что использование localhost не будет работать должным образом, чтобы разрешить локальный доступ с сервера. Мне пришлось использовать 127.0.0.1.

В phpmyadmin.conf это не сработало:

Deny from all
Allow from localhost

это сработало:

Deny from all
Allow from 127.0.0.1

Я использую WampServer версии 2.2

7 голосов
/ 16 ноября 2012

Я хотел запустить свой сервер онлайн, а не под localhost / 127.0.0.1, и получил запрещенное сообщение.Я использую сервер WAMP 2.2 ( Apache 2.4.2 / PHP 5.4.3 / MySQL 5.5.24) в 64-разрядной версии Windows 7.Для меня сработало следующее:

  1. Нажмите значок запуска WAMP в меню
  2. Выберите папку Apache
  3. Выберите файл httpd.conf
  4. В разделе вкладки «Справочник» (раздел с текстом «# Online -> Требовать все предоставленные») у меня была опция «Требовать локальную», которую я изменил на «Требовать все предоставленные»
  5. Перезапустите все службыWAMP

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

Удачи.

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

7 голосов
/ 31 мая 2013

Для Apache 2.4.2:

В httpd.conf:

Изменить

Require local

на

Require all granted
...