拒绝直接访问IIS Web服务器中的JavaScript文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拒绝直接访问IIS Web服务器中的JavaScript文件相关的知识,希望对你有一定的参考价值。
我有一个使用php和java脚本的Web应用程序。如果有人试图在浏览器中输入java脚本文件的路径,则会在浏览器中显示完整的java脚本。例如:http://myserver.com/MyApp/app/view/baseView.js,它返回该特定java脚本文件的源代码。
我可以限制吗?我正在使用Windows IIS 7.5 Web服务器。我试过在主web.config文件中这样做:
<security>
<authorization>
<remove users="*" roles="" verbs="" />
<add accessType="Allow" users="" roles="Administrators" />
</authorization>
</security>
但是这段代码阻止了整个应用程序,即使我尝试通过url访问default.php文件时,Web服务器也会返回以下错误:“401 - 未经授权:由于凭据无效而拒绝访问”。
请帮忙 !
答案
您无法阻止对该文件的直接访问。如果您限制对文件的访问,正如您所提到的那样,对于无法访问该js文件的用户,php文件将“中断”。
但是,您可以直接将访问URL的用户重定向到该文件:javascript示例:
<script>
if(window.location.href.endsWith('baseView.js'))
{
window.location = 'www.google.com'
}
</script>
您也可以使用.htaccess文件来执行此操作,这样会更好。 (虽然我现在无法自己测试,但我不确定它是否可行并且不能通过php文件调用)
注意:这绝不会阻止用户阅读Javascript文件,因此我不确定您为什么要这样做。
以上是关于拒绝直接访问IIS Web服务器中的JavaScript文件的主要内容,如果未能解决你的问题,请参考以下文章
IIS Express 在调试 ASP.NET MVC 时出现拒绝访问错误