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

nginx外网访问内网站点配置操作

程序员文章站 2022-06-19 12:46:39
背景:站点是前后端分离:vue+springboot前端内网地址:192.168.1.10:81api内网地址:192.168.1.12:8080外网域名:abc.ab.com 外网ip:10.114...

背景:

站点是前后端分离:vue+springboot

前端内网地址:192.168.1.10:81

api内网地址:192.168.1.12:8080

外网域名:abc.ab.com 外网ip:10.114.x.x

需求:

通过域名可以访问站点且站点静态资源且可访问api请求数据

方案一:(前提:外网域名映射服务器外网ip)

1.nginx配置域名监听且访问静态资源

2.重点来了!!!静态资源请求api的地址由192.168.1.12:8080修改为域名访问方式(abc.ab.com:8080)

重启nginx即可

其他方案等博主验证完后放上来!!

补充知识:用nginx实现反向代理,实现外网访问内网的服务

环境背景,服务器为ubuntu:

一台可以连接公网和内网的服务器a,公网ip地址:61.174.×.×,另一台内网服务器b上安装jenkins服务,内网的ip地址192.168.3.12

操作步骤:

在a上安装nginx

sudo apt-get install nginx

安装好之后,进入/etc/nginx/sites-enabled目录,打开目录中的文件,修改默认端口号为8085,

然后进入/etc/nginx/conf.d 目录,新建文件 jenkins.conf,文件内容如下:

server{
listen 8085;
server_name 61.174.171.61;
 
location /{
proxy_set_header x-real-ip $remote_addr;
proxy_set_header x-forward-for $proxy_add_x_forwarded_for;
proxy_set_header host $http_host;
proxy_set_header x-nginx-proxy true;
proxy_pass http://192.168.3.12:8080;
proxy_redirect off;
}

然后执行

sudo nginx -t

sudo nginx -s reload

如果出现错误:

nginx: [error] invalid pid number "" in "/run/nginx.pid"

则执行

sudo nginx -c /etc/nginx/nginx.conf

然后在公网*问61.174.171.61:8085,即可访问到内网的jenkins服务。

以上这篇nginx外网访问内网站点配置操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。