apache 如何只允许访问单个文件?

jxct1oxe  于 2023-05-07  发布在  Apache
关注(0)|答案(1)|浏览(165)

我有一台Apache机器,它正在服务一个.js文件。该文件应该是唯一需要查看的文件。
我在我的apache中这样配置:

<Location /var/www/test/test.js>
    Order allow,deny
    Allow from all
</Location>

站点地址为test.in,指向/var/www/test目录中的test.js文件。这很好。但我希望当用户尝试点击test.in/someurl(这是不可用的)或其他一些网址比test.in需要给予一个消息与401错误。
我该怎么做?先谢谢你了。

fslejnso

fslejnso1#

**注:**本答案仅适用于2.2版

如果您使用的是2.4版本,请查看this answer或查看Apache官方文档
你误用了<Location>-参数应该是URI而不是目录路径...您应该使用<Directory>来获得预期的行为。
我会这样做(你应该微调它,它只显示了原理):

# first deny access to everything
<Location />
 Order Deny,Allow
 Deny from All
</Location>

# then allow access to specific URL
<Location /test/test.js>
 Order Allow,Deny
 Allow from All
</Location>

查看订单指令和以下一项或多项:位置、位置匹配、目录、目录匹配、文件、文件匹配等。

相关问题