为什么在IIS下面能访问一个不存在的路径?
首先可以很明确的告诉你,在IIS下是无法访问一个不存在的路径的。你之所以觉得IIS能访问一个不存在的路径,那是因为站点使用了“虚拟目录”功能,所以造成了这种错觉。
IIS站点无法绑定不存在的目录也无法访问一个不存在的路径我们知道,每个IIS站点都会对应服务器上的一个站点目录,而在IIS上对站点进行目录绑定时,如果指定的目录是不存在的,则无法绑定成功。
如果我们访问站点下的一个不存在的文件或目录,此时服务器会返回404错误码(即文件未找到)。
IIS虚拟目录IIS有“虚拟目录”的功能,通过此功能可以将一个虚拟的目录加入到站点路径中,但这只是逻辑上的添加,在站点物理路径下其实并没有这个目录的存在!下面具体演示下IIS虚拟目录的功能。
1、新建测试站点
为便于测试,我新建了一个站点(demo),它对应的站点目录是C:\inetpub\wwwroot 。
2、创建虚拟目录
我们在IIS管理器中右击站点,从弹出菜单里选择“添加虚拟目录”,如下图示:
在弹出的“添加虚拟目录”窗口中,我们创建一个名为“abc”的虚拟目录并指向实际路径C:\test,如下图示:
确定完成后,我们可以看到demo站点里多了一个abc目录,看上去像Windows的快捷方式一样,如下图示:
3、访问虚拟目录下的文件
以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有