最近将Windows 11 Pro设备当服务器用,顺带安装了Desktop运行了Nginx反代输出,但发现这玩意很吃资源,内存和CPU都不够嚯嚯的。后来想起Windows的Docker其实就是个虚拟机,比Linux的多一层hypervisor。套壳中的套壳,不吃资源才叫见鬼了。
高胖子说IIS也可以反代,而且性能很强,所以试试了,还真可以。
步骤 1:安装ARR和URL Rewrite
安装IIS
- 确保Windows 11 Pro上已安装IIS。可以在“控制面板” > “程序” > “启用或关闭Windows功能”中找到IIS并启用它。
安装URL Rewrite模块
- 访问 IIS URL Rewrite模块下载页面 并下载安装。
安装Application Request Routing (ARR)
- 访问 ARR下载页面 并下载安装。
步骤 2:配置反向代理
打开IIS管理器
- 按下
Win + R
,输入inetmgr
并按下 Enter,以打开IIS管理器。
- 按下
启用代理功能
- 在IIS管理器中,选择左侧的服务器节点(你的计算机名字)。
- 找到并双击“Application Request Routing Cache”。
- 在右侧的操作面板中,点击“服务器代理设置”。
- 勾选“启用代理”选项,然后点击“应用”进行保存。
创建新的站点
- 右键点击“网站”节点,选择“添加网站”。
- 填写网站名称、物理路径(可以是一个空文件夹),并设置主机名(可以临时填写)。
- 设置好端口和IP地址,然后点击“确定”完成。
配置URL重写规则
- 在刚创建的网站上,双击“URL重写”。
- 在右侧的操作面板中,点击“添加规则”。
- 选择“反向代理”。
- 在弹出的“添加反向代理规则”对话框中,输入目标IP(例如 `http://192.168.1.100:端口,以当前内网项目的实际地址为准)。
- 点击“确定”。
- 这会自动创建一条反向代理规则。
配置端口映射(可选)
- 如果需要在外部访问不同的端口,可以在URL重写规则中设置条件。
测试
- 通过外部IP(或者是使用本地计算机的网络配置)访问新创建的网站和端口,查看内容是否正确转发到内网服务。
注意事项
- 确保Windows防火墙允许通过设置的端口的流量。
- 如果服务使用HTTPS,确保已正确设置SSL证书。
- 可以检查IIS日志和ARR日志以帮助诊断问题。