【问题标题】:httpd block access for all file types in a directory but allow access to a single file.httpd 阻止对目录中所有文件类型的访问,但允许访问单个文件。
【发布时间】:2017-12-14 15:38:22
【问题描述】:

在我的站点中,我有一个目录 /here/is/the/dir/path

我想允许访问子目录中的单个文件 示例:test/testfile.xml 但想拒绝访问其他文件列表(jsp、class、jar、xml)

我有这个我想放在 httpd.conf 中

    <Directory /here/is/the/dir/path >

    <FilesMatch "test.xml">
    Order Allow,Deny 
    Allow from All 
    Deny from None 
    </FilesMatch>

    <FilesMatch "+\.(jsp|class|jar|xml)">
    order allow,deny
    deny from all
    </FilesMatch>

    </Directory>

这是正确的写法吗?有没有办法将我的两个文件匹配语句组合成一个语句?

【问题讨论】:

  • 我想我应该添加 节,并且第二个文件匹配已经到位,并且按预期阻止了对文件的访问。我想允许访问一个文件,因此在我的 sn-p(上图)中添加了第一个文件匹配,但我不确定这是否是正确的方法,或者是否有更有效的方法来做到这一点。
  • 如果它只是子目录中的单个文件,是的,您应该在其中添加目录和 FilesMatch 语句以获得确切的文件。但是,即使您当前的配置更通用一点,它也是正确的,您不必担心让它变得更好,最重要的是,它对您来说是有意义的,这才是真正重要的。
  • 感谢@ezra-s,它已到位并按预期工作。我不确定如何关闭没有答案的问题。我应该发布一个答案并接受它吗?
  • 是的,自己回答,这样它就不会显示为未回答

标签: apache httpd.conf


【解决方案1】:

所述方法已经过测试并且正在运行。

【讨论】:

    猜你喜欢
    • 2011-09-26
    • 1970-01-01
    • 2014-06-04
    • 2016-10-24
    • 2020-04-15
    • 2012-09-29
    • 1970-01-01
    • 2014-01-22
    • 2011-02-10
    相关资源
    最近更新 更多