当前位置: 首页 > news >正文

Nginx搭建test服务器

创建test域名

进入阿里云添加解析

创建域名:test.xxxxx.com

服务器复制项目代码

新建目录,Git拉取项目代码,安装上插件包

修改配置文件,启动测试服务

修改配置文件“服务器接口”

开启服务pm2 start app.js --name "test"

表格含义:

列名含义说明
id进程在 PM2 中的 ID(用于管理该进程)
name进程的名称(通过 --name参数设置)
namespace所属的命名空间,通常用于分组管理多个服务
version应用的版本号(如果定义了 package.json中的 version字段)
mode启动模式,常见有 fork(单进程)或 cluster(多进程集群)
pid操作系统中分配给该进程的 PID
uptime进程已运行的时间
(restart)重启次数(服务异常或手动重启时会增加)
status当前状态,如 onlinestoppederrored
cpu当前进程的 CPU 使用率
mem当前进程的内存使用量(通常以 MB 显示)
user启动该进程的用户
watching是否启用了 watch模式(文件变动自动重启)

设置Nginx代理

进入Nginx服务目录:/etc/nginx/

目录说明:

名称类型作用
cert/文件夹通常用于存放 SSL 证书(可自建)
conf.d/文件夹存放自定义的虚拟主机配置,所有 .conf 文件会被 nginx.conf 引入
modules-available/文件夹所有已安装模块的配置存放处
modules-enabled/文件夹启用的模块(通常是链接自 modules-available
sites-available/文件夹所有可用站点配置(推荐将你的网站配置放这里)
sites-enabled/文件夹启用的网站配置(通过软链接连接 sites-available 中的配置)
snippets/文件夹存放通用配置片段,比如 ssl-params.conf,可在多个站点复用

文件说明:

文件名作用
nginx.conf主配置文件,入口配置,通常会包含其它配置路径(如 conf.d/*.conf<font style="color:#DF2A3F;">sites-enabled</font>/*
mime.typesMIME 类型映射表,用于告诉浏览器如何处理不同类型的文件
fastcgi.conf / fastcgi_params配置 PHP FastCGI 的参数
koi-utf / koi-win / win-utf俄文字符集支持(基本不用动)
proxy_params定义反向代理时常用的一些参数(如设置 X-Forwarded-For 等)
scgi_params / uwsgi_params与 SCGI、uWSGI 协议集成时使用的参数配置

<font style="color:#DF2A3F;">test.xxxx.com</font> 建一个反向代理服务,在 <font style="color:#DF2A3F;">sites-available/</font> 中添加配置文件,通过软链接放入 <font style="color:#DF2A3F;">sites-enabled/</font>

# 编辑test服务
sudo nano /etc/nginx/sites-available/test.xxxx.com
# 然后软链接
sudo ln -s /etc/nginx/sites-available/test.xxxx.com /etc/nginx/sites-enabled/# 验证 Nginx 配置文件
sudo nginx -t
# 重载 Nginx 配置
sudo systemctl reload nginx# 启动 Nginx 服务(如果 Nginx 未启动)
sudo systemctl start nginx
# 系统启动时自动启动 Nginx
sudo systemctl enable nginx

server {listen 80;listen [::]:80;server_name serve.xxxxx.com;location / {proxy_pass http://127.0.0.1:3000;  # 代理到本地 Node.js 服务proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection 'upgrade';proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;}location /ws/ {proxy_pass http://127.0.0.1:8088;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection 'upgrade';proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;}# 如果没有 HTTPS,自动跳转 HTTPSif ($scheme = http) {return 301 https://$host$request_uri;}
}server {listen 443 ssl http2;listen [::]:443 ssl;server_name serve.xxxx.com;# SSL 证书ssl_certificate /etc/nginx/cert/serve.xxxxx.com/serve.xxxxx.com.pem; # cert 一般是证书存放目录ssl_certificate_key /etc/nginx/cert/serve.xxxxx.com/serve.xxxxx.com.key; # key 文件ssl_session_cache shared:SSL:1m;ssl_session_timeout 1h;# Nodejs 代理配置location / {proxy_pass http://127.0.0.1:3000;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;}# WebSocket 代理配置location /ws/ {proxy_pass http://127.0.0.1:8088;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;}
}

注意:websokert一定不要多配置,否则会出现冲突!!!推荐配置在主配置文件上。

nano 怎么保存:

Ctrl + O 保存,Enter 确认,Ctrl + X 退出。


错误日志位置<font style="color:#DF2A3F;">/etc/nginx/nginx.conf</font>主配置文件中:


到此,配合 pm2 就可以控制自己的代理服务了。

相关文章:

  • 【每日八股】复习 Redis Day5:集群(上)
  • C语言-指针(二)
  • libevent库详解:高性能异步IO的利器
  • 【数据结构】单链表的增删查改
  • 使用AI-01开发板和开源后端服务搭建整套小智服务系统
  • Encoder-free无编码器多模态大模型EVEv2模型架构、训练方法浅尝
  • 读书记:《认知红利》
  • 【计算机网络网络层深度解析】从IP协议到路由优化
  • 第二届平航杯wp
  • 深度学习笔记40_中文文本分类-Pytorch实现
  • 数字智慧方案6189丨智慧应急综合解决方案(46页PPT)(文末有下载方式)
  • n8n 使用 AI Agent 和 MCP 社区节点
  • 树与二叉树完全解析:从基础到应用
  • 4.27-5.4学习周报
  • 如何实现服务的自动扩缩容(Auto Scaling)
  • 1️⃣7️⃣three.js_OrbitControls相机控制器
  • 溯因推理思维——AI与思维模型【92】
  • 【免费】2007-2021年上市公司对外投资数据
  • 数字世界的“私人车道“:网络切片如何用Python搭建专属通信高速路?
  • P2196 [NOIP 1996 提高组] 挖地雷
  • 新华每日电讯头版聚焦上海:科创高地向未来
  • 5月1日,多位省级党委书记调研旅游市场、假期安全等情况
  • 党政机关停车场免费、食堂开放,多地“五一”游客服务暖心周到
  • 美国务院宣布新一轮与伊朗相关的制裁
  • 全文丨中华人民共和国民营经济促进法
  • 国台办:相关优化离境退税政策适用于来大陆的台湾同胞