背景
因为服务部署的是公司内网,所以需要通过内网穿透,让外部网络访问到内网的东西,NATAPP就是提供内网穿透服务的,但是由于一个natapp只能绑定访问一个端口,所以没办法同时让他访问我的两个项目,因为每申请一个端口都需要一部分的支出,所以为了减少支出,可以通过nginx去实现服务的转发。nginx真的是相当的牛逼,为它呐喊。
这个是NATAPP内网穿透的教程,需要学习的可以去学习,简单:https://natapp.cn/article/natapp_newbie
1、环境:
(1)、一个linux服务器(centos或者ubuntu)
(2、)Nginx
2、nginx安装:
ubuntu系统:
apt-get安装nginx
# 切换至root用户
sudo su root
apt-get install nginx
查看nginx是否安装成功
nginx -v
启动nginx
service nginx start
启动后,在网页重输入ip地址,即可看到nginx的欢迎页面。至此nginx安装成功
Centos系统:
参照文档:https://blog.csdn.net/qq_37345604/article/details/90034424
3、相关配置
1、购买相关的内网穿透的域名:如果www.shudu.cc, 穿透端口设置为80, ip设置为你部署了nginx服务的服务器地址。
2、配置nginx:
(一)、进入到:配置文件下面
cd /etc/nginx/conf.d
- 、查看是否存在default.conf文件,如果没有的还创建这个文件,编辑文件。
vim default.conf
(三)、编写配置文件
server {
#监听的端口,配置的是内网穿透监听的端口
listen 80;
# 监听的内网穿透的域名
server_name shiduai.natapp1.cc;
charset utf-8;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
# 这里就是配置通过不同的路径,跳入到不同的服务,
# 如访问地址配置的是http://shiduai.natapp1.cc/api/ 跳转的是http://192.168.9.41:30000/服务。
# 配置的是http://shiduai.natapp1.cc/apo/ 跳转的是http://192.168.9.41:30001/
location /api/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.9.41:30000/;
}
location /apo/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.9.41:30001/;
}
location /apn/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.9.7:8081/api/;
}
location /apf/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.9.41:8082/;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
注意,修改了nginx配置文件要执行下面的命令,重新加载配置:
nginx -s reload