Ошибка WAMP: запрещено У вас нет прав доступа к / phpmyadmin / на этом сервере

275

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

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

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

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

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

Нистор Александру
источник
57
Будьте осторожны с принятым ответом, phpmyadmin WAMP настроен на разрешение root без пароля по умолчанию. Allow from allоткроет базу данных для общественности. Настоящая проблема заключается в том, что WAMP привязывается к IPv6-адресу в вашей версии Windows. Чтобы исправить просто добавить Allow from ::1в c:\wamp\alias\phpmyadmin.conf <Directory "c:/wamp/apps/phpmyadmin3.4.5/">.
Tiberiu-Ionuț Stan
2
Странно, но этот же вопрос, «дай или возьми», защищен как вики сообщества
ruffin

Ответы:

368

Измените содержимое файла 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 (ваш локальный хост).

Настоящая проблема заключается в том, что 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 после внесения этих изменений.

Ахил Тайиль
источник
1
Ранее это будет запретить все. Разрешить с 127.0.0.1. После изменения перезапустите службу сервера Apache
Akhil Thayyil
2
зависит от вашей версии apache. apache> 2.4.x, вам нужен другой конфиг. см. мой ответ ниже
Кайл
Кажется, причина того, что по умолчанию было установлено значение 127.0.0.1, заключается в том, что это адрес localhost ipv4. По какой-то причине, даже если вы находитесь на локальном хосте, phpmyadmin не позволяет вам войти. Затем вы позволяете любому пользователю получить доступ. Это не похоже на уязвимость системы безопасности, если вы не включите свой веб-сайт. Хотя я могу ошибаться - полный новичок. На самом деле да, прочитайте остальную часть темы. Не делайте вышеуказанное исправление.
obesechicken13
3
Phpmyadmin WAMP настроен для разрешения root без пароля. Allow from allоткроет базу данных для общественности.
Tiberiu-Ionuț Stan
34
Настоящая проблема заключается в том, что wamp привязан к IPv6-адресу. Исправление: просто добавьтеAllow from ::1
Tiberiu-Ionuț Stan
137

Надо просто проверить, есть ли у тебя WAMP подключен сервер сети.

Чтобы подключить сервер WAMP к сети, выполните следующие действия.

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

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

Mehul
источник
4
«Только последние версии» быстро устаревают. Вы находитесь в мире ИТ, поэтому, пожалуйста, укажите номер версии. Плюс это не сработало для меня вообще. Всегда имейте его онлайн, запуская его как администратор. Хуже того, некоторые домены работают с использованием виртуальных хостов, но не могут даже получить доступ к localhost или 127.0.0.1, или с помощью * / phpmyadmin: s Глупо странно. Это на Win8 кстати. Может иметь какое-то отношение к установленной 64-
разрядной
1
Боже мой, я чувствую себя глупо. Я потратил довольно много времени на возня с "Требовать все предоставлено" и т. Д. Спасибо.
Джон МакКоллум
Опция Put Online теперь недоступна. Чтобы включить его, щелкните правой кнопкой мыши на значке Wamp> Настройки Wamp> Проверьте пункт меню: Online / Offline, когда вы теперь щелкните левой кнопкой мыши на значке, будет доступна опция «Положить в сети»
Oush
117

Если вы используете 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>

* как указано в этом блоге

рукав моря
источник
1
Запрещено У вас нет прав доступа к / phpmyadmin / на этом сервере.
Хасан Z
Ваш ответ должен был быть лучшим ответом! работал как шарм :)
Tohid
Это сработало для меня. WAMP Server 2.2; Apache 2.4.2; Windows 8.
Майкл J
Спасибо, это сработало для меня (в отличие от других ответов, в том числе принятых)
Патрик Мур
В моем WAMP было установлено значение <Directory />, и это работало до тех пор, пока мне не пришлось сменить папку на папку Dropbox. Почему было установлено <Directory />? Это решение прекрасно работает, однако.
Йенс Торнелл
41

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

система:

  • Windows 7
  • wampserver2.2d-x64

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

http://127.0.0.1/phpmyadmin/

Этот провал:

http://localhost/phpmyadmin/
Mudx
источник
3
Причина в том, что localhost разрешается как адрес IPv6, тогда как конфигурация wamp по умолчанию разрешает только адрес обратной петли IPv4.
Шерброу
35

У меня просто была такая же проблема. Оказывается, моя установка 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строку выше, иначе любой пользователь в вашей сети сможет получить доступ к вашему веб-серверу (если, конечно, это не то, что вам нужно).

