2009-08-06 88 views
1

我有一個網站,一直工作得很好。最近,任何以querystring('GET')形式傳遞的表單,其中包含單詞「SELECT」,「FROM」和「WHERE」,會導致頁面掛起,並最終出現「Page not found ...」錯誤。它看起來像只發生在IE瀏覽器,而不是Firefox,但已被確認使用多個客戶端。另外,它只發生在一臺服務器上......如果我將同一個測試腳本複製到另一臺服務器上,沒問題。單詞不必從表單中傳遞,它們也可以僅作爲查詢字符串來使用。IE瀏覽器 - 某些查詢字符串掛起頁面

因此,例如,

http://www.problemserver.com/qsfails.asp?q=select+from+where

失敗表現出的問題,在服務器上。事實上,如果我用不存在的頁面名稱替換'qsfails.asp',頁面加載仍會掛起並等待,直到它超時,而嘗試加載不存在但不包含查詢字符串的頁面會立即獲得「頁面未找到...「錯誤。

服務器是否被破壞?託管公司聲稱不是。有沒有人遇到過這個?想法或建議?

謝謝!

+0

你確定它是一個瀏覽器問題,而不是你使用查詢字符串進行的任何處理嗎? – Jason 2009-08-06 17:01:12

+0

另外,你可能會發佈一個鏈接或一些代碼? – Jason 2009-08-06 17:01:44

+0

在Fiddler(www.fiddler2.com)中觀看您的流量,並確保服務器實際上正在返回內容。 – EricLaw 2009-08-07 01:29:02

回答

2

我認爲您的虛擬主機正在運行通用篩選器以防止SQL注入攻擊,如UrlScan。 IIS和Apache有幾種這樣的工具。這會阻止您的網站看到或處理請求。

奇怪的是,他們不會在你的問題後提到類似的東西。與他們一起檢查。

0

結果Thorarin是正確的。

我曾問過安全過濾,但被告知沒有。我再次問,仍然被告知「不」,託管公司認爲這是一個路由問題(這對我來說沒有意義,但我知道什麼)。

但是,他們必須已經把它踢了起來,因爲他們已經安裝了一個過濾器,這是問題所在。顧客不僅不知道,甚至連他們的第一對技術支持都不知道。哎呀。

感謝Thorarin。