在托管 .NET 系统中设置默认页面

Setting-up default page in hosted .NET system

我在 somee.com 上托管了我的 Visual Studio 项目,但我在那里设置时遇到了问题。我已经上传了Visual Studio项目的所有文件(数据层、lib、模型层、sln文件、suo文件)。

我发现要分配默认页面,您需要将其写入 Web 配置文件。我在我的网络配置文件中写了以下几行。

<system.webServer>
    <defaultDocument enabled="true">
        <files>
            <clear />
            <add value="www.omsshutter.somee.com/www.omsshutter.somee.com/Shutter 2000      Halloween/login.aspx"/>
        </files>
    </defaultDocument>
</system.webServer>

我想作为默认页面的login.aspx页面没有出现。它位于 "Shutter 2000 Halloween" 文件夹中。如何让它工作?

您需要使用文件的相对路径而不是完整的 HTTP 路径。即使用以下行

<add value="Shutter 2000 Halloween/login.aspx"/>

而不是

<add value="www.omsshutter.somee.com/www.omsshutter.somee.com/Shutter 2000 Halloween/login.aspx"/>

方法一

您始终可以检查用户状态secured/user-visible母版页。 如果用户未从主页加载简单重定向到登录页面(具有 public 主页)使用。

Server.Transfer("~/login.aspx");

方法二

在您的 Global.asax.cs 文件中,写入以下内容:

public void Application_Start(object sender, EventArgs e)
{
    RouteTable.Routes routeCollection;
    routeCollection.MapPageRoute("DefaultRoute", string.Empty, "~/YourDesiredSubFolder/YourDesiredDocument.aspx");
}

解释:

  • Application_Start 代码保证 运行 一次且仅一次 应用程序启动。
  • 第一行代码,获取的集合 URL 条适合您申请的路线。
  • 第二行代码,定义了一个 指向您希望的子文件夹中的内页的新路线。 第二个参数为空表示这条路由被使用时 没有请求特定页面,也没有默认文档 现有。