欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

配置nginx保证frps服务器与web共用80端口的方法

程序员文章站 2023-08-25 10:48:01
首先你会有个疑惑,frp是什么呢?简单的说frp就是内网穿透工具,配置好客户端以后,可以通过服务器来访问内网。 现在我的服务器,已经用nginx 做站了,80端口只有一个...

首先你会有个疑惑,frp是什么呢?简单的说frp就是内网穿透工具,配置好客户端以后,可以通过服务器来访问内网。

现在我的服务器,已经用nginx 做站了,80端口只有一个,那如果frp的服务端也想使用80端口,那应该怎么办呢?

经过查询,这个是可以实现的,就是利用nginx的反向代理来实现。

补充一下:frps就是服务器端(server),frpc就是客户端(client)。

第一步:修改服务器中nginx.conf配置文件

在nginx.conf中http{ }里添加以下参数,

server {

  listen 80;

  server_name xiaoyue.ml www.xiaoyue.ml;

  location / {

   proxy_pass http://127.0.0.1:8080;

   proxy_redirect http://$host/ http://$http_host/;

   proxy_set_header x-real-ip $remote_addr;

   proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;

   proxy_set_header host $host;

  }

}

如下图,设置好后保存,重启nginx

配置nginx保证frps服务器与web共用80端口的方法

第二步:修改frp服务端配置文件

既然反向代理到了8080端口,那么frp服务端的配置文件也需要进行设置

frps.ini配置文件中vhost_http_port = 8080端口

配置nginx保证frps服务器与web共用80端口的方法

第三步:修改frp客户端配置文件

第一步配置中:server_name xiaoyue.ml www.xiaoyue.ml; 这里填写对应域名。

也支持泛解析,例如:server_name *.xiaoyue.ml;需要域名同时进行泛解析才行。

那么frpc.ini怎么修改呢,很简单

对应穿透服务配置里配置好对应域名,custom_domains = xiaoyue.ml

配置nginx保证frps服务器与web共用80端口的方法

第四步:

服务器中重启frps,本地电脑中启动frpc,就可以在浏览器中通过80端口直接访问xiaoyue.ml了。

配置nginx保证frps服务器与web共用80端口的方法

补充一下1:

    xiaoyue.ml是解析到我的服务器中,而这个网站是搭建在局域网里面我自己的电脑中。

    也就是首先保证你电脑*问127.0.0.1,是有内容的哦。

补充一下2:

    第一步的反向代理也可以这么做

    宝塔后台

    1)网站-->添加站点,输入你的域名

        比如输入添加的域名xiaoyue.ml 提交

    2)点击设置-->反向代理

        目标url 中填写  http://127.0.0.1:8080 ,请勿输入错误

        选择 启用反向代理

ps:是不是看的有点懵。。。

其实本文核心就一步,那就是将比如你访问xiaoyue.ml(默认情况下,我们访问网站都是80端口),反向代理到xiaoyue.ml:8080端口而已。

那这样做有什么意义呢,就是想直接通过域名访问,而不是通过域名:端口号访问网站。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。