nginx如何指向本地路径及500错误

Posted BennuCTech

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx如何指向本地路径及500错误相关的知识,希望对你有一定的参考价值。

一个vite+vue3项目,想要部署到服务器上。项目build后的文件都在dist目录下,将这个目录拷贝到服务器上,然后在nginx里进行配置,如下:

server 
    listen       3571;
    server_name  localhost;
    location / 
        root /root/xxxx/dist/;
        try_files $uri $uri/ /index.html;
    

这样就可以通过服务器的公网ip+端口3571来访问这个vue项目了,如果想通过域名访问,则可以这样配置:

server 
    listen       80;
    server_name  video.xxx.com;
    location / 
        root /root/xxxx/dist/;
        try_files $uri $uri/ /index.html;
    

这样直接访问video.xxx.com就可以直接访问这个vue项目。

注意这里可能存在一个问题,就是配置正确后访问出现500错误。
出现这个错误首先判断是不是本地路径设置错了,如果路径没有错误,那么可能就是权限问题。
在nginx的一开头会配置nginx的用户,如下:

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
...

我这默认是nginx用户,这样就没有权限去访问/root/xxxx/dist/目录,所以出现500错误,换成root用户即可,如下:

user root;
worker_processes auto;
error_log /var/log/nginx/error.log;
...

注意:重新配置nginx后要重启nginx服务才行(service nginx restart)。

以上是关于nginx如何指向本地路径及500错误的主要内容,如果未能解决你的问题,请参考以下文章

Nginx http 500错误分析及解决方法

Tomcat更改错误页面指向,改变404,500错误页面

我的网站被恶意域名指向了,请教nginx该怎么设置

nginx HTTP500类型错误码出现的原因以及分析

如何在 nginx 中指向代理服务器的多条路径

如何配置nginx使得某些域名指向本地目录