在家裝了 Hyper-V VM 跑 Windows Server 2019 想試東西,新裝機少不了要上網抓軟體, 所以我需要瀏覽器,Windows Server 2019 沒有 Edge 附的是 IE 。 大家都知道,這年頭 IE 最大的用途是用來下載 Chrome 或其他瀏覽器(嗯,先撇開企業或某些機關學校網站仍需要用 IE 巡覽古蹟), 像是知道 User 一定會開紅酒, Windows Server 先備好開瓶器,說來也算貼心!

打開 IE11 連到 Chrome 下載網頁,大大的藍色的「下載 Chrome」就在眼前,再忍一下就有正常的瀏覽器可用了。 咦?點了一下沒反應,再點還是不行,愈點愈怒,狂點四五十下滑鼠按鍵都快生火了,什麼動靜都沒有。

喵的,連 Chrome 都下載不了的 IE,這是哪門子開瓶器?


↑↑↑↑↑↑ 這種!

牽怒滑鼠也不是辦法,畢竟牠是無辜的。冷靜下來打開 F12 偵察,估計是 Chrome 下載網頁又用了什麼新奇 JavaScript 寫法跟 IE 不相容。 想深入調查但卡在偵錯區主控台出現「Application is not currently attached to a script debug target that supports script diagnostics.」

切換過不同 IE 相容模式沒法解決問題,印象中以前沒遇過這種狀況。

我知道 Windows Server 版本的 IE 多了一層安全防護叫 IE Enhanced Security Configuration, 用杯弓蛇影草木皆兵的心態停掉許多瀏覽器功能,以降低伺服器被滲透入侵的可能性。 下載功能失敗有可能是現行 Chrome 下載網頁的新寫法沒考慮到 Windows Server 安全強化版 IE 相容性, 但也有可能是新版本安全強化模式又封鎖了更多瀏覽器行為。總之,搞到 IE 沒法下載 Chrome 了。

既然如此,關掉 IE Enhanced Security Configuration 試試:

Bingo! 切成 Off 並重開 IE 後(記得要重開 IE 才會生效),問題排除,終於能下載 Chrome 了:


Comments

# by Mark

想請問 Google Chrome 為何要在 IE 用 ClickOnce 技術製作 Web 安裝程式,然後微軟用 IE Enhanced Security Configuration 把自家的技術擋下來,這明顯不是單純的檔案下載,況且同樣的原始碼有提供 /chrome/install/ChromeStandaloneSetup64.exe 檔案下載離線安裝程式,是不是有 Fallback 機制存在,然後 Server 版的 IE 連正常檔案下載都會擋住,除非把檔案下載網域加入到 IE 信任的區域才能下載。 https://www.google.com/chrome/static/js/installer.min.js

# by Jeffrey

to Mark, 感謝精闢分析。在我心中,IE Enhanced Security Configuration 秉持的原則是寧可錯殺一萬不可錯放一個,就差沒把網路線拔掉而已,看起來很一般的動作被禁止也是很正常的,平常心平常心。:P

Post a comment


45 - 30 =