在Windows Server 2012 R2中安装与配置IIS服务全指南

IIS(Internet Information Services)作为Windows系统自带的Web服务组件,在企业级Web部署、内网服务搭建等场景中应用广泛。本文将详细介绍在Windows Server 2012 R2中安装IIS服务的完整流程,包括基础配置、网站创建、靶机部署及端口放行等关键步骤,适合新手快速上手。

一、IIS基础认知与版本适配

1. IIS核心功能

IIS是集成化的Web服务套件,主要包含四大核心服务:

  • Web服务器:处理HTTP请求,发布网页(支持ASP、ASP.NET等动态脚本);
  • FTP服务器:提供文件上传下载服务;
  • NNTP服务器:用于网络新闻组服务;
  • SMTP服务器:支持邮件发送功能。

其核心作用是通过HTTP协议实现局域网/互联网的信息发布与服务交互。

2. 版本与系统适配关系

不同Windows系统对应不同的IIS默认版本,Windows Server 2012 R2搭载的是IIS 8.0,具体适配表如下:

操作系统/服务器版本内置IIS版本
Windows XP/Server 2003IIS 6.0
Windows 7/Server 2008IIS 7.0
Windows 8/Server 2012IIS 8.0

二、IIS服务安装步骤

1. 启动添加角色和功能向导

  1. 打开服务器管理器,点击右上角「管理」→「添加角色和功能」;
  2. 进入向导后,选择「基于角色或基于功能的安装」,点击「下一步」;
  3. 选择当前服务器(默认已选中),继续「下一步」。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2. 选择服务器角色

  1. 在「服务器角色」列表中勾选「Web服务器(IIS)」,弹出依赖组件提示时点击「添加功能」;
  2. 关键注意:若需解析.asp文件,必须在后续组件中勾选「ASP」(默认不安装);
  3. 点击「下一步」。
    在这里插入图片描述

3. 选择功能组件

在「功能」列表中,勾选「.NET Framework 4.5功能」(Web应用运行基础),点击「下一步」,直至进入「安装」环节。
在这里插入图片描述

4. 完成安装并验证

  1. 点击「安装」,等待进度完成后重启服务器;
  2. 重启后打开服务器管理器,左侧导航栏会新增「IIS」角色,表明安装成功。
    在这里插入图片描述
    在这里插入图片描述

三、IIS初始配置与端口检查

1. 打开IIS管理器

  1. 在服务器管理器中点击「IIS」,右键服务器名称,选择「Internet Information Services(IIS)管理器」;
  2. 左侧导航栏展开后,默认存在「Default Web Site」网站(占用80端口)。
    在这里插入图片描述
    在这里插入图片描述

2. 检查80端口占用情况

80端口是Web服务默认端口,需确保未被占用:

  • 方法1:在IIS管理器中,右键「Default Web Site」→「浏览 *:80(http)」,若显示 IIS 欢迎页则端口可用;
    在这里插入图片描述

  • 方法2:通过命令行检查:
    打开CMD,输入 netstat -ano | findstr 80,若无结果则端口未占用;若有结果,记录PID并在任务管理器中结束对应进程。
    在这里插入图片描述

四、创建与配置网站

1. 使用默认路径部署网站

  1. IIS默认网站路径为 C:\inetpub\wwwroot,将网页文件(如index.html)放入该目录;
  2. 在浏览器访问 http://服务器IP/文件名(如 http://192.168.1.100/index.html)即可打开网页。
    在这里插入图片描述
    在这里插入图片描述

2. 自定义路径部署网站

若需使用非默认路径(如D:\mywebsite):

  1. 在IIS管理器中,右键「网站」→「添加网站」;
  2. 配置信息:
    • 网站名称:自定义(如「MyWeb」);
    • 物理路径:选择自定义文件夹(如D:\mywebsite);
    • 端口:若80端口已占用,可指定其他端口(如8080);
    • 主机名:可选填(如test.com,需配合hosts文件解析);
  3. 点击「确定」完成创建。
    在这里插入图片描述
    在这里插入图片描述
    4.进入以下页面后填写以下配置信息,并修改文件权限在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3. 解决主机名访问失败问题

填写主机名后可能会出现,使用主机名访问当前配置的网站不成功的情况。出现这种情况的原因是计算机系统不能根据当前域名解析到相应的IP地址,在C:\Windons\System32\drivers\etc\host中添加域名-IP映射即可。
未配置本地域名解析
在这里插入图片描述
若填写主机名后无法访问,需配置本地域名解析:

  1. 打开 C:\Windows\System32\drivers\etc\hosts 文件(用记事本以管理员身份打开);
  2. 添加映射:服务器IP 主机名(如 192.168.1.100 test.com);
  3. 保存后,浏览器输入主机名即可访问。
    在这里插入图片描述
    在这里插入图片描述

