为什么请求.ServerVariables只返回一些值

本文关键字:返回 请求 ServerVariables 为什么 | 更新日期: 2023-09-27 18:17:01

我正在玩ASP。. NET中包含假定返回登录用户的部分代码:

Request.ServerVariables["AUTH_USER"]

但是它什么也没返回。

同时,

Request.ServerVariables["HTTP_HOST"]
Request.ServerVariables["AUTH_PASSWORD"]

返回正确的主机名和密码。

在c#:

HttpContext.Current.Request.ServerVariables["AUTH_USER"]

也没有显示用户名。

同时,使用经典ASP代码正确返回用户名。

我不是ASP专家。因此,我的问题是:这是与服务器有关,还是与代码本身有关?

为什么请求.ServerVariables只返回一些值

这与您在。net中打开的身份验证模型以及本地/服务器IIS环境中的身份验证选择有关。

如果您在IIS中启用了集成的Windows身份验证,并且有System。Web认证模式="表单"在你的网里。配置文件,你会发现不同的服务器变量被填充。

所以回答你的问题,两者都有一点。

  • IIS 6服务器变量文档页

对于使用现代IIS的人:

  • IIS 10 Server Variables Docs页面