2013-02-26 20 views
3

我有一个由IIS服务的网站。日志记录被打开,我也得到infrmation像:IIS可以记录url的子域部分吗?

2013-02-26 00:23:16 ::1 GET /Test/TestPage.html <snip>

但我有每个客户的子域,使a.mydomain.com和b.mydomain.com两个点(通过CNAME)在相同的安装和提供相同的文件(但我有代码显示不同的数据)。

我希望能够说客户击中网站x次并下载y但客户b击中它z次(等)。

但a.mydomain.com似乎没有被记录,看起来不像我可以打开它。

可以得到这些信息吗?

回答

3

是的,您可以通过打开IIS管理器,单击日志记录,然后单击“选择字段”按钮并选择主机(cs-host)来启用该功能。

如果你想在命令行版本看起来是这样的:

%windir%\system32\inetsrv\appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.logFile.logExtFileFlags:"Date, Time, ClientIP, UserName, SiteName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, TimeTaken, ServerPort, UserAgent, Referer, Host, HttpSubStatus" 

注意,这将改变它的所有网站(因为它的修改siteDefaults部分),但你可以把它仅适用于如果需要的话。

+0

不幸的是,这不工作,因为CNAME重定向 - 它只给最后的主机(在我的情况下是xxx.cloudapp.net,因为我在Azure上托管)。谢谢你的回答! – Mark 2013-02-26 02:53:34

+2

不应该是这种情况,主机应该是客户端提供的头文件(在主机头文件中),这意味着您应该看到在浏览器中输入的原始头文件。我在Azure中运行我的网站,并确实在日志记录主机时在日志中获得正确的主机名。 – 2013-02-27 00:16:13

+0

D'oh!你是对的!我从我们的测试服务器获取了一个示例日志。原来,BA通常转到云应用地址。我从PROD取了一个日志,信息就在那里。谢谢! – Mark 2013-03-01 23:17:59

相关问题