五、靶机部署与数据库配置

以部署某Web靶场为例,步骤如下:

  1. 配置SQL Server

    • 登录SQL Server Management Studio,修改sa用户密码并启用(右键「安全性→登录名→sa→属性」);
    • 创建靶场所需数据库(如test)。

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  2. 部署靶场文件

    • 将靶场代码放入网站路径(如D:\sqlilabs),通过IIS创建网站并指定该路径,端口设为9090;
    • 在浏览器访问 http://服务器IP:9090,按提示完成安装(填写数据库连接信息:服务器IP、sa密码、数据库名test)。

在这里插入图片描述
在这里插入图片描述

六、防火墙放行端口

该靶场部署在9090端口,因此我们要放行9090端口和数据库1433端口,否则在外部机上无法访问
在这里插入图片描述

为确保外部能访问网站和数据库,需放行对应端口(如靶场9090端口、SQL Server 1433端口):

  1. 打开CMD,输入以下命令:
    # 放行9090端口(靶场)
    netsh advfirewall firewall add rule name="Allow-9090" dir=in action=allow protocol=TCP localport=9090# 放行1433端口(SQL Server)
    netsh advfirewall firewall add rule name="Allow-SQL1433" dir=in action=allow protocol=TCP localport=1433
    
  2. 验证规则:
    输入 netsh advfirewall firewall show rule name="Allow-9090",若显示「活动: 是」则配置成功。
    在这里插入图片描述
    在这里插入图片描述
    在外部设备上访问该ip的9090端口和1433端口,发现能够正常访问
    在这里插入图片描述
    在这里插入图片描述

总结

本文详细介绍了Windows Server 2012 R2中IIS的安装、网站配置、靶机部署及端口放行全过程。关键要点包括:安装时需根据需求勾选ASP和.NET组件、确保端口未占用、自定义路径需配置权限与hosts解析、防火墙规则需针对性放行。掌握这些步骤,即可快速搭建稳定的Web服务环境。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/89832.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/89832.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/89832.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#/.NET/.NET Core技术前沿周刊 | 第 47 期(2025年7.14-7.20)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。 欢迎投稿、推荐…

一.AD域与DFS集群-AD域安装

目录 1.网络规划 2.主域控安装 3.辅助域控安装 1.网络规划 服务器名称IP地址DNS名称主域控192.168.188.2pdc.test.cn辅助域控192.168.188.3bdc.test.cnDFS1192.168.188.4dfs1.test.cnDFS2192.168.188.5dfs2.test.cn 服务器系统版本为windows server 2022 2.主域控安装 第一…

BUUCTF在线评测-练习场-WebCTF习题[BSidesCF 2020]Had a bad day1-flag获取、解析

解题思路打开靶场,作者对我们进行了亲切的关怀老规矩查看源码、抓包并没有发现什么猫腻点下面两个按钮会出现猫猫狗狗的图片,此时我们发现url多了个 参数category那么比较明显就是提示我们是任意文件包含、任意文件读取漏洞了找不到任何信息,…

stm32mp157f-dk2安装镜像并且部署qt全流程

在网上看的关于stm32mp157的开发教程太少了,于是乎写一篇踩坑笔记,仅供学习参考 大概流程:在虚拟机通过stm32cubeprogrammer烧录镜像,然后烧录成功之后,给stm32mp157连接网线,使得开发板有ip地址&#xff…

遗像照片尺寸要求及手机制作打印方法

遗像作为寄托哀思的重要载体,其规格和质量都有严格要求。本文将详细介绍遗像照片的标准尺寸规范,并提供使用手机快速制作合规遗像的完整方案。一、遗像照片的标准尺寸要求遗像照片的尺寸主要分为传统黑白遗像和现代彩色遗像两种规格。传统黑白遗像一般采…

适配器模式 (Adapter Pattern)

适配器模式 (Adapter Pattern) 适配器模式是一种结构型设计模式,用于解决两个不兼容接口之间的兼容性问题,充当两个不同接口之间的桥梁。 🌟 核心思想转换接口:将一个类的接口转换成客户端期望的另一个接口,使原本不兼…

03-虚幻引擎蓝图类的各父类作用讲解

虚幻引擎(Unreal Engine)的蓝图系统提供了多种父类,每种父类都有其特定的用途和生命周期。理解这些父类的作用,是高效使用蓝图开发游戏的基础。以下是虚幻引擎中常见蓝图父类的详细讲解:1. Actor 作用:所有…

141 个 LangChain4j Maven 组件分类解析、多场景实战攻略