Micke
источник
Кстати, мне также пришлось внести это изменение во все псевдонимы. Чтобы изменить псевдонимы, перейдите по ссылке: «[значок wamp] -> Apache-> Каталоги псевдонимов -> [alias-url] -> изменить псевдоним»
Микке
Я выполнил ping localhostна моем терминале cmd и получил Reply from ::1: time<1ms. Кажется, мой компьютер с Win7 разрешает localhost с IPv6-адресом. Ваше решение помогло. Я согласен, это, вероятно, должен быть принятый ответ.
Крис
Потрясающие!!!! У меня была такая же проблема на моем Mac (MAMP), и теперь она работает! Ты спас мой день, чувак!: D
drpelz
У httpd.confменя не работает In , вместо этого, когда я делаю то же самое в phpmyadmin.confнем работает!
Адил
1
Я думаю, что этот ответ должен быть отредактирован, так как правильный файл для редактирования wamp/alias/phpmyadmin.conf, а неhttpd.conf
bg17aw
21

Если вы работаете в 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)

matalo
источник
1
Спасибо. Это должен быть главный комментарий. Вы объясняете проблему, решаете ее и не представляете серьезную уязвимость безопасности для чьего-либо сервера.
obesechicken13
1
У меня есть решение в виде отдельной и дополнительной строки. Я использую « Allow from 127.0.0.1следующую строку Allow from ::1». На всякий случай он переключается обратно на IPv4 (потому что, скажем, я отключаю IPv6)
rkeet
9

+ Изменить

Listen 80 

в

Listen 127.0.0.1:80 

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

Натвар Сингх
источник
8

Я обнаружил, что использование 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

jamesTheProgrammer
источник
1
Это, вероятно, потому что у вас нет правильно настроенного файла HOSTS, установите его правильно, и вы сможете использовать localhost
RiggsFolly
8

Для Apache 2.4.2:

В httpd.conf:

+ Изменить

Require local

в

Require all granted
CairoCoder
источник
1
Братан, ты сделал мой день :)
droidchef
7

Я хотел запустить свой сервер в сети, а не под 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

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

Удачи.

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

Микель
источник
Вы, сэр, решили проблему, которую я потратил на выходные, пытаясь ее решить. Спасибо!
Ястреб
6

1. изменить D: \ wamp \ bin \ apache \ apache2.4.9 \ conf \ httpd.conf возле строки 279

Require local 

 into 

Require all granted

2. измените это в D: \ wamp \ alias \ phpmyadmin.conf из существующего

   <Directory "d:/wamp/apps/phpmyadmin4.1.14/">
       Options Indexes FollowSymLinks MultiViews
       AllowOverride all
       Require all granted
       Order Deny,Allow
       Allow from all
   </Directory>

3.Нажмите « Перезапустить все службы в wamp».

4.Нажмите « поставить онлайн» в Wamp.

5. Снова нажмите, чтобы перезапустить все службы в wamp.

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

Prabhagaran
источник
4

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

Если вы устанавливаете WAMP в C: \ wamp

1- Откройте файл C: \ wamp \ bin \ apache \ apache2.2.22 \ conf \ httpd.conf

Примечание : у вас может быть другая версия Apache, чем Apache 2.2.22 , поэтому вам нужно написать ее вместо.

Поиск: Каталог "C: / wamp / www /" . Вы найдете что-то похожее на это:

<Directory "C:/wamp/www/">
   # maybe there is some comments here ...
    AllowOverride all
    Order Allow,Deny
    Allow from all
</Directory>

Убедитесь, что Allow from all существует и не закомментирован.

2- Откройте файл C: \ wamp \ alias \ phpmyadmin.conf .

Удостоверься что

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

Измените Разрешить с 127.0.0.1 на Разрешить от всех .

Вы можете удалить Deny из всех или закомментировать его, добавив # в начале строки, но вы должны убедиться, что Allow from all - последняя строка кода перед этим </Directory>.

Примечание: у вас может быть другая версия, чем phpMyAdmin 3.5.1.

Чтобы использовать localhost / phpmyadmin вместо 127.0.0.1/phpmyadmin :

Откройте файл C: \ wamp \ bin \ apache \ apache2.2.22 \ conf \ extra \ httpd-vhosts.conf. Добавьте следующее в конце.

<VirtualHost *:80>
    DocumentRoot "C:/wamp/www"
    ServerName localhost
</VirtualHost>
Усама Сулейман
источник
Это работает. Спасибо за большое.
ajey
3

Простое решение этого было бы найти файл phpmyadmin.conf, а затем найти ниже код внутри него,

<Directory "c:/wamp/apps/phpmyadmin3.5.1/">

Options Indexes FollowSymLinks MultiViews

AllowOverride all

    Order Deny,Allow

Deny from all

Allow from 127.0.0.1

