第一部分:准备工作
在开始之前,请确保你已经准备好以下内容:

- 操作系统: Windows Server 2008 R2 或 Windows 7 (旗舰版/企业版/专业版),这些系统默认包含 IIS 7.5。
- 网站文件: 你已经开发好的网站文件,通常包含 HTML, CSS, JavaScript, 图片以及后端代码(如 ASP.NET, PHP 等)。
- 部署方式: 你选择哪种方式将文件传送到服务器?这里我们主要介绍最常用的 “文件系统” 方式,以及 “Web Deploy” 方式。
- 管理员权限: 你需要拥有管理员账户或被授权的管理员权限来完成安装和配置。
第二部分:安装和启用 IIS 7.5
如果你的系统是默认安装的,可能没有安装 IIS,请按以下步骤安装:
-
打开“服务器管理器”:
- 在 Windows Server 2008 R2 中,点击“开始” -> “管理工具” -> “服务器管理器”。
- 在 Windows 7 中,点击“开始” -> “控制面板” -> “程序” -> “打开或关闭 Windows 功能”。
-
安装 IIS 组件:
- 在左侧的“角色”中,点击“添加角色”。
- 在“开始之前”页面,点击“下一步”。
- 在“选择服务器角色”列表中,勾选 “Web 服务器 (IIS)”。
- 系统会提示你添加必需的功能,点击“添加必需的功能”,然后点击“下一步”。
-
配置 Web 服务器角色服务:
(图片来源网络,侵删)- 这是最关键的一步,在“角色服务”列表中,你需要根据你的网站类型勾选相应的组件。
- 基本要求:
- 通用 HTTP 功能: 确保
HTTP 重定向和自定义 HTTP 头(可选) 已勾选。 - 应用程序开发: 根据你的网站技术选择。
- ASP.NET: 如果你的网站是 .NET 开发的,必须勾选。
- **ASP`: 如果是经典 ASP 网站,勾选。
- **ISAPI 扩展`: 默认已勾选。
- **CGI`: 如果你的网站使用 Perl 等脚本,勾选。
- 通用 HTTP 功能: 确保
- 健康诊断和监控: 勾选
HTTP 日志和请求监控(推荐)。 - 安全性:
请求筛选: 非常重要,用于保护网站安全,默认已勾选。IP 地址和域限制: 可选,用于限制访问 IP。
- 勾选完成后,点击“下一步”。
-
确认安装:
查看摘要信息,确认无误后点击“安装”,等待安装完成,然后点击“关闭”。
第三部分:创建和配置网站
IIS 安装完成后,我们来创建一个新的网站。
-
打开 IIS 管理器:
(图片来源网络,侵删)- 点击“开始” -> “管理工具” -> “Internet Information Services (IIS) 管理器”。
-
添加网站:
- 在左侧的“连接”面板中,右键点击 “网站”,选择 “添加网站...”。
-
填写网站信息:
- 网站名称: 输入一个易于识别的名称,
MyWebApp。 - 物理路径: 点击右侧的“浏览”按钮,选择你存放网站文件的本地文件夹路径(
D:\MyWebSite)。确保 IIS 进程账户对该文件夹有读取和执行权限。 - 类型: 选择
http。 - IP 地址: 如果服务器有多个 IP,选择一个,默认的
未分配表示使用服务器的所有 IP。 - 端口: 设置一个端口号。
80是 HTTP 的默认端口,如果被占用,可以换一个(如8080),如果使用80端口,请确保没有其他程序占用它。 - 主机名: 这是可选的,如果你想通过域名(如
www.mydomain.com)访问,就在这里填写域名,否则留空,之后需要通过 IP+端口访问。 - 点击 “确定”。
- 网站名称: 输入一个易于识别的名称,
-
配置应用程序池:
- 什么是应用程序池? 它是隔离网站运行环境的容器,一个池崩溃不会影响其他池。
- 在 IIS 管理器左侧,点击 “应用程序池”。
- 你会看到一个与你网站同名的应用程序池(
MyWebApp)。 - 右键点击它,选择 “高级设置...”。
- .NET Framework 版本: 如果你的网站是 .NET 开发的,选择正确的版本(如
v4.0)。 - 托管管道模式: 对于 .NET 4.0 及以上版本,推荐使用 “集成” 模式,对于旧版 ASP 或特殊需求,才使用“经典”模式。
- 标识: 这是运行网站的应用程序池账户,默认是
ApplicationPoolIdentity,这是一个虚拟账户,权限较低,安全性高,如果需要更高权限(如访问网络共享),可以改为LocalSystem或指定一个域账户。不推荐轻易更改。
第四部分:部署网站文件
这是将你的代码放到服务器的步骤。
文件系统部署 (最简单)
这是最直接的方法,适用于本地开发和测试。
- 确保你在 第三步的“物理路径” 中指定的文件夹已经包含了你的所有网站文件。
- 如果你在创建网站后复制文件,请确保文件的权限正确。
- 右键点击你的网站文件夹(如
D:\MyWebSite)。 - 选择“属性” -> “安全” -> “编辑” -> “添加”。
- 输入
IIS_IUSRS,点击“检查名称” -> “确定”。 - 在列表中选中
IIS_IUSRS,在下方权限栏中勾选 “读取和执行”、“列出文件夹内容”、“读取”。
- 右键点击你的网站文件夹(如
Web Deploy 部署 (推荐用于生产环境)
Web Deploy 是微软提供的自动化部署工具,可以远程同步文件、配置数据库等。
-
在服务器上安装 Web Deploy:
- 从微软官网下载 "Web Platform Installer" (WebPI)。
- 打开 WebPI,搜索 "Web Deploy",然后安装它。
-
在开发机上安装 Web Deploy:
同样,在你的开发电脑上也安装 WebPI 和 Web Deploy。
-
配置 IIS 以允许远程连接:
- 在服务器的 IIS 管理器中,点击根节点。
- 在中间的“管理”区域,双击 “管理服务”。
- 确保 “启用远程连接” 被勾选。
- 记下 “API 密钥”,你将在部署时使用它。
- 点击右侧的“...”按钮,设置一个连接凭据(用户名和密码)。
- 在 Windows 防火墙中,确保允许 TCP 端口
8172(Web Deploy 默认端口) 的入站连接。
-
使用 Visual Studio 或命令行部署:
- Visual Studio: 在你的 Web 项目上右键 -> “发布...”,选择 “Web Deploy” 作为发布方法,然后输入服务器的发布 URL (如
https://your-server-ip:8172/msdeploy.axd?site=MyWebApp) 和你设置的凭据。 - 命令行: 使用
msdeploy.exe命令行工具进行更灵活的部署。
- Visual Studio: 在你的 Web 项目上右键 -> “发布...”,选择 “Web Deploy” 作为发布方法,然后输入服务器的发布 URL (如
第五部分:高级配置和常见问题
-
设置默认文档:
- 在 IIS 管理器中,选中你的网站。
- 在中间的“功能视图”中,双击 “默认文档”。
- 在这里添加或删除默认访问的文件名,
index.html,default.aspx,Default.htm,列表顶部的优先级最高。
-
配置错误页:
- 在“功能视图”中,双击 “错误页”。
- 你可以为不同的 HTTP 错误码(如 404, 500)设置自定义的友好页面,提升用户体验。
-
配置 ASP.NET:
- 在“功能视图”中,双击 “ASP”。
- 这里可以配置 .NET 的行为,如编译调试模式、Session 超时时间等。生产环境务必关闭“调试”。
-
绑定多个域名:
- 在 IIS 管理器中,右键点击你的网站,选择 “绑定...”。
- 点击“添加”,可以为同一个网站添加多个 HTTP/HTTPS 绑定,每个绑定可以对应不同的主机名(域名),从而实现虚拟主机。
-
权限问题 (403 Forbidden / 500.19):
- 403 Forbidden: 最常见的问题是文件或文件夹权限不足,请确保
IIS_IUSRS和SYSTEM账户对网站物理路径有正确的读取权限。 - 19: 通常是 web.config 文件权限问题,确保
IIS_IUSRS对web.config有“读取”权限。
- 403 Forbidden: 最常见的问题是文件或文件夹权限不足,请确保
-
MIME 类型问题 (404.3 - 未找到与请求的扩展名匹配的 MIME 类型):
- 如果你的网站使用了非标准文件(如
.woff2字体文件),需要告诉 IIS 如何处理它们。 - 在“功能视图”中,双击 “MIME 类型”。
- 点击“添加...”,输入文件扩展名(如
.woff2)和 MIME 类型(如application/font-woff2)。
- 如果你的网站使用了非标准文件(如
第六部分:测试网站
完成所有配置后,是时候测试了。
-
本地测试:
- 在服务器的浏览器中访问
http://localhost或http://localhost:你的端口号。 - 如果能正常显示,说明 IIS 本身配置正确。
- 在服务器的浏览器中访问
-
网络测试:
- 在局域网内另一台电脑的浏览器中,访问
http://服务器的IP地址:你的端口号。 - 如果能访问,说明网络配置没问题。
- 在局域网内另一台电脑的浏览器中,访问
-
域名测试 (如果配置了):
在浏览器中输入你配置的域名,看是否能正确解析并访问。
如果遇到问题,请仔细检查 防火墙设置、端口占用、文件权限和应用程序池配置,这四点是 90% 以上问题的根源。
至此,你已经成功在 IIS 7.5 上发布并运行了你的网站,希望这份详细的指南能帮到你!
