【问题标题】:Allowing to access files in hidden directories on Apache server (especially ".well-known" folder)允许访问 Apache 服务器上隐藏目录中的文件(尤其是“.well-known”文件夹)
【发布时间】:2018-10-23 10:10:21
【问题描述】:

我想通过 webroot 目录“.well-known/acme-challenge”为我的域创建 SSL 证书以进行验证。我使用的是共享主机,我无权访问 apache 配置文件,所以我只能使用 .htaccess 文件。

问题是我无法使用地址“my.domain/.well-known/acme-challenge/filename”从浏览器访问此文件夹中的文件。我只是收到 404 错误,即使我在这个目录中有这些文件。

所以我想知道,如果有任何规则,我可以在 .htaccess 文件中使用它来从浏览器访问隐藏目录。如果您需要更多信息,请告诉我。

【问题讨论】:

    标签: apache .htaccess http-status-code-404 hidden-files


    【解决方案1】:

    假设您的主机允许覆盖,这可能有效:

        <IfModule mod_rewrite.c> 
            RewriteCond %{REQUEST_FILENAME} !.well-known/
            RewriteRule "(^|/)\.(?!well-known)" - [F]
        </IfModule>
    

    【讨论】:

    • 我试过这个,但它不起作用,所以我假设我的主机不允许覆盖:/ 只是为了确保,我应该把它放在根文件夹的 .htaccess 中,对吧?
    • 是的。一些提供商还故意阻止 .well-known,因为他们希望看到您的证书。我认为再也没有人这样做了,但有可能吗?
    • 我怀疑他们是否故意阻止 .well-known,因为他们没有阻止将您自己的证书放入 DirectAdmin 的可能性,而我可以使用 DNS 记录进行验证,但我有自己的理由,为什么我不想那样做,至少现在:/
    • 事实证明,他们在更便宜的计划中阻止了此文件夹 - 在更昂贵的计划中,您可以自动生成 Let's Encrypt 证书并自动更新它。在更便宜的计划中,您只能使用 DNS 记录验证您的证书。不过感谢您的帮助:)
    猜你喜欢
    • 2016-08-31
    • 1970-01-01
    • 2017-07-08
    • 1970-01-01
    • 2021-03-19
    • 1970-01-01
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多