</Directory>

Измените «Запретить все» на «Разрешить все».

ИЛИ

Перейдите по ссылке ниже, чтобы лучше понять, как это сделать,

WAMP говорит, что запрещено. У вас нет прав доступа к / phpmyadmin / на этом сервере Windows 7 или 8

Наслаждаться :)

Умеш Патил
источник
3

Если WampServer работает на компьютере, он установлен, но не на другом устройстве в вашей сети (например, с вашего телефона) с «У вас нет прав доступа на этом сервере». попробуйте следующее.

1. Отредактируйте httpd-vhosts.conf ( C:\wamp64\bin\apache\apache2.4.33\conf\extra\httpd-vhosts.conf), чтобы он выглядел так:

<Directory "${INSTALL_DIR}/www/">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require all granted
</Directory>

2. Отредактируйте phpmyadmin.conf ( C:\wamp64\alias\phpmyadmin.conf), чтобы он выглядел так:

<Directory "d:/wamp64/apps/phpmyadmin4.7.9/">
    Options +Indexes +FollowSymLinks +MultiViews
    AllowOverride all
        Order Deny,Allow
        Allow from all
        Require all granted

3. Перезапустите сервисы WampServer.

образование
источник
для меня применение шага 1 (и 3) было все, что нужно. Это не недостаток, это дизайн. Для получения наилучших результатов см stackoverflow.com/questions/36810669/...
ГиперАктив
2

Для Apache 2.4.2 решение заключается в следующем: в httpd.conf в строке 265 измените Require none на Требовать всех предоставленных. Вот и все.

Ильче МКД
источник
2

Я закомментировал строку :: 1 в моем файле hosts.

obesechicken13
источник
2

Даже я столкнулся с той же проблемой с моим доменом. Если бы я дал IP-адрес, он работал. Но с доменным именем этого не было.

Затем я проверил мою запись DNS A . Домен имел несколько записей с разными IP-адресами. Я удалил все неправильные значения, и это сработало. Еще один контрольный список, если кто-то сталкивается с подобной проблемой.

Срихари Карантх
источник
2

Просто отредактируйте файл "c: \ wamp \ alias \ phpmyadmin.conf"

как это

<Directory "C:/wamp64/apps/phpmyadmin4.5.5.1/">
    Options Indexes FollowSymLinks MultiViews

    AllowOverride All
    Require all granted
</Directory>
Даниил
источник
C:/wamp64/apps/phpmyadmin4.5.5.1/это не файл, и на этот вопрос уже было принято решение. Пожалуйста, постарайтесь не «задевать» вопросы на вершину, предоставляя ответы на них, если только вопрос не был помечен как решенный, или вы не нашли значительно лучший альтернативный подход к проблеме :)
Обсидиановая эпоха,
Ни одно из решений не помогло мне. Я отредактировал правильный путь к файлу, спасибо за подсказку.
Даниэль
2

В WAMP 3.1.4 x64я решил обновить файл C:\wamp64\alias\phpmyadmin.confиз этого:

Alias /phpmyadmin "c:/wamp64/apps/phpmyadmin4.8.3/"

<Directory "c:/wamp64/apps/phpmyadmin4.8.3/">
    Options +Indexes +FollowSymLinks +MultiViews
  AllowOverride all
  <ifDefine APACHE24>
        Require local
    </ifDefine>
    <ifDefine !APACHE24>
        Order Deny,Allow
    Deny from all
    Allow from localhost ::1 127.0.0.1
    </ifDefine>

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

к этому:

Alias /phpmyadmin "c:/wamp64/apps/phpmyadmin4.8.3/"

<Directory "c:/wamp64/apps/phpmyadmin4.8.3/">
    Options +Indexes +FollowSymLinks +MultiViews
  AllowOverride all
    Require all granted

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

И, наконец, перезапустить все службы WAMP.

madx
источник
1

В моем случае проблема была в том, что версия phpMyAdmin была неверно указана в phpmyadmin.confфайле. Вы можете проверить, что:

  1. Зайдите в wamp / apps / phpmyadmin3.xx : обратите внимание на имя файла - какую версию вы используете в настоящее время?

  2. Откройте файл wamp / alias / phpmyadmin.conf:

    Параметры Индексы FollowSymLinks MultiViews AllowOverride all Order Deny, Allow Allow from all

Убедитесь, что в первой строке (каталог "c: /wamp/apps/phpmyadmin3.xx/") имя файла точно совпадает с вашим действительным именем.

Убедитесь, что имя файла каталога является абсолютно правильным.

the_summer_bee
источник
0

Что происходило с моей настройкой, так это то, что WAMP привязывался к IPv6-адресу (и каждый раз, когда я переустанавливал WAMP).

