当我使用适用于 Windows Server 2012 R2 的 Internet Explorer 时,我无法下载 Google Chrome 安装程序。我通常会在安全下设置允许的网站,但这样做不起作用。是什么阻止我点击“下载 Chrome”按钮?
答案1
Windows 服务器附带 IE 的锁定配置,它们称之为Internet Explorer Enhanced Security Configuration
。此配置由一组区域设置以及其他高级设置组成。在默认状态下,这些浏览器将显示有关配置的消息。
要查看IE ESC的详细信息,请点击带有文字的链接Effects of Internet Explorer Enhanced Security Configuration
查看具体的设置。
在以前的版本中,你可以简单地赋予 Internet 区域下载文件的权限,但这样已经不再像以前那么好了,而且 Chrome 基于 Web 的安装也需要脚本和本地安装程序的执行,所以特别困难。
如果您无论如何都要使用其他浏览器(为了避免使用 IE,或绕过配置),您可以考虑禁用 IE ESC。为此,请输入以下网址查看特定版本的 IE 的帮助:res://iesetup.dll/IESecHelp.htm#turnoff
。
对于 Windows Server 2012 和 2012 R2,说明如下:
建议在您的服务器上启用 Internet Explorer 增强安全配置,以帮助确保您的服务器不会无意中受到恶意软件或其他基于浏览器的攻击。但是,在某些环境中,您可能希望关闭 Internet Explorer 增强安全配置保护,以便管理员或标准用户更轻松地浏览。
关闭 Internet Explorer 增强的安全配置
关闭您可能打开的所有 Internet Explorer 浏览器窗口。
打开服务器管理器
如果您的服务器运行的是 Windows Server® 2008 R2,请在服务器摘要的安全信息部分中单击配置 IE ESC 以打开 Internet Explorer 增强安全配置对话框。
如果您的服务器运行的是 Windows Server® 2012,请单击配置此本地服务器以打开本地服务器配置页面。然后,在属性区域中,在 IE 增强安全配置旁边,单击开启以打开 Internet Explorer 增强安全配置对话框。
要允许本地管理员组的成员在默认客户端配置中使用 Internet Explorer,请在“管理员”下单击“关闭”。
要允许所有其他组的成员在默认客户端配置中使用 Internet Explorer,请在“用户”下单击“关闭”。
注意:一旦为某个用户组关闭 Internet Explorer 增强配置,服务器管理器将在 Internet Explorer 增强安全配置旁边显示“关闭”。
单击“确定”应用更改
答案2
我使用 powershell 在 Windows Server 2012 R2/2016/2019 中安装 Chrome:
$LocalTempDir = $env:TEMP; $ChromeInstaller = "ChromeInstaller.exe"; (new-object System.Net.WebClient).DownloadFile('http://dl.google.com/chrome/install/375.126/chrome_installer.exe', "$LocalTempDir\$ChromeInstaller"); & "$LocalTempDir\$ChromeInstaller" /silent /install; $Process2Monitor = "ChromeInstaller"; Do { $ProcessesFound = Get-Process | ?{$Process2Monitor -contains $_.Name} | Select-Object -ExpandProperty Name; If ($ProcessesFound) { "Still running: $($ProcessesFound -join ', ')" | Write-Host; Start-Sleep -Seconds 2 } else { rm "$LocalTempDir\$ChromeInstaller" -ErrorAction SilentlyContinue -Verbose } } Until (!$ProcessesFound)
当然我知道这并不值得推荐,但有时你需要一个浏览器来获取一些文件。
如果您希望在 EC2 Windows 中自动安装 Chrome,请将其放入您的用户数据中:
<powershell>
$LocalTempDir = $env:TEMP; $ChromeInstaller = "ChromeInstaller.exe"; (new-object System.Net.WebClient).DownloadFile('http://dl.google.com/chrome/install/375.126/chrome_installer.exe', "$LocalTempDir\$ChromeInstaller"); & "$LocalTempDir\$ChromeInstaller" /silent /install; $Process2Monitor = "ChromeInstaller"; Do { $ProcessesFound = Get-Process | ?{$Process2Monitor -contains $_.Name} | Select-Object -ExpandProperty Name; If ($ProcessesFound) { "Still running: $($ProcessesFound -join ', ')" | Write-Host; Start-Sleep -Seconds 2 } else { rm "$LocalTempDir\$ChromeInstaller" -ErrorAction SilentlyContinue -Verbose } } Until (!$ProcessesFound)
</powershell>