要将 ASP.NET 网站发布到 IIS(Internet Information Services),请按照以下详细步骤操作:

前置准备
-
安装 IIS 和 ASP.NET 模块
- 打开 控制面板 > 程序 > 启用或关闭 Windows 功能。
- 勾选:
- Internet Information Services(展开后勾选所有基础功能)
- ASP.NET(位于:
应用程序开发功能>ASP.NET) - .NET CLR 版本支持(如 .NET 4.5/4.8)
- 其他依赖项(如静态内容、默认文档、目录浏览等)。
- 点击 确定 安装。
-
安装 .NET Framework/Core 运行时
- 如果项目使用 .NET Framework:确保目标服务器已安装对应版本(如 4.8)。
- 如果项目使用 .NET Core:下载并安装 .NET Core Hosting Bundle。
步骤 1:发布 ASP.NET 项目
使用 Visual Studio
- 右键项目 → 发布(Publish)。
- 选择发布目标:
- 文件夹:生成发布文件到本地目录。
- IIS/FTP:直接部署到远程 IIS(需配置权限)。
- 配置发布设置:
- 目标框架:匹配服务器环境。
- 部署模式:选择
框架依赖(推荐)或独立(包含运行时)。
- 点击 发布,生成文件到输出目录(如
binReleasenetX.Xpublish)。
使用命令行(.NET Core)
dotnet publish -c Release -o ./publish
步骤 2:配置 IIS 网站
-
打开 IIS 管理器

Win + R→ 输入inetmgr。
-
添加网站
- 右键 网站 → 添加网站。
- 填写:
- 网站名称:自定义(如
MyApp)。 - 物理路径:指向发布文件夹(如
C:sitepublish)。 - 绑定:
- 类型:
http或https。 - IP 地址:
全部未分配(或服务器 IP)。 - 端口:
80(HTTP)或443(HTTPS)。 - 主机名:域名(如有)。
- 类型:
- 网站名称:自定义(如
- 点击 确定。
-
配置应用程序池
- 在 应用程序池 中,找到新网站对应的池。
- 右键 → 基本设置:
- .NET CLR 版本:
.NET CLR v4.0(Framework)或无托管代码(Core)。 - 托管管道模式:
集成(推荐)。
- .NET CLR 版本:
- 高级设置(可选):
- 标识:
ApplicationPoolIdentity(默认)或自定义账户。 - 32 位应用程序:
True(若需兼容 32 位库)。
- 标识:
步骤 3:设置文件夹权限
- 右键发布文件夹 → 属性 → 安全 → 编辑。
- 添加用户/组:
- IIS_IUSRS:赋予
读取和执行权限。 - 应用程序池标识(如
IIS AppPoolMyApp):若需写权限(如上传文件),添加并赋予修改权限。
- IIS_IUSRS:赋予
步骤 4:测试与排错
- 访问网站
- 浏览器输入:
http://localhost(或绑定的域名/IP)。
- 浏览器输入:
- 常见错误处理
- HTTP 500.19(内部错误):
- 检查是否安装 ASP.NET 模块。
- 运行
aspnet_regiis -i(Framework)或修复 Hosting Bundle(Core)。
- HTTP 403(禁止访问):
- 确认文件夹权限(IIS_IUSRS/应用程序池标识)。
- 检查默认文档(如
index.html、default.aspx)是否存在。
- HTTP 404(找不到文件):
- 确保物理路径正确。
- 检查 Web.config 中的路由配置(Core 项目需保留
web.config)。
- HTTP 500.19(内部错误):
高级配置
- HTTPS 绑定:
- 申请证书(或使用 IIS 自签名证书)。
- 在网站绑定中添加
https类型,选择证书。
- URL 重写:
- 安装 URL Rewrite 模块。
- 在 Web.config 中配置规则(如重定向到 HTTPS)。
- 静态文件缓存:
- 在 IIS 中打开 HTTP 响应头 → 设置缓存策略。
验证部署成功
- 检查浏览器无错误提示。
- 查看 IIS 日志(默认位置:
C:inetpublogsLogFiles)。 - 使用 事件查看器(Windows 日志 > 应用程序)排查 .NET 错误。
关键点小编总结:
✅ 安装 IIS + ASP.NET 模块
✅ 发布项目到文件夹
✅ 配置 IIS 网站和应用程序池
✅ 设置文件夹权限(IIS_IUSRS/应用程序池标识)
✅ 测试并排查常见错误(500.19/403/404)
按照以上步骤操作,即可将 ASP.NET 网站成功部署到 IIS!
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/289975.html

