2013-04-25 53 views
-1

在Windows終端服務/ Citrix/RDP遠程桌面環境中,有沒有一種方法可以查找某人是否正在連接到我的網站?檢測是否有人正在使用遠程桌面

我的web應用程序遇到了一些嚴重的性能問題,當(且僅當)有人通過遠程桌面連接使用IE9連接到它。我知道我應該尋找這些問題的原因並相信我。然而,我發現,出於某種原因切換到IE8兼容模式可以解決問題。因此,暫時我想檢測是否有人通過遠程桌面連接使用IE9連接到我的網站,以便我可以強制IE8兼容模式。

對於爲什麼我的web應用程序在遠程桌面IE9中速度變慢的任何想法都是受歡迎的。我的Web應用程序構建於PHP/jQuery/jQueryUI/jqGrid/mySQL上。

+0

您是否嘗試過使用'$ _SERVER' Globals進行操作? – samayo 2013-04-25 19:00:54

+0

我看着那些,不知道哪個全球給我的信息,我正在尋找。對此有何想法? – 2013-04-25 19:03:09

+0

我認爲這是SO的話題。我投票將它遷移到serverfault。 – 2013-04-25 19:05:16

回答

3

沒有什麼在PHP,HTTP,HTML,DOM的,甚至是瀏覽器的DOM擴展知道如果你是一個終端服務會話下運行。

唯一的方法是使用ActiveX控件或.NET小程序直接查詢Win32。在C#/ .NET中,您可以使用System.Windows.Forms.SystemInformation.TerminalServerSession,然後將該信息返回給服務器,但只能在頁面加載後執行此操作。

這可能是IE9的加速渲染功能,因爲終端服務使用的虛擬rdpdd顯示驅動程序改進的硬件問題。嘗試在終端服務器的IE中禁用此選項。

+0

rpdd顯示驅動程序似乎確實是我的煩惱的原因。非常感謝! – 2013-04-25 19:24:36

0

遠程桌面用戶正在使用瀏覽器作爲主機(服務器或citrix)應用程序內的設置。 服務器管理員可以定義諸如 瀏覽器設置(IE增強安全設置) 病毒掃描程序集成

,也什麼可用的瀏覽器選項(IE 7-8-9-10)。在那裏渲染

的IE-XXX了兼容性模式 這些瀏覽器的行爲不同的是可控的,通過你的應用程序 http://msdn.microsoft.com/library/cc817574.aspx

每頁:

<meta http-equiv="X-UA-Compatible" content="IE=8"/> 

該網頁將在「IE8標準總是呈現模式「,即使當沒有」!DOCTYPE「存在於html中時

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9"/> 

Th Ë頁面會始終呈現在「IE9標準模式」,即使沒有「!DOCTYPE」在HTML中現有

<meta http-equiv="X-UA-Compatible" content="IE=9"/> 

該網頁將在「IE9標準模式」總是被渲染,即使沒有「!DOCTYPE」是存在於html中

<meta http-equiv="X-UA-Compatible" content="IE=edge"/> 

在此配置中,將使用IE渲染引擎的最高可用版本。它不關心是否使用了「!DOCTYPE」。該功能與「IE = 7」和「IE = 8」相當。這用於與最高IE版本兼容。

所以我覺得你並不需要關心RDP或Citrix主機,但支持使用IE中正確的模式。

相關問題