• 【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端口即可访问刚才的项目:

  • 相关阅读:
    Allegro PCB Design GXL (legacy) 使用slide无法将走线推挤到焊盘的原因
    OrCAD Capture CIS 16.6 导出BOM
    Altium Designer (17.0) 打印输出指定的层
    Allegro PCB Design GXL (legacy) 将指定的层导出为DXF
    Allegro PCB Design GXL (legacy) 设置十字大光标
    Allegro PCB Design GXL (legacy) 手动更改元器件引脚的网络
    magento产品导入时需要注意的事项
    magento url rewrite
    验证台湾同胞身份证信息
    IE8对css文件的限制
  • 原文地址:https://www.cnblogs.com/yanbigfeg/p/9666949.html
Copyright © 2020-2023  润新知