繁体   English   中英

我是否需要一个Web配置文件来在IIS 7上运行asp.net hello world?

[英]Do I need a web config file to run an asp.net hello world on IIS 7?

我在我的IIS服务器7(共享主机)上传了一个简单的hello世界。 它不起作用。 是否有必要添加一个Web配置,在这种情况下最小的是什么?

谢谢。

错误说:

服务器应用程序不可用

您尝试在此Web服务器上访问的Web应用程序当前不可用。 请点击网络浏览器中的“刷新”按钮重试您的请求。

这是脚本,非常基本:)

<%@ Page Language="VB" %>

<html>
<head>
<title>ASP.NET Hello World</title>
</head>
<body bgcolor="#FFFFFF">

<p><%= "Hello World!" %></p>

</body>
</html>

为了在IIS7中启动并运行基本的“Hello World”站点, 不需要存在单独的,特定于站点的web.config ,但是,如果没有它,则很不寻常。

与以前的版本不同,IIS7有效地将ASP.NET工作进程组件“内置”。 这允许web.config文件不仅指定ASP.NET站点本身的配置,还指定如何配置托管站点的IIS服务器(即,您可以在ASP.NET web.config指定(例如)默认文档类型) web.config文件)。

如果没有为ASP.NET站点指定单独的web.config,IIS7服务器将使用“default”web.config,它通常位于系统范围配置中的“windows”文件夹中。 NET框架本身。

本文:

在IIS 7中使用配置文件

来自MSDN库的状态:

配置文件

配置存在于服务器级配置文件或Web.config文件中的物理目录中。 每个配置文件都映射到特定的站点,应用程序或虚拟目录。

服务器级配置存储在以下配置文件中:

  • machine.config中。 此文件位于%windir%\\ Microsoft.NET \\ Framework \\ framework_version \\ CONFIG中。

  • .NET Framework的Root Web.config。 此文件位于%windir%\\ Microsoft.NET \\ Framework \\ framework_version \\ CONFIG中。

  • 对ApplicationHost.config。 此文件位于%windir%\\ system32 \\ inetsrv \\ config中。

站点,应用程序以及虚拟和物理目录配置可以存储在以下位置之一:

  • 服务器级配置文件。 当站点,应用程序,目录或URL的配置存储在服务器级配置文件中时,必须使用位置标记来指定配置所适用的站点,应用程序,目录或URL。

  • 父级Web.config文件。 当应用程序,目录或URL的配置存储在父级配置文件中时,必须使用位置标记指定应用配置的子级。

  • 站点,应用程序或目录的Web.config文件。 配置应用程序,目录或URL的设置时,配置存储在与站点,应用程序或目录相同的目录中。 您不需要使用位置标记。

在以下情况下,将配置设置存储在父配置文件中非常有用:

  • 您希望将配置设置存储在只有特定用户或组可访问的配置文件中。 例如,ApplicationHost.config文件仅对管理员帐户和特定计算机上Administrators组的成员以及计算机属于域时的域管理员可用。

  • 您希望在URL级别(也称为文件级别)配置功能。

另外,请参阅以下文章以获取更多信息:

IIS 7中的新配置系统

编辑:

关于您获得的特定错误消息,我之前在IIS7服务器上看到过这个问题,问题结果是该站点设置为使用的应用程序池没有“正在运行”。 进入IIS7管理员gui并start应用程序池解决了这个问题。

我还看到这个错误导致没有在包含您的网站代码的文件夹上设置相关权限。

点击此处此处此处获取更多信息。

当然,由于您正在测试共享托管环境,您可能无法访问Web服务器本身,并且很难通过您的托管服务提供商确切知道您有权访问管理,但是可能有某种界面来设置文件夹/文件的权限,所以我先看看那里。 如果不这样做,您可能必须在“测试”站点中包含一个web.config文件,因为这将允许您在IIS7中设置您可能无法访问的配置。

如果不这样做 ,您可能需要与您的网站主持人的支持团队联系。

它应该足以从machine.config继承。 有什么例外?

我不确定共享主机环境。 但是,如果您尝试创建Web应用程序(尝试ASP.Net空Web应用程序模板),只需使用Response.write(“Hello World!”)。 它将在没有任何web.config的情况下工作。

我尝试了自己,它成功地运作了。

唯一的问题是,它可能会询问您是否要调试您的应用程序,然后它需要在web.config中添加“compilation = true”属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM