我的MVC C#网站应用程序安装在内部Azure App Service上,其URL如app.domain。内部,并通过客户端的DNS和带有另一个URL“ app.externaldomain.com”的证书进行解析。 ,因此最终用户可以通过“ app.externaldomain.com”访问该网站,并且内部URL仍为用户所未知。
几乎所有东西都可以正常工作,问题是当代码运行Url.Action生成URL时,它将获取app.domain。内部根,我需要更改或覆盖该根URL,以用于“ app.externaldomain.com”,因此该网站可以生成类似app.externaldomain.com/controller/action之类的URL,而不是app.domain。内部 / controller / action(最终用户无法访问) )。
有一种方法可以更改MVC所使用的根URL,以使用自定义根代替App Service的URL来生成完全合格的URL。
在所有站点中执行“ url.replace('badroot','rigthroot')”或类似操作是不现实的。