【问题标题】:"Allow from" in httpd-xampp.conf for ipv6?ipv6 的 httpd-xampp.conf 中的“允许来自”?
【发布时间】:2017-11-04 19:10:58
【问题描述】:

我想保护我的虚拟服务器,以便只能从我的笔记本电脑访问 phpmyadmin。我在 httpd-xampp.conf 中有以下代码,

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">  
        Order deny,allow                                                                             
        Deny from all                                                                                
        Allow from <my_ip_address>
</LocationMatch>

当我到一个新地方时,我通常会在谷歌上搜索“我的 ip 是什么”并获取一个 ip 地址 (ipv4),然后更改“允许来自”行并重新启动 apache。 但是,我到了这个新地方,“我的 ip 是什么”返回一个 ipv6 地址。我把它放进去,它不允许我访问。我搜索了“我的 ipv4 是什么”并获得了一个 ipv4 地址,但也不允许我访问。 我可以让它工作的唯一方法是“允许所有人”。但这违背了整个目的。有人知道我错过了什么吗?谢谢。

【问题讨论】:

    标签: php apache xampp


    【解决方案1】:

    试试这个:

    <LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">                                                                              
            Require ip your_ipv6_address
    </LocationMatch>
    

    【讨论】:

    • 你在apache中开启了双栈模式吗?一个进程用于 ipv4 设备,一个进程用于 ipv6 设备
    • 不知道apache中的双栈模式是什么。网上搜了一下,有人说是通过监听ipv6地址来启用的。但是目前我的httpd.conf文件中有“Listen 80”,如何监听ipv6地址?我不知道如何找到服务器的 ipv6 地址,或者 ipv6 相当于 localhost。看来“Listen 80”只听 ipv4。
    • 双栈模式是指您的 apache 服务器同时为 ipv4 和 ipv6 客户端提供服务。尝试将 Listen [2001:db8::a00:20ff:fea7:ccea]:80 与您当前的 ipv4 配置一起添加,用您的客户端地址替换 ipv6 地址。
    • 你的意思是用我的服务器地址代替ipv6地址吗?你知道如何找到我的服务器 ipv6 地址吗?目前它只说“Listen 80”,我假设是在 ipv4 上监听 localhost 端口 80?或者这是否意味着在端口 80 上监听任何 ipv4?
    • 当然,对不起,我的错误。试试Listen [::0]:80。 Listen 80 应该意味着在端口 80 上侦听任何 ipv4。Listen [::0]:80 与 ipv6 相同。可以一起使用,放在第一个Listen之后就可以了。
    猜你喜欢
    • 2017-10-19
    • 1970-01-01
    • 2019-04-27
    • 2020-12-29
    • 2018-03-03
    • 2012-07-04
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    相关资源
    最近更新 更多