【Nginx】使用nginx反向代理IIS实现80端口的解放
下载版本:
官网地址:http://nginx.org/en/download.html

我使用了稳定版本。
下载完成之后进行目录解压,解压之后大概就是这个样子:

网上很多人写这些了想了解概念的百度一下一搜一大把,所以就不唠叨了。只是记录一片windows中的使用,也是亲身体验,配置因为window可能有点坑所以记录以便查阅很分享。
了解nginx的功能推荐:https://blog.csdn.net/csdn265/article/details/58693594
开启服务
在当前目录运行nginx,第一种可以直接点击exe文件运行,第二种就是在当前目录启动shell命令行start nginx。
无论使用那种都是没有成功窗口的,当时我因为一闪而过的现象纠结了一大会,老以为没有成功,哈哈。所以我们可以去任务管理的进程下查看是否开启成功:

当然还有nginx告诉我们的成功信息,可以去日志文件夹下查看是否生成nginx.pid文件,此文件代表生成的线程pid值:


最后在浏览器里访问127.0.0.1看到欢迎界面:

然后记录下nginx的命令:
- nginx -s stop:快速关机
- nginx -s quit:退出
- nginx -s reload:更改配置,使用新配置启动新工作进程,正常关闭旧工作进程
- nginx -s reopen:重新打开日志文件
开启不成功解决
在这里有可能会不成功。出现问题我们就去解压目录下的logs文件夹下查看错误日志:

大概的意思就是80端口绑定失败了,意思说白可能就是80端口被占用了。
可通过以下代码查看是否某个端口被占用:
netstat -an | find "0.0.0.0:80"

然后在通过以下命令查看占用的pid:
netstat –ano

通过以上我们知道了pid=4的占用了,然后我们打开任务管理器=>详细信息:

发现被一个 NT Kernael &System 占用。然后我就去查这个东西的资料。说是和IIS服务相关的。然后就是关闭这个服务。
命令行关闭:
使用如下命令关闭iis相关服务(管理员身份进入cmd)
net stop http

然后选择Y。

然后继续运行以下命令,记得运行命令后重启电脑相当关键(可坑死我了)
sc config http start= disabled

若需要还原http服务使用以下命令即可(在管理员下):
sc config http start= demand & net start http
net start http
nginx设置代理
刚才我们已经成功开启了nginx服务,那么我们就可以使用它了,现在我用一个示例说明一下代理。毕竟我也是学习,可能这个配置也有说的不全以后在补充更详细的,这里只做一个简单的使用。
我们的示例总体效果是这样的,假如我们有一个网站可以挂在80端口下然后直接访问127.0.0.1这样就可以了,我们现在做到挂到其他端口下还可以这样访问到。
有些人会产生疑问,为什么要这样?其实很简单因为我又有了第二个网站我还想这样访问怎么办,所以我们分别把网站挂在801,802下然后nginx根据不同的访问域名代理到个字端口下。
我在这里已经有了一个弄好的网站,已经挂在了8080端口,

访问一下,这里如果你是本机就是127.0.0.1跟上面说的不冲突,因为我是这阿里云服务器下分配到的内网ip就是这个就当127.0.0.1来看就好了。

现在我们有了一个挂到8080端口下的网站,然后我们使用nginx进行80端口的反向代理配置:
首先找到nginx的文件目录:nginx根目录/conf/nginx.comfig文件
打开文件找到HTTP节点下的server节点,配置listen 为80,server_name 为域名或者ip+端口如果是本机也可以填写localhost,
因为我又域名所以我填写了域名,但是这里我为了给大家说明白还是改成了ip:172.16.104.184。
然后在配置location 节点配置转发地址:http://172.16.104.184:8080;
然后大致的nginx.config文件内容如下:

配置好了以后打开命令行输入:nginx -s reload 重新加载配置文件即可生效。
然后看我在浏览器输入:172.16.104.184不需要输入8080端口即可访问刚才的项目:

