IIS:如何在 Windows Server 2008 中禁用数据执行保护?
Posted
技术标签:
【中文标题】IIS:如何在 Windows Server 2008 中禁用数据执行保护?【英文标题】:IIS: How to disable Data Execution Prevention in Windows Server 2008? 【发布时间】:2009-07-30 20:12:21 【问题描述】:我一直试图在我的 Windows 2008 开发盒上禁用 DEP,但没有成功。
我试过了: 系统属性->性能选项->数据执行保护->仅对基本的 Windows 程序和服务启用 DEP
(仍然发生)
系统属性->性能选项->数据执行保护->为除我选择的程序和服务之外的所有程序和服务打开 DEP
在这种情况下,我尝试在 c:\windows\system32\inetsrv\ 文件夹中同时选择 inetinfo.exe 和 w3wp.exe,然后在选择时收到此错误:
“您不能在 64 位可执行文件上设置 DEP 属性”。
我确定某处存在一些内存泄漏 - 但这是一个单独的问题。我很高兴在我的开发环境中使用它一段时间(事实上,我需要放手让我看到它)
任何帮助将不胜感激!
谢谢, 道格
【问题讨论】:
(仍然发生)是什么意思?你在观察什么?你期待什么? 在没有开启 DEP 的情况下运行系统就像在不系安全带的情况下开车......为什么要这样做? 服务器故障可能更好? 【参考方案1】:GUI 不显示 DEP 操作的 4 种模式。
你需要在开机时做:Boot Parameters to Configure DEP and PAE
不过,更多关于the error message的信息:
系统 DEP 配置设置 仅适用于 32 位应用程序和 在 32 位或 32 位上运行时的进程 64 位版本的 Windows。在 64 位上 Windows 版本,如果 硬件强制 DEP 可用 始终应用于 64 位进程 和内核内存空间,还有 没有系统配置设置 禁用它。
【讨论】:
投反对票。应在此处解释解决方案,而不是外部链接(链接已移动)。【参考方案2】:以下是如何在命令提示符下禁用 DEP:
BCDEDIT /set current nx AlwaysOff
【讨论】:
【参考方案3】:在 Windows Vista 及更高版本上,DEP 和 PAE 在启动时启用,并通过使用 BCDEdit /set 命令设置 nx 和 pae 参数的值来配置。
要在 Windows Server 2008 上禁用 DEP,请在提升的命令行上键入以下内容
bcdedit /set nx AlwaysOff
【讨论】:
【参考方案4】:您可能想要编辑 boot.ini 并将包含 /noexecute=optin 的部分更改为仅 /execute
【讨论】:
【参考方案5】:您应该能够在您的 Bios 设置中关闭 DEP。
【讨论】:
仅限硬件 NX/xD 位,软件 DEP 可能仍会强制执行。以上是关于IIS:如何在 Windows Server 2008 中禁用数据执行保护?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Visual Studio 2015 (+U1) ASP.NET Core 发布到 Windows Server 2012R2 上的 IIS?
在windows 2000 server中如何配置技术.net的IIS运行环境?
如何在windows server2008 r2上打开internet信息服务 iis 管理器