0

我正在生成一个返回 url 链接,因此当用户点击此页面上的关闭按钮时,他们将返回此 ReturnUrl。

http://localhost:42605/Search.aspx?ReturnUrl=http%3A%2F%2Flocalhost%3A42605%2FStuff%2FViewStuff.aspx%3FProjectId%3D2246

这在开发环境中工作正常,但在 uat 环境中我有

http://app-uat.com/Search.aspx?ReturnUrl=http%3A%2F%2Fapp-uat-01.com%2FStuff%2FViewStuff.aspx%3FProjectId%3D2246

请注意 ReturnUrl 参数上的额外 01。

所以要生成我目前正在使用的 ReturnUrl 位

Uri.EscapeDataString(Request.Url.AbsoluteUri)

由于我没有直接访问 uat 环境的权限,因此我不知道在发布周期之后什么会起作用,所以如果我能避免第一次出错,那将是有帮助的。

查看 Request.Url 调试我的可能性

DnsSafeHost 或主机

可以与

AbsolutePath 或 LocalPath 或 PathAndQuery

或者我有

原始字符串

或者我也许可以使用推荐人?

4

1 回答 1

1

PathAndQuery 为您提供了带有查询字符串变量的相对路径,因此您不必担心域上的额外“01”。只处理相对路径。

出于好奇,你的uat环境负载均衡了吗?您的应用似乎对它响应的域感到困惑。如果请求直接到达平衡服务器而不是负载平衡点,或者负载平衡器将请求转发到特定于机器的域,这可能(可能)发生?

我会向您的网络管理员索取信息。如果您非常详细地描述您正在做的事情,尤其是您的应用有时认为它正在响应 app-uat-01,他们可能会立即看到问题。

于 2008-12-12T07:04:53.573 回答