【Nginx】使用nginx反向代理IIS实现80端口的解放的更多相关文章
- (转)Nginx反向代理设置 从80端口转向其他端口
from :http://www.cnblogs.com/wuyou/p/3455381.html Nginx反向代理设置 从80端口转向其他端口 反向代理(Reverse Proxy)方式是指以 ...
- 使用nginx反向代理,一个80端口下,配置多个微信项目
我们要接入微信公众号平台开发,需要填写服务器配置,然后依据接口文档才能实现业务逻辑.但是微信公众号接口只支持80接口(80端口).我们因业务需求需要在一个公众号域名下面,发布两个需要微信授权的项目,怎 ...
- Nginx反向代理设置 从80端口转向其他端口
[root@localhost bin]# netstat -lnutp Active Internet connections (only servers) Proto Recv-Q Send-Q ...
- Nginx+Tomcat实现反向代理及动静分离
Nginx+Tomcat实现反向代理及动静分离 时间 2014-07-07 15:18:35 51CTO推荐博文 原文 http://yijiu.blog.51cto.com/433846/143 ...
- 五、Nginx多Server反向代理配置
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. server_name的匹配顺序 Nginx中的s ...
- Nginx设置Https反向代理,指向Docker Gitlab11.3.9 Https服务
目录 目录 1.GitLab11.3.9的安装 2.域名在阿里云托管,申请免费的1年证书 3.Gitlab 的 https 配置 4.Nginx 配置 https,反向代理指向 Gitlab 配置 目 ...
- 【转载】Nginx + Tomcat 实现反向代理
通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中由代理服务器向Internet上的web服 ...
- Nginx 如何设置反向代理 多服务器,配置区分开来,单独文件保存单个服务器 server 主机名配置,通过 include 实现
samcao 关注 2015.06.15 10:08* 字数 0 阅读 408评论 0喜欢 0 网络结构如上图.可能你只有一个公网的Ip地址. 但是您的内网有个网站需要映射至外网.而又不想添加其它 ...
- Nginx 部署、反向代理配置、负载均衡
Nginx 部署.反向代理配置.负载均衡 最近我们的angular项目部署,我们采用的的是Nginx,下面对Nginx做一个简单的介绍. 为什么选择Nginx 轻:相比于Apache,同样的web服务 ...
随机推荐
- 构建一个 预装 pm2 的 node 项目 docker 底包
Dockerfile: 创建 dockerfile 文件, 命名为 dockerfile-yourProject-node.8.12.0-pm2 # MAGE: yourGroup/yourProje ...
- Vs 开发时无法断点问题
1.清除解决方案 2.重新编译 3.删除项目目录下的obj 和 bin 4.在vs中配置 工具--项目--调试--去除勾选 要求源文件与原始版本完全匹配 关于调试问题 1.关闭诊断工具, 工具 =&g ...
- 解决 spring-cloud-starter-zipkin 启动错误
应用场景:Spring Boot 服务添加 Zipkin 依赖,进行服务调用的数据采集,然后进行 Zipkin-Server 服务调用追踪显示. 示例pom.xml配置: <parent> ...
- [Swift]LeetCode39. 组合总和 | Combination Sum
Given a set of candidate numbers (candidates) (without duplicates) and a target number (target), fin ...
- 【译】编写支持SSR的通用组件指南
原文来自:https://blog.lichter.io/posts/the-guide-to-write-universal-ssr-ready-vue-compon?utm_campaign=Vu ...
- 受到 1 万点暴击,二狗子被 DDoS 攻击的惨痛经历
二狗子的遭遇 “好消息,好消息,免费 DDoS 攻击软件上线了,性感黑客在线攻击,帮您攻克所有商业难题.”二狗子不知道在看着什么网站,新买的 Mac 中发出热闹的声音. 二狗子想知道“DDoS 是什么 ...
- qt之fiddler抓包
最近项目中使用到了Qt的网络库,在用的过程中也发现了不少坑和问题,本文仅仅作为记录,方便日后查阅. 因为我们整个客户端的gui都是使用qt来完成的,心想qt既然有网络库,而且真心觉着qt封装的控 ...
- spring cloud + .net core实现微服务架构
1.新建spring boot项目 2.添加spring-cloud-starter-eureka-server依赖(需提供版本信息) <!-- https://mvnrepository.co ...
- RabbitMQ学习笔记(二) 工作队列
什么是工作队列? 工作队列(又名任务队列)是RabbitMQ提供的一种消息分发机制.当一个Consumer实例正在进行资源密集任务的时候,后续的消息处理都需要等待这个实例完成正在执行的任务,这样就导致 ...
- Quartz.NET学习笔记(一) 简介
Quartz.NET是一款开源的任务调度框架,他是由Java中的任务调度框架Quartz移植而来的.官方网站https://www.quartz-scheduler.net/. Quartz.Net的 ...