我在Windows XP专业版上运行IIS 5
我创建了新的Web项目并配置了VS 2008以保存此应用程序 location c:\ Inteput \ wwwroot。因此VS将项目保存到目录中:
c:\Inteput\wwwroot\WebApplication1
然后,我将此WebApplication1文件夹转换为虚拟目录(此虚拟目录也配置为Web应用程序)。但每当我尝试访问时:
c:\Inteput\wwwroot\WebApplication1\WebApplication1\default.aspx
使用网址浏览器:
http://localhost/WebApplication1/WebApplication1/default.aspx
,我得到一个例外说:
配置错误 描述:处理为此请求提供服务所需的配置文件时发生错误。请查看下面的具体错误详细信息并相应地修改配置文件。
分析程序错误消息:在应用程序级别之外使用注册为allowDefinition ='MachineToApplication'的部分是错误的。此错误可能是由于虚拟目录未在IIS中配置为应用程序。
任何想法我做错了什么?
BTW - 虚拟目录确实有读取和运行脚本权限集
Q2 - 如何配置Visual Studio以通过IIS而不是通过集成的Web服务器运行Web应用程序?因此,当我按CTRL + F5时,浏览器将是IIS的服务器页面,而不是集成的Web服务器?
谢谢
答案 0 :(得分:1)
你说它是作为一个应用程序运行 - 是使用正确的ASP.NET版本? (2.X)
在IIS中重新调试;你在项目属性上做到这一点 - 我相信在Web面板上;将其更改为“使用本地IIS Web服务器”并在localhost上输入应用程序根目录的URL。
答案 1 :(得分:1)
好吧,你遵循了一个奇怪的(错误的)程序,以便参考创建一个小项目,并从New Project对话框中指向一个(新的)虚拟目录。这会给你一张支票(IIS 5有点陈旧)和一个要比较的项目。
和/或创建虚拟目录并使用Web发布或Web复制工具将项目部署到该目录。
从表面上看,您的网址中有很多WebApplication1文件夹。由于错误而导致某些web.config设置仅在Applications根目录中允许。
添加:关于Q2,当您设置IIS进行调试时,您还必须将输出目录配置为虚拟目录。这通常在VS创建项目期间完成。
答案 2 :(得分:1)
我认为这是您的问题web.config
,请您提供给您?你有更多那个吗?
我之前遇到过这样的错误,它不太适合你所说的,但也许你遗漏了一些细节。
基本上,如果您有应用程序,则不应在子目录中的MachineToApplication
中配置web.config
设置。虽然我认为其他事情可以使这个错误出现。
哦,我打赌你确实有两个web.configs
此处c:\Inteput\wwwroot\WebApplication1\web.config
和c:\Inteput\wwwroot\WebApplication1\WebApplication1\web.config
答案 3 :(得分:0)
1 - 现在有效。我创建了新的虚拟目录
c:\Inteput\wwwroot\Testing
并复制了
中的所有内容c:\Inteput\wwwroot\WebApplication1\WebApplication1
进入这个新目录,以便现在 web.config 位于应用程序的根目录中。
A)
某些web.config设置仅允许在Applications根目录中使用。
我的 web.config 只能在Application root中使用吗?我怎么知道?
2 -
在IIS中重新调试;你在项目属性上做到这一点 - 我相信在Web面板上;将其更改为“使用本地IIS Web服务器”并在localhost上输入应用程序根目录的URL。
找到它,但现在我收到以下错误:
访问被拒绝。 描述:访问提供此请求所需的资源时发生错误。您可能没有权限查看请求的资源。
错误消息401.3:您无权使用您提供的凭据查看此目录或页面(由于访问控制列表而拒绝访问)。请Web服务器的管理员授予您访问“C:\ Documents and Settings \ kaja \ My Documents \ Visual Studio 2008 \ Projects \ WebApplication8 \ WebApplication8 \ Default.aspx”的权限。
感谢名单