这篇文章需要有经验的iis管理员的帮助,但必须详细解释EXTREME新手。
我在做什么:
C:\的Inetpub \ ROOT \ myWebsite \ myIndex.html 的web.config
我所做的改变 - 现在出现了一些问题。
在两台计算机上,我删除了DefaultAppPool和随iis一起安装的默认网站。这并没有阻止网站完全正常工作,所以添加回来似乎不太可能解决我的问题。
我已经从iis删除了我的应用程序池和网站(从不删除文件系统中的实际文件)几次,并添加了几次。每次我这样做,我的网站都会回来,但我遇到同样的问题。
我删除了所有默认文档,iis中列出的唯一默认文档是myIndex.html。
myIndex.html最初显示图形图像(使用标准标签),此图像出现。有点。见下面的解释。
我遇到的问题
在我开始这个项目之前,我让iis在桌面上使用默认的网站和应用程序池,并简单地添加了一些我自己的文件,其中包含非常简单的文本内容和一些图片。我用自己的图像替换了默认的iis启动图像,所有这些都没有问题。
出现的图像是指向另一个页面的链接,该页面包含指向我网站中其他内容的链接列表。这一切都没有问题。
现在,通过我现在的设置,在我最初使用的桌面上(在上面的段落中),如果我在本地提取我的网站,myIndex.html在浏览器中加载并且我的图像出现,一切正常
当我在本地访问该网站时,笔记本电脑也是如此。
但是,如果我尝试从笔记本电脑访问桌面站点(使用其IP地址),它会从我删除的默认站点中提取旧的启动图像。(我将这些文件保留在那里,即使我从在iis内)。所有这些文件都位于默认位置C:\ inetpub \ wwwroot。
如果我将这些文件移动到另一个目录,从而使C:\ inetpub \ wwwroot完全为空,那么当我从笔记本电脑访问桌面上的网站(通过ip地址)时,我的新网站出现没有问题
虽然看起来我可能已经通过从前一个项目中移动文件来解决我的问题,但这样做并不能告诉我iis实际上是如何工作的,以及为什么来自iis中不再存在的网站的文件仍然是从远程计算机。
所以,请教我一些关于iis内部工作原理的信息,以及它如何选择访问不同的应用程序池和网站。
再次,请为完整的新手说出你的答案,因为我知道一点但不足以获得真正的技术。
我一直在阅读stackexchange.com和其他网站上的帖子;链接到微软文档等等。由于这些文档期望过多的必备知识,而且用不能用我能理解的方式解释事物的语言来说,这并没有帮助。
答案 0 :(得分:0)
您已经描述了几个不同的问题。我将尝试解决它们中的每一个(与S / O建议相反)。
首先,当您进行更改并且它们似乎没有出现时,通常是因为缓存。 IIS总是希望缓存文件/配置。你的网络浏览器也是如此。因此,要强制进行准确的测试,您需要转储浏览器缓存并循环IIS(以确保它删除缓存并加载新文件和配置)。从那里开始。
其次,IIS专为设置继承而设计。这意味着,每个应用程序和每个文件夹都将继承父级的设置和权限,除非您覆盖它们。覆盖它们可以通过文件和/或IIS配置(应用程序与文件夹)完成。 IIS配置是两者中最强的。
此外,“默认文件”的IIS配置可能已经为您的测试发挥作用。如果您没有将MyIndex.html设置为最顶层的默认文件,那么IIS将首先查找其他文件。实际上,如果您在默认文件列表中没有MyIndex.html,则IIS必须依赖您的应用程序来选择它作为默认页面(MVC路由等)。