EduOpenAI Core 文档/PM2 与 Nginx
PM2 与 Nginx
进程守护与反向代理
PM2 进程管理
启动(fork 模式必须 -x)
pm2 start /www/wwwroot/maic.eduopenai.com/.next/standalone/server.js \
--name eduopenai \
--cwd /www/wwwroot/maic.eduopenai.com/.next/standalone \
-x -i 1 --update-env
pm2 list # 状态
pm2 logs eduopenai --lines 50 --nostream # 日志(不阻塞)
pm2 restart eduopenai # 重启(改 .env 后)
pm2 save # 保存进程列表注意
--cwd 必须用绝对路径(相对路径会被二次拼接);standalone 不支持 cluster 模式(必须 -x fork);不要用 nohup 裸跑(宕机后无守护)。
Nginx 反向代理
关键配置
server {
listen 80;
server_name maic.eduopenai.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
# LLM 长生成防 504
proxy_read_timeout 300s;
proxy_send_timeout 300s;
}
}iframe 嵌入(CSP)
ALLOWED_FRAME_ANCESTORS=https://learn.eduopenai.com 在 next.config.ts 构建时读取,生成 CSP frame-ancestors。修改后需重新 build。
