【问题标题】:Allow access to phpmyadmin from localhost only只允许从 localhost 访问 phpmyadmin
【发布时间】:2020-03-07 03:06:40
【问题描述】:

我正在尝试将我的服务器 phpmyadmin 配置为仅从本地主机访问,而不是从远程访问。下面是服务器/etc/phpmyadmin/apache.conf上的配置

 Alias /phpmyadmin /usr/share/phpmyadmin

 <Directory /usr/share/phpmyadmin>
   Order deny,allow
   Deny from all
   Allow from 127.0.0.1

   Options FollowSymLinks
   DirectoryIndex index.php

</Directory>

所以,当我从远程访问 phpmyadmin 时,我得到了 403 禁止,这很好但是当我从本地主机(即使用远程桌面的服务器)访问 phpmyadmin 时,我仍然得到 403,而我认为这应该可以访问 phpmyadmin从本地主机。我在这里缺少什么吗?

谢谢

【问题讨论】:

    标签: apache localhost


    【解决方案1】:

    我猜你使用的是 Apache 2.4.x。访问控制的语法在 2.2 和 2.4 之间发生了变化。您使用的 OrderDeny 语法适用于 Apache 2.2,但不适用于 2.4。在 2.4 中会是这样的:

    <Directory /usr/share/phpmyadmin>
        Require ip 127.0.0.1
        Options FollowSymLinks
        DirectoryIndex index.php
    </Directory>
    

    Reference from Apache upgrade docAccess Control docs

    【讨论】:

    • 谢谢。是的,我使用的是 Apache 2.4.18。我已根据您的上述答案进行了更改并重新启动了 apache。我仍然无法访问 phpmyadmin。
    • @Don'tPanic 不要使用Require ip 127.0.0.1,它不可靠。使用Require local
    • @Chi.C.J.RajeevaLochana 参考?我提供的两个链接都显示使用Require ip;升级文档使用Require ip 127.0.0.1。两者都没有提到任何不可靠性。
    • @user254153 Apache 是否工作,例如http://localhost/?您如何尝试访问 PHPMyAdmin?而且,为了确定,Still I am not able to access 到底是什么意思? Apache 日志显示什么?
    • 我的意思是在提到的更改后我仍然收到 403 禁止错误。
    【解决方案2】:

    我认为这应该可行,并使其只能在本地访问,它应该主要是这样的,但是:

    <Directory /usr/share/phpmyadmin>
        Require local
        #......otherthings (also, only copy the line Require local)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-28
      • 2015-11-08
      • 2012-09-18
      • 1970-01-01
      • 2015-02-05
      • 1970-01-01
      • 1970-01-01
      • 2017-12-24
      相关资源
      最近更新 更多