Чтобы исправить это, я вошел c:\wamp\alias\phpmyadmin.confи добавил строкуAllow from ::1

Лонг Дао
источник
0

Причина может быть 127.0.0.1 не связана с localhost. Проверьте файл 'C: \ Windows \ System32 \ drivers \ etc \ hosts'. Она должна иметь такую ​​строку:

# Разрешение имени локального хоста обрабатывается в самом DNS.
127.0.0.1 localhost

аспирин
источник
0

Я пытался установить свой пароль ... И вот как я был заблокирован от localhost. Они должны это исправить ...

В любом случае, будьте осторожны со случайными советами. Все они могут или не могут работать. Но некоторые советы заблокируют вас еще больше. Тот, который работал для меня:

Введите " http://127.0.0.1/phpmyadmin/" в адресной строке.

Потом я обнаружил, что это http://localhost/phpmyadmin/тоже работает.

Однако до этого из отчаяния у меня было ...

Я удалил файлы, удалил WAMP, удалил временные куки и снова установил WAMP. Он по-прежнему не принимает "localhost" (и я устал после дня, пытаясь получить доступ к WAMP), но 127.0.0.1 и localhost / phpmy ... работают. Я рад видеть страницу назад. И начать работать снова.

Если вы читаете эту ветку до конца, значит, у вас, вероятно, большая проблема ... Windows 8, WAMP (wampserver 2.2). Интересно, для чего нужно вернуть обратно доступ к localhost.

user2060451
источник
0

В моем случае сервер WAMP был установлен ранее на моем компьютере, поэтому при установке нового файла некоторые файлы не перезаписываются, все, что вам нужно сделать, это зайти в C: \ и удалить всю папку WAMP, а затем установить его снова. ,

Refaat
источник
0

Проверьте, вошли ли вы в систему как root или пользователь с привилегиями. Просто чтобы быть уверенным, выйдите и войдите снова с root / no-password.

ObiVanKaPudji
источник
0

Если ваш значок WAMP не зеленый, попробуйте: щелкните левой кнопкой мыши значок WAMP> MySQL> Сервисы> Установить сервис

aeroson
источник
0

Таким образом, все эти ответы в основном одинаковы. Они касаются только одной идеи: это должен быть DNS связано с . Ну, это не единственная часть этого, оказывается. После многих изменений я нигде не читал следующий «тот же ответ», надеясь, что он просто пойдет мне по пути.

Что помогло мне, так это настроить мои версии Apache . Я думаю, что дело было в том, что один из файлов конфигурации получил путь или что установка из-за IIS могла быть испорчена /или /или /etc. И поэтому принудительное изменение версии переадресует все, начиная с вашего брандмауэра и заканчивая плохими конфигурациями.

На самом деле, когда я снова переключился на Apache 2.4.2, он снова стал запрещенным. И как только я возвращаюсь к Apache 2.4.4, он возвращается. Это исключает проблемы локальной сети. Я просто хотел указать, что все ответы здесь одинаковы и что я смог убить запрещенное, изменив версию Apache.

jeremy.bass
источник
0

У меня такая же проблема. Файл хостов поврежден! существовал:

localhos 127.0.0.1

localhost 127.0.0.1

localhos 127.0.0.1
localhos 127.0.0.1

Результатом является то, что localhost не определено.

Решение: отредактируйте файл hosts с правами администратора и исправьте только одну запись:

localhost 127.0.0.1
гость
источник
0

В последней версии WAMP у меня почему-то было «отрицать все» в моем .htaccessфайле. Если больше ничего не работает, пожалуйста, проверьте там тоже.

obesechicken13
источник
0

В моем случае при использовании Wampserver 3 64bit version 3.0.0 путь к каталогу phpmyadmin4.5.2 в файле phpmyadmin.conf был неправильным. По некоторым причинам каталог приложений находится внутри каталога скриптов. Поэтому я ввел правильные пути, как показано ниже. Тогда вам, вероятно, нужно перезапустить Apache и перезагрузить страницу.

Я изменился:

Alias /phpmyadmin "C:/wamp64/apps/phpmyadmin4.5.2/"

<Directory "C:/wamp64/apps/phpmyadmin4.5.2/">
    Options Indexes FollowSymLinks MultiViews
  AllowOverride all
    Require local

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

Для того, чтобы:

Alias /phpmyadmin "C:/wamp64/scripts/apps/phpmyadmin4.5.2/"

<Directory "C:/wamp64/scripts/apps/phpmyadmin4.5.2/">
    Options Indexes FollowSymLinks MultiViews
  AllowOverride all
    Require local

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>
Барракуда
источник