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

sri*_*ram 5 apache

我有一台正在提供.js文件的apache机器.该文件应该是唯一需要查看的文件.

我已经配置为在我的apache中这样做:

<Location /var/www/test/test.js>
    Order allow,deny
    Allow from all
</Location>
Run Code Online (Sandbox Code Playgroud)

站点地址test.in指向目录中的test.js文件/var/www/test.这工作正常.但我希望当用户尝试点击test.in/someurl(不可用)或其他一些网址时,test.in不需要提供401错误消息.

我怎么做?提前致谢.

Kam*_*rot 13

你误用了<Location>- 参数应该是URL而不是目录路径...你应该<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>
Run Code Online (Sandbox Code Playgroud)

查看Order指令以及以下一项或多项:Location,LocationMatch,Directory,DirectoryMatch,Files,FilesMatch等.