【问题标题】:using URL Rewriting使用 URL 重写
【发布时间】:2012-06-28 21:35:19
【问题描述】:

我在一个托管服务器下托管 2 个域站点

\

 -Site1

 -Site2

我有 2 个域指向托管服务器。

例如

site1.com 应该指向site1 文件夹 site2.com 应该指向 site2 文件夹。

目前在根目录我有默认文件,它会检查 Request.ServerVariables("ServerName") 是否为 site1.com 然后重定向到 (/site1)

所以它显示site1.com/site1/site2.com/site2/

如何删除子文件夹?所以它显示site1.comsite2.com?

我已经研究过使用 URL 重写,但我无法将代码放在一起.....我相信每个子文件夹都应该有一个 global.asax 文件,并且在 Application_BeginRequest 中我想我应该做点什么。

【问题讨论】:

  • 您不能将它从.../Site1/ 作为应用根目录而不是从父目录托管吗?
  • 这更多是 IIS 配置的问题,而不是 url 重写。
  • 我这样做的原因是因为我不想为每个站点购买托管服务器,它们是只需要 1 个托管服务器的小型站点.. 并且托管服务器指向根文件夹

标签: c# asp.net url-rewriting


【解决方案1】:

你可以使用 Server.Transfer

代码:

void appliaction_BeginRequest(object sender, EventArgs e)
 {
    HttpRequest request = sender as HttpRequest;
     if(request.Url.Host.Contains("site1.com"))
     {
        request.RequestContext.HttpContext.Server.Transfer("site1.com/site1", true);
    }

  }

在浏览器中输入site1.com

【讨论】:

    猜你喜欢
    • 2010-11-04
    • 1970-01-01
    • 2018-08-25
    • 1970-01-01
    • 1970-01-01
    • 2012-12-06
    • 2014-03-19
    • 2011-04-03
    相关资源
    最近更新 更多