141 个 LangChain4j Maven 组件分类解析、多场景实战攻略 文章目录 141 个 LangChain4j Maven 组件分类解析、多场景实战攻略 1. 引言 2. LangChain4j 组件分类 2.1. 核心模块 (Core Modules) 2.2. LLM 集成 (LLM Integrations) 2.3. 向量存储集成 (Embedding Store Integratio…

Python可迭代归约函数深度解析:从all到sorted的进阶指南

在Python中,归约函数(Reduction Functions)是处理可迭代对象的利器。它们通过遍历元素并逐步收敛为单个结果,广泛应用于数据分析、逻辑判断和数值计算等场景。本文将系统梳理这些函数的核心特性、使用技巧及底层逻辑,助…

大带宽服务器都有哪些应用场景?

大带宽服务器凭借着高速的数据传输能力和强大的网络承载能力,通常被企业应用在需要高流量和高并发处理能力的业务场景当中,下面,就让我们共同了解一下大带宽服务器的应用场景吧!首先,随着科学技术的快速发展&#xff0…

爬虫实战指南:从定位数据到解析请求的全流程解析

爬虫的本质是什么? 爬虫的本质就是用代码模拟人类在浏览器里的操作,像点击网页、填写表单、提交数据等行为,自动化地进行网页数据的获取和处理。比如: 发送 GET 请求 来请求网页内容,相当于你在浏览器地址栏输入网址…

Sentinel dashboard 添加context-path后无法信息无法上传问题

Sentinel dashboard 添加context-path后无法加载问题 添加server.servlet.context-path/sentinel后可以正常访问,但是客户端启动后信息上报失败。 transport: dashboard: localhost:8858/sentinel 经查阅文档需要加入api-path,但是我配置提示无api-path所…

iOS —— 3Gshare项目总结与思考

登陆注册及推出主页面这部分有两种写法:一种是在SceneDelegate中推出LoginVC,后在判断登陆成功后退去主要程序。另一种则是先加载主程序,后推出登陆页面。通过同组同学实践证明,后者在推出登陆页面时会闪一下,因此还是…

硅基计划3.0 学习总结 贰 顺序表与链表 初版

文章目录一、顺序表——ArrayList1. 实现自己MyArrayList1. 实现add基础方法2. 实现指定位置加元素add方法3. 完善数组打印方法display4. 完善根据下标找元素get5. 完善判断数字是否在数组中contains6. 根据数字找下标indexOf7. 更新指定下标元素set8. 获取数组有效长度size9. …

Postman/Apipost中使用Post URL编码发送含换行符参数的问题分析

Postman/Apipost中使用Post URL编码发送含换行符参数的问题分析 在使用Postman或Apipost等API测试工具进行POST请求时,当参数中包含换行符(\n或\r)通过UI界面复制参数时会遇到参数发送失效的问题。 问题原因分析URL编码规范限制: x-www-form-urlencoded格…

Swap Face 使用遇到的问题

INFO Extracting: 文件名 ERROR Unable to extract model file: File is not a zip file 因为插件没有下载成功,可以开个代理。复制报错的网址下载模型,解压后手动放入D:\Program Files\faceswap\.fs_cache\ 插件GIT地址 chttps://github.com…

误操作后快速恢复数据 binlog 解析为反向 SQL

误操作后快速恢复数据 binlog 解析为反向 SQL 1.前言 本文将介绍使用 reverse_sql 工具将 GreatSQL 数据库的 binlog 解析为反向 SQL 语句。模拟误操作后,恢复数据。该工具可以帮助客户在发生事故时快速恢复数据,避免进一步的损失。使用 reverse_sql 工具…

ABP VNext + Grafana Loki:集中式日志聚合

📝 ABP VNext Grafana Loki:集中式日志聚合 📚 目录📝 ABP VNext Grafana Loki:集中式日志聚合一、引言✨ TL;DR二、环境与依赖🛠️ 平台版本🔗 NuGet 包⚙️ 基础服务三、Serilog Loki 集成…

分布在内侧内嗅皮层(MEC)的带状细胞对NLP中的深层语义分析有什么积极的影响和启示

带状细胞(Band Cells)作为内侧内嗅皮层(Medial Entorhinal Cortex, MEC)层Ⅱ/Ⅲ的核心空间编码单元(如网格细胞、头方向细胞等),其独特的神经计算机制为自然语言处理(NLP&#xff09…

Django Ninja

Django Ninja 是一个用于 Django 框架的快速、现代化的 API 开发库,旨在简化构建高性能、类型安全的 RESTful API。它受到 FastAPI 的启发,结合了 Django 的强大功能和 FastAPI 的简洁与现代化设计,特别适合需要快速开发、易于维护且具有强类…