IIS服务器设置代理实现Node接口转发

简介: IIS服务器设置代理实现Node接口转发

前言


最近,遇到了一个坑,碰了很多壁,才得以解决所以这里记录一下。也方便大家以后如果遇到的话少踩坑。


是这样的,之前搞过Nginx服务器转发Node接口,大体是这样的。


比如,我在云服务器上使用Node开发了一个/api/getList的接口,并且监听的端口是6600,那我们使用Nginx就可以这样来转发。


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    gzip  on;
    upstream springboot {
     server 127.0.0.1:6600 max_fails=2 fail_timeout=5s;
    }
    server {
        listen       80;
        # 主机名或域名
        server_name www.xxx.com;
        location / {
          proxy_pass http://springboot;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}


所以可以就这样请求:http://www.xxx.com/api/getList/,实际上请求的是云服务器上的http://127.0.0.1:6600/api/getList/


是的,虽然不是图形化设置,但是这种命令式的设置我个人觉得更加方便(可能我Nginx用得比较多)。


实战


我们看完Nginx的设置,那么我们再来看下IIS是怎么转发的。


我们来分步骤来进行设置。


一、安装ARR 3.0(Application Request Routing)与配置


安装链接:https://www.iis.net/downloads/microsoft/application-request-routing


安装成功之后,在命令行输入以下命令,重启IIS服务器。


iisreset


在功能页面你就可以看到Application Request Routing的图标。


微信截图_20220506202152.png


然后,我们双击点击图标,进入功能设置页面。进入之后,点击右边栏的Server Proxy Settings


微信截图_20220506202205.png


最后,勾选Enable proxy,其他选项保持现状。然后,点击应用按钮,保存就可以了。


微信截图_20220506202221.png


二、安装与配置 URL 重写(URL Rewrite)


安装链接:https://www.iis.net/downloads/microsoft/url-rewrite

安装成功之后,在IIS功能视图页面就可以看到URL重写按钮。


微信截图_20220506202230.png


双击URL重写按钮,进入设置页面。然后,点击右侧边栏的添加规则按钮。


微信截图_20220506202245.png


选择空白规则,点击确定。


微信截图_20220506202256.png


进入编辑入站规则页面。


微信截图_20220506202308.png


根据之前的接口,我们可以这样设置。名称你可以起一个好记的名字,这里我就起一个6600的名字。因为我们的接口是/api/getList,以后可能会有/api/getList1/api/getList2等接口,所以我们这里定的正则表达式模式字符是^(.*?)/?api/(.*)$。最后我们设置一下需要重写的URL, 也就是[http://localhost:6600/{R:0}](http://localhost:6600/{R:0}),点击应用保存即可。


微信截图_20220506202340.png


这样我们就配置完成,看到列表中有我们设置的6600项


微信截图_20220506202356.png


域名www.xxx.com,在IIS已经绑定好了。所以同样可以这样请求:


http://www.xxx.com/api/getList/,实际上请求的是云服务器上的http://127.0.0.1:6600/api/getList/


结语


IIS 配置偏图形化,按理讲应该更友好一些,但事实是增添了很多操作步骤,比起Nginx 的几行配置文件,实际体验反而复杂许多。所以,我个人更比较倾向于Nginx。



相关文章
|
3天前
|
前端开发 JavaScript 安全
node登陆接口权限配置cookie-parser、express-session
本文介绍了在Node.js中使用express-session和cookie-parser实现登录接口的权限配置,包括验证码接口的生成和自定义中间件的创建,用于验证用户权限。
10 0
node登陆接口权限配置cookie-parser、express-session
|
3天前
|
JavaScript 前端开发
vue配合axios连接express搭建的node服务器接口_简单案例
文章介绍了如何使用Express框架搭建一个简单的Node服务器,并使用Vue结合Axios进行前端开发和接口调用,同时讨论了开发过程中遇到的跨域问题及其解决方案。
8 0
vue配合axios连接express搭建的node服务器接口_简单案例
|
1月前
|
JavaScript NoSQL 中间件
《Node.js后端修炼手册》——揭秘服务器搭建与部署上线的生死时速,让你一战成名!
【8月更文挑战第27天】本文详细介绍如何从零开始利用Node.js构建后端服务器并部署至生产环境。首先,通过简易步骤搭建基础服务器,包括环境安装与配置。接着,引入Express框架优化路由与中间件管理,提升开发效率。随后,利用Mongoose实现MongoDB数据库连接,增强数据交互能力。为保证系统稳定性,文中还讲解了错误处理机制。最后,通过PM2等工具部署应用至生产环境,确保高效运行。本教程辅以示例代码,帮助读者快速掌握Node.js后端开发全流程。
65 2
|
1月前
|
安全 C#
【Azure 应用服务】在安全漏洞扫描中发现有泄露服务器IIS版本的情况,如何实现屏蔽服务版本号信息呢?
【Azure 应用服务】在安全漏洞扫描中发现有泄露服务器IIS版本的情况,如何实现屏蔽服务版本号信息呢?
|
1月前
|
开发工具 开发者 Windows
Windows10 IIS Web服务器安装配置
Windows10 IIS Web服务器安装配置
|
1月前
|
自然语言处理 JavaScript 数据挖掘
Node.js服务器如何搭建?
【8月更文挑战第4天】Node.js服务器如何搭建?
30 2
|
1月前
|
缓存 负载均衡 JavaScript
Node.js 服务器性能优化
【8月更文挑战第4天】 Node.js 服务器性能优化
38 1
|
2月前
|
弹性计算 持续交付 Docker
阿里云云效产品使用合集之如何部署到阿里云服务器上的 Windows Server 上的 IIS
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2月前
|
监控
查看服务器/IIS日志、log、访问信息基本方法
除了手动查看,你也可以使用日志分析工具,如Log Parser、AWStats等,这些工具可以帮助你更方便地分析日志数据。
314 1
|
2月前
|
Java 测试技术
用代码模拟调用接口方式压测现网服务器的服务性能
用代码模拟调用接口方式压测现网服务器的服务性能
30 0