概述
Internet Information Services (IIS) 8.0 Express 是一个免费且简单的独立版本的 IIS,已针对开发人员进行了优化。 借助 IIS 8.0 Express,可以轻松地使用最新版本的 IIS 以及 Visual Studio 和 WebMatrix 等开发工具开发和测试网站。 IIS 8.0 Express 包含 IIS 8 及更高版本的所有核心功能以及用于简化网站开发的其他功能,包括:
- IIS 8.0 Express 不作为服务运行,也不需要管理员权限来执行大多数任务
- IIS 8.0 Express 适用于 ASP.NET 和 PHP 应用程序
- 多个 IIS 8.0 Express 用户可以在同一台计算机上独立工作
安装
可以使用以下 URL 通过 Microsoft 下载中心安装 IIS 8.0 Express:
- IIS 8.0 Express
从 IIS 7.5 Express 升级
如果在安装 IIS 8.0 Express 时已安装 IIS 7.5 Express,安装程序会将 IIS 7.5 Express 安装替换为 IIS 8.0 Express。 不支持同时安装 IIS 7.5 Express 和 IIS 8.0 Express。
在 64 位系统上安装 IIS 8.0 Express 时,IIS 8.0 Express 的 32 位和 64 位版本将分别安装在 %ProgramFiles(x86)%\IIS Express
和 %ProgramFiles%\IIS Express
文件夹中。
支持的平台和体系结构
以下操作系统上支持 IIS 8.0 Express:
支持的本机平台
- Windows 8 客户端 (Intel/AMD) 32 位/64 位
- Windows Server 2012 (Intel/AMD) 64 位
支持的下级平台
- Windows 7(x86 和 x64)
- Windows Server 2008 R2(x86 和 x64)
- Windows Vista SP1 及更高版本(x86 和 x64)
- Windows Server 2008(X86 和 X64)
以下操作系统上不支持 IIS 8.0 Express:
- Windows Server 2003
- Windows XP
对于这些不受支持的操作系统,可以继续使用 IIS 7.5 Express。
对 IIS 8.0 Express 的更改
新功能
IIS 8.0 Express 支持以下新功能:
X64 支持
- IIS 8.0 Express 支持 32 位和 64 位体系结构。
与 IIS 8.0 共有的功能
- IIS 8.0 Express 与 IIS 的完整版本有许多相同的功能;例如,IIS 8.0 Express 使用许多与完整版 IIS 相同的二进制文件、配置文件和错误代码,因此在开发环境和生产环境之间迁移项目应该比以往更容易。
更改用户主目录
- IIS 8.0 Express 支持更改用户的主目录,该目录映射到配置中的 %IIS_USER_HOME% 变量。 默认情况下,此路径位于 %UserProfile%\Documents\IISExpress,但用户可以通过在 HKCU\Software\Microsoft\IISExpress 中设置 CustomUserHome 注册表属性来更改此路径,或者在启动 iisexpress.exe 时指定“/userhome”参数。
WebSocket 支持
- IIS 8.0 Express 支持编写 WebSocket 应用程序。 有关详细信息,请参阅 WebSocket 协议规范或 Microsoft MSDN 网站上的 System.Net.WebSocket 命名空间主题。
AppCmd 支持编辑多个配置文件
- AppCmd 实用工具现在支持“/AppHostConfig”参数,这样就可以使用 AppCmd 编辑多个 ApplicationHost.config 文件,而不仅仅是主配置文件。
例如,以下命令将在自定义 ApplicationHost.config 文件中创建网站:
appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112'] " /commit:apphost /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112'] .bindings.[protocol='http',bindingInformation=':8080:localhost']" /commit:apphost /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112'] .[path='/']" /commit:apphost /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112'] .[path='/'].[path='/',physicalPath='C:\Inetpub\www.fabrikam.com']" /commit:apphost /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config
使用上述命令添加网站后,可以使用以下命令启动它:
iisexpress.exe /config:C:\Temp\IISExpress\config\ApplicationHost.config /site:www.fabrikam.com
已知问题和限制
在下级操作系统上不起作用的 Windows Server 2012 和 Windows 8 功能
有几个功能需要特定于 Windows Server 2012 和 Windows 8 客户端的体系结构,当你在较早版本操作系统上安装 IIS 8.0 Express 时,这两个系统在下级系统上无法工作:
- 服务器名指示 (SNI)
- 中央证书存储
- WebSocket 功能
HTTP 子状态代码更改
IIS 8.0 Express 现在共享相同的 HTTP 状态和子状态代码集;进行此更改是为了使开发人员能够更轻松地使用 IIS 8.0 Express 或其 Web 服务器上的 IIS 完整版本来解决问题。 以下列表包含 IIS 7.5 Express 附带的已修改或弃用的 HTTP 子状态代码:
HTTP 404.20 - 这是未定义默认文档时返回的错误:
- 如果未定义默认文档,IIS 8.0 Express 将返回 HTTP 403 禁止访问错误。
- IIS 8.0 Express 返回 HTTP 404.20 错误,表示 URL 段过多。
HTTP 404.21 - 未安装 PHP 时会返回此错误代码;此代码已从 IIS 8.0 Express 中删除。
HTTP 404.22 - 未安装 ASP.NET 时会返回此错误代码;此代码已从 IIS 8.0 Express 中删除。
HTTP 404.23 - 未安装 ASP.NET 网页时会返回此错误代码;此代码已从 IIS 8.0 Express 中删除。
在 Windows Server 2012 和 Windows 8 客户端上使用 .NET Framework 3.5 及更早版本和 IIS 8.0 Express Release Candidate 时出错
如果在 Windows Server 2012 和 Windows 8 客户端上使用 IIS 8.0 Express Release Candidate(如果使用 .NET Framework 3.5 和更低版本),则存在已知的应用程序兼容性问题。 IIS 8.0 Express 最终版本中已解决此问题,但解决方法是在运行 IIS 8.0 Express Release Candidate 的系统上安装 IIS 的标准版本。 (注意:IIS 无需运行;只需执行 IIS 基本安装即可解决兼容性问题。)
更多信息
可以使用以下链接了解有关 IIS 8.0 Express 和相关产品的详细信息:
- IIS.net
- Microsoft.com/web