IIS 8.5上的MSWC.BrowserType始终将浏览器的“未知”作为平台和“默认”返回

问题描述:

我们最近将旧的经典ASP网站移动到运行IIS 8.5的较新的Windows Server 2012。此次切换后,MSWC.BrowserType无法再获得用户的浏览器或平台。IIS 8.5上的MSWC.BrowserType始终将浏览器的“未知”作为平台和“默认”返回

在一个测试页面,我有以下代码:

<%@ Language=VBScript %> 
<%Option Explicit%> 

<% 
    Dim browserdetect 

    Set browserdetect = Server.CreateObject("MSWC.BrowserType") 

    if isObject(browserdetect) then 
     response.write("The object was created!<br>") 
    else 
     response.write("The object was not created") 
    end if 

    Response.Write("Platform = " & browserdetect.Platform & "<br>") 
    Response.Write("Browser = " & browserdetect.Browser & "<br>") 
%> 

这将返回:

The object was created! 
Platform = unknown 
Browser = Default 

我有最新的browscap.inic:\Windows\System32\inetsrv在服务器上。我需要做任何其他的工作吗?

+0

在IIS论坛上查看此主题 - https://forums.iis.net/t/1148429.aspx – John

+0

确保将该文件放在'C:\ Windows \ SysWOW64 \ inetsrv'中。如果运行你的应用程序的应用程序池是32位的,那么将在这个目录中搜索'browscap.ini'。 –

正如Kul-Tigin在上面的评论中指出的那样,如果应用程序池运行您的应用程序是32位的(在我的情况下),browscap.ini将在C:\Windows\SysWOW64\inetsrv中搜索。

我之前已经将browscap.ini复制到C:\Windows\System32\inetsrv,正如我以前在旧服务器上所做的一样。