IIS 7:值不在预期范围内

问题描述 投票:10回答:9

当我尝试在我的本地计算机(在Windows 7上运行)上启动我的IIS服务器时,它给出了一个错误说:

价值不在预期范围内

我已经尝试了一些事情来纠正这个问题,但没有成功。最后我在我的机器上重新安装了IIS服务器,但问题仍然存在。

有没有人对这个错误有任何想法?我该如何解决?

iis iis-7 windows-7-x64
9个回答
19
投票

我发现,这个问题是由于IIS中的visual studio创建了错误的虚拟目录而导致默认网站无法启动。

我为解决这个问题做了什么,我删除了我的默认网站并在IIS中再次创建。之后我创建了应用程序的特定虚拟目录。这解决了我的问题。仍然不知道为什么默认网站在Visual Studio创建的错误虚拟目录后停止工作。

希望这对那些面临这个问题的人有所帮助。


0
投票

在我使用自动构建和部署系统(TeamCity with Octopus deploy)之前,我已经收到此错误消息。事实证明,我在Octopus Deploy变量中为IIS指定的端口号太高了。

从我在这个web site上可以找到的,IIS将接受的最高端口号是65535。


6
投票

我在IIS 8.5中遇到此问题,该问题最终成为绑定中主机名的不完整条目。我没有在FQDN上包含.com。


3
投票

我有这个问题,为网站设置特定帐户运行为..

如果直接在applicationHost.config中设置密码,它就会消失。虽然IIS不能再做了..

在:C:\ Windows \ System32 \ inetsrv \ config

可能有帮助。


3
投票

我遇到了同样的问题。问题出在@ aaron-gibson指出的文件中。

applicationHost.config at: C:\Windows\System32\inetsrv\config

(见这里:IIS Configuration Reference

其中一个网站的数据不正确:

<application path="/e:\MyFolder\MySiteWithProblem\VDir" applicationPool="AppPool152">
<virtualDirectory path="/" physicalPath="e:\MyFolder\MySiteWithProblem\VDir\Vdir" />

在这种情况下,application path具有无效字符。而且,physicalPath不存在。

修复此条目可解决问题。

标记为解决方案的答案解决了问题,因为它从头开始重新创建此文件。但在我的情况下,我没有失去我的所有网站。

我将文件applicationHost.config更改为:C:\Windows\System32\inetsrv\config

每个站点的条目都在标签中:

<configuration> <system.applicationHost> <sites> ... <site name="Default Web Site" id="1" serverAutoStart="true"> <application path="/MyPath" applicationPool="AppPool152"> <virtualDirectory path="/" physicalPath="e:\MyFolder\MySite\Vdir" /> </application> ... <site> ... </sites> </system.applicationHost> </configuration>


2
投票

我的结果是一个问题。我删除了比绑定中使用的另一个名称,它工作得很好。

祝好运!


1
投票

将“主机名”设置为数字可能会导致此问题。 “主机名”需要包含至少1个字母。


1
投票

我在Octopus Deploy中遇到过这个问题。

事实证明,问题在于绑定,当在Octopus中设置项目时,它在主机名末尾有一个额外的空间。

您还可以从C:\ Windows \ System32 \ inetsrv \ Config中的applicationhost.config中看到此信息


1
投票

我遇到过这个问题,问题是绑定错误,网址后面有一个“空格”。

检查绑定是否有任何错误的字符,如果有任何其他错误。


1
投票

我有一个新的IIS 10部署问题。我们的网络团队从旧服务器复制了applicationhost.config文件,这导致了它。在IIS 10中,有两个新设置可加密应用程序池标识的密码。由于IIS 7配置文件没有这些加密设置,因此IIS在分配新用户时抛出此错误。我只是从一个全新的服务器版本复制了设置,它开始工作正常。将这两个设置添加到现有的设置中:

<configProtectedData>
    <providers>

        <add name="IISCngProvider" type="Microsoft.ApplicationHost.CngProtectedConfigurationProvider" description="Uses Win32 Crypto CNG to encrypt and decrypt" keyContainerName="iisCngConfigurationKey" useMachineContainer="true" />
        <add name="IISWASOnlyCngProvider" type="Microsoft.ApplicationHost.CngProtectedConfigurationProvider" description="(WAS Only) Uses Win32 Crypto CNG to encrypt and decrypt" keyContainerName="iisCngWasKey" useMachineContainer="true" />

    </providers>
</configProtectedData>
© www.soinside.com 2019 - 2024. All rights reserved.