Skip to content

Nginx部署 ​

正文 ​

完成后端部署之后,我们就可以访问线上接口了,这时候,我们就需要部署nginx了。

和之前一样,我们依然使用之前的服务器,继续在OpenCloudOS系统上部署。

在 OpenCloudOS 上安装 Nginx 可以通过包管理器 yum 来完成,因为 OpenCloudOS 与 CentOS 高度兼容,所以你可以使用类似的方法。

以下是通过 yum 来安装 Nginx 的基本步骤。

安装启动流程 ​

因为我这台服务器比较干净,所以我这边不考虑切换到任何目录,直接在root目录下进行操作。

更新系统包列表 ​

在安装任何软件包之前,通常建议先更新

bash
sudo yum update

安装 EPEL 仓库 ​

EPEL(Extra Packages for Enterprise Linux)是一个大型的社区维护的仓库,包含了大量额外的软件包。虽然某些 OpenCloudOS 的版本可能已经预装了 EPEL,但如果你的系统没有,可以这样安装

bash
sudo yum install epel-release

安装 Nginx ​

使用 yum 来安装 Nginx,这里会问你是否ok,惯例,一路y就可以了。

bash
sudo yum install nginx

启动 Nginx ​

安装完成后,启动 Nginx 服务

bash
sudo systemctl start nginx

设置开机自启 ​

为了让 Nginx 在每次系统启动时自动启动,你可以启用 Nginx 服务

bash
sudo systemctl enable nginx

检查状态 ​

检查 Nginx 服务是否正在运行,正常情况下会显示 active (running)

bash
sudo systemctl status nginx

访问测试 ​

最后,在浏览器中输入服务器公网 IP 地址,如果一切正常,你应该能看到 Nginx 的默认欢迎页面了。

如果访问不成功,记得去看一下是不是防火墙忘了关。

配置重启流程 ​

在上边部署完成之后,我们需要开始进行配置。

查看 nginx 安装目录 ​

bash
ps -ef | grep nginx

查看配置文件 nginx.conf 路径 ​

这条命令也可以用于检查配置文件是否正确。

bash
nginx -t

当然也可以使用 find 命令进行文件查找

bash
# 从 / 根目录下查找文件名为 nginx.conf 的文件
find / -name nginx.conf
# 从 /etc 目录下查找文件名为 nginx.conf 的文件
find /etc -name nginx.conf

按需求配置目录 ​

核心就是server指向目录的问题,这里不管https的事情了。

配置完目录,记得把自己的文件放到自己指定的目录上去。

如果你的前端项目路由是用history模式,可能每次刷新页面会跳转到404页面,这是因为nginx代理配置的问题。

我们记得要配置try_files,这是 Nginx 中的一个非常有用的指令,用于处理静态文件和目录索引,只要配置好就不会有相关问题。

这里不详细展开介绍,感兴趣的朋友可以通过AI提问辅助了解,我个人用通义千问辅助问了一下,效果不错。

bash
server {
    listen       80;
    server_name  admin.crazystudent13.cn;

    location / {
        root /server/website/dist;
        try_files $uri $uri/ /index.html;
        index index.html;

    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

重启nginx ​

配置完成后,这时候如果打开自己的目录会发现可能还是nginx的页面,这就需要我们重启一下nginx。

bash
sudo systemctl restart nginx

一般来说,重启是正常成功的,如果出于保险的考虑,可以在看看状态。

sudo systemctl status nginx

如果遇到问题 ​

  • 查看错误日志文件通常可以帮助诊断问题,Nginx的错误日志位置通常在/var/log/nginx/error.log

    tail -f /var/log/nginx/error.log
  • 或者检查Nginx配置是否正确

    bash
    sudo nginx -t

访问测试 ​

至此,我们已经完成了所有的部署流程,现在,我们只需要访问对应的项目即可。

http://admin.crazystudent13.cn/

哦,对了,记得配置好前端的VITE_APP_BASE_API,将之改为对应的后端接口路径。

如果不处理好这个配置项,接口访问大概应该是代理当前的前端项目路径。

参考 ​

腾讯轻量服务器 OpenCloudOS 上安装 Nginx - 鄢云峰的个人网站 (yanyunfeng.com)

Linux 查看 nginx 安装目录和配置文件路径 - Ryan_zheng - 博客园 (cnblogs.com)

【原文】【转】linux上安装nginx | 远川的个人博客 (crazystudent13.cn)