You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2部署Next.js应用遇403错误,疑Nginx配置问题求助

解决AWS EC2部署Next.js的403错误(Nginx排查方案)

从你怀疑的Nginx配置入手,按以下步骤逐一排查:

1. 确认反向代理配置是否正确

Next.js是Node服务,Nginx需要把请求反向代理到pm2运行的服务端口(默认3000),如果配置里直接指向静态目录却没正确设置代理,必然返回403。
正确的核心配置片段应该是:

location / {
    proxy_pass http://localhost: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;
}

对比你的配置,检查是否遗漏了反向代理规则,或者代理地址写错。

2. 修复目录权限问题

403常见原因是Nginx运行用户没有访问/var/www/kosher/的权限:

  • 先查询Nginx运行用户:ps aux | grep nginx,通常是nginx或www-data
  • 给目标目录设置正确权限:
sudo chown -R nginx:nginx /var/www/kosher/
sudo chmod -R 755 /var/www/kosher/

3. 验证Nginx配置合法性

执行sudo nginx -t检查配置语法,有错误会直接提示,修正后重启Nginx:sudo systemctl restart nginx

4. 补充检查点

  • 确认EC2安全组开放了80(HTTP)或443(HTTPS)端口,允许外部访问
  • 用pm2 logs查看Next.js服务日志,确保服务正常启动并监听预期端口,没有启动报错

内容的提问来源于stack exchange,提问作者eitan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 01:45:33