.htaccess Htaccess拒绝访问供应商但允许scss文件

vnzz0bqm  于 2023-06-24  发布在  其他
关注(0)|答案(1)|浏览(141)

我在apache v2.4的htaccess文件中添加了一个限制。我想阻止对/vendor/文件夹和所有子文件/文件夹的所有访问,但允许仍加载scss文件。
下面是我尝试过的代码:

<If "%{REQUEST_URI} =~ m#^/vendor(/.*|$)#">
   <Files ".scss">
       Require all granted
    </Files>
    <Files ".*">
       Require all denied
    </Files>
</If>

它似乎阻止了文件夹并返回403错误,但如果我试图在浏览器中访问它们,所有文件仍然会加载。
知道我哪里做错了吗
我想也许我可以使用这个目录示例作为替代方法,但这导致了一个500错误。

<Directory "/httpdocs/vendor">
    satisfy any
    deny from all
    allow from 192.168.0.1/27
</Directory>
9rbhqvlz

9rbhqvlz1#

你可以这样使用它:

# deny all files in /vendor/
<If "%{REQUEST_URI} =~ m#^/vendor/#">
   Require all denied
</If>

# all access to /vendor/*.scss
<If "%{REQUEST_URI} =~ m#^/vendor/.+\.scss$#">
   Require all granted
</If>

相关问题