我在 nginx 上托管 nextJs 网站。
这是我的配置:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html/;
index index.html index.htm index.nginx-debian.html;
server_name a.com;
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_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache_bypass $http_upgrade;
try_files $uri $uri/ =404;
}
}
当我尝试访问我的网站时,它给出了 404 静态错误:
如果我添加此行,站点静态加载效果很好,我无法导航该站点:
` location /_next/static/ {
alias /var/www/html/dist/static/;
expires 365d;
access_log off;
}
`
它给了我这个错误:
**_next/data returns 404 (NGINX)**
我正在使用 pm2 npm 运行我的 next.js
更改 nginx 配置
您可以尝试删除
行try_files $uri $uri/ =404;
默认情况下,nextjs 构建目录是
.next/static
您可以尝试将别名路径更改为
location /_next/{
alias /path/.next/;
expires 365d;
access_log off;
}