2009-10-19 49 views
0

我有一個奇怪的問題,我並不真正知道如何處理。經典ASP「ExecuteGlobal」語句在兩臺服務器上的表現不同

除了開發新的ASP.NET網站,我要支持老「傳統的ASP」的網站。它是用VBScript編寫的,並且有一批Javascript函數。許多Javascript函數都在'包含文件'中。一旦我學會了如何讓VS2005連接到IE進程,調試這些並不是一個問題。

一切都運行在我們的生產系統中運行良好(誰的安全性是由另一組控制 - 這是一個軍事設施)。但是,我修復了一個需要經過充分測試的模糊問題,並且某些功能不能在我的PC上運行的網站的「本地」副本下運行。

爲了記錄,我在XP上運行IIS 5.1。

的問題是,一些JavaScript功能正在運行的生產服務器上的「OK」,但它們不會出現作爲服務器使用時,我的電腦上進行定義。發生什麼情況是,之前的程序員由於某種原因決定將一些函數放入一系列文件中,根據這些註釋,模擬PHP中的「require_once」函數。這些帶有Javascript函數的ASP文件顯然是像一個文件被讀入一個變量,然後腳本用「ExecuteGlobal thiscode」(其中'thiscode'是他讀取代碼的變量)將這些函數加載到內存中。

儘可能靠近我可以告訴大家,當網站是我電腦的IIS服務器上運行這些功能都沒有堅持圍繞。 堅持在生產服務器上。目前生產服務器的管理員不太瞭解這個「傳統」應用程序的設置。

有沒有人知道我應該找什麼方向?我不知道是否我錯過了服務器配置中的設置或其他東西...我知道「require_once」腳本找到文件就好,讀入文件並且「ExecuteGlobal」語句運行時沒有錯誤。我只是無法弄清楚爲什麼一個按鈕,因爲它的「OnClick」響應的JavaScript功能在我的電腦上運行時生效,並且在其他所有工作正常時都失敗(sql訪問,安全等)

開發/測試框是在XP Pro上的IIS 5.1。活動框是Windows Server 2003上的IIS 6.0。新的開發框是Vista Business上的IIS 7。

我們組沒有足夠的資金來購買新的服務器,並在建築物中的所有服務器走得這麼把一個備用的盒子放到一個服務器2003/IIS 6盒支付空間是不是一個答案(認爲它如果我負責的話)。

如果我甚至可以告訴負責服務器的支持人員在哪裏查找某些可能與5.1版本不同的設置(我可以查看並比較他們的內容)......我只是有這裏沒有想法了。

回答

0

不完全知道從哪裏開始,但它會有助於確保您的生產和測試環境中運行腳本引擎的版本相同。

+0

這就是我目前的方向。我剛剛發佈了一款用於開發的新PC,並試圖在那裏建立環境。這是Vista Enterprise,其中舊機器是一個XP Pro盒子,以前的開發人員在我繼承它之前已進行了廣泛的修改。 – David 2009-10-22 11:57:29

+0

生產運行IIS 6.0,此XP框運行IIS 5.1,新的Vista工作站運行IIS 7.0。由於沒有錢購買服務器並將其放置在所有服務器必須使用的建築物中(由空軍基於此基礎的原則),因此無法真正反映產品環境。無法在XP機器上運行6.0。無法弄清5.1和6.0之間的「ExecuteGlobal」可能存在哪些差異。我遇到了絕對的磚牆。 – David 2009-10-30 15:02:38

+0

你有VMWare或類似的東西嗎? – aehiilrs 2009-10-30 15:14:26