我将 MVC4 应用程序部署到 WebForms (.NET 4.0) 网站中。
一切似乎都很好,除了每个Html.ActionLink(...)
都生成了不正确的href="#####"
链接属性。
问题:
生成的不是正确的 URL ( http://child.com/
),而是错误的 URL:http://child.com/child/
我使用以下.htaccess将用户从“domainRoot.com”“重定向”到域“domainChild.com:”
#
RewriteEngine On
RewriteCond %{HTTP_HOST} salonconnectiondanapoint\.com [NC]
RewriteCond %{REQUEST_URI} !salonconnection/ [NC]
RewriteRule (.*) /salonconnection/$1 [L,P]
#
文件夹结构类似于以下内容:
我没有对我的Route.config
.
此外,我已经阅读了描述类似情况的这个stackoverflow 问题/答案,但它并没有为我提供足够的信息来解决它。
如果您需要查看任何代码片段或有问题我可以回答以更好地帮助我们解决这个问题,请让我知道(在评论中),谢谢。
domainChild .com = 域名
domainChild = 包含第二个项目的文件夹
应用程序需要从包含的文件夹名称domainChild
( .. :/ ...修复此重定向/url 问题)然后添加.htaccess
. .htaccess
尝试似乎没有奏效,所以我一直在尝试尽我所能(请参阅下面的更新)。
更新:
我还尝试通过一起删除文件来完成重定向,并在父 WebForms 网站根域文件夹(其中嵌套了 MVC 项目).htaccess
的情况下使用以下多种变体:PageLoad
//string sname = Request.ServerVariables["SERVER_NAME"].ToString().ToUpper();
string sname = Request.ServerVariables["HTTP_HOST"].ToString().ToLower();
if (sname.Contains("domainchild"))
{
Server.TransferRequest("~/domainChild/");
//Response.Redirect("~/domainChild/");
return;
}
else
{
Response.Redirect("Default.aspx");
return;
}
然而,同样的事情发生了......url
用户被重定向到包含域名/包含文件夹名称(例如,http://domainChild.com/domainChild
)。
此更改还将“ Default.aspx
”附加到 的末尾URL
,它是 MVC!?
包含文件夹名称 ( domainChild
) 不能URL
像这样注入。必须有一种方法可以在包含文件夹名称处启动应用程序,将文件夹名称“ domainChild
”替换为“ domainChild.com
”
我迷路了,请帮忙。