news 2026/7/3 5:10:03

领导给我一台麒麟V10:你去用 nginx 部署一个前端项目

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
领导给我一台麒麟V10:你去用 nginx 部署一个前端项目

第一步:安装 nginx

1. 确定系统信息

root用户执行nkvers命令查看系统信息:

############## Kylin Linux Version ################# Release: Kylin Linux Advanced Server release V10 (Sword) Kernel: 4.19.90-24.4.v2101.ky10.aarch64 Build: Kylin Linux Advanced Server release V10 (SP2) /(Sword)-aarch64-Build09/20210524 #################################################

麒麟操作系统:

  • 版本:V10(SP2)
  • 内核:4.19.90-24.4.v2101.ky10.aarch64
  • CPU架构:aarch64

2. 检查是否已安装nginx

切换到root用户,之后的操作都是以root身份进行,然后查看nginx进程:

sudo -i # [sudo] admin 的密码: ps -ef | grep nginx # root 49691 46266 0 14:28 pts/4 00:00:00 grep nginx

如果输出只有一行并且以grep nginx结尾,则说明服务器很干净,你需要先安装nginx服务。

如果输出N多个进程信息,那么恭喜你,可以省去安装步骤:

sudo ps -ef | grep nginx # root 496080 1 0 6月16 ? 00:00:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; # www-data 497758 496080 0 6月16 ? 00:00:00 nginx: worker process # www-data 497767 496080 0 6月16 ? 00:00:00 nginx: worker process # www-data 497768 496080 0 6月16 ? 00:00:00 nginx: worker process # root 626417 626348 0 14:32 pts/0 00:00:00 grep --color=auto nginx

主进程master process信息中会标识nginx的安装目录,本例为/usr/sbin/nginx

3. 尝试用安装包直接安装

这里非常容易踩坑,极易出现兼容性或者缺少依赖项等问题。我的思路是,先确定系统兼容项,再针对下载特定包。经过网络搜索和AI,大致确定我这个版本的麒麟V10(SP2)CentOS 8更兼容,进一步验证:

检查项目命令输出
glibcldd --version | head -n1ldd (GNU libc) 2.28
opensslopenssl versionOpenSSL 1.1.1f 31 Mar 2020
gccgcc --version | head -n1gcc (GCC) 7.3.0

确认我的判断。先尝试直接用编译好的安装包安装,如果能成功就省去编译工作:

  • 从 nginx 官网下载CentOS 8兼容的el8版本的安装包nginx-1.30.2-1.el8.ngx.aarch64.rpm
  • 上传到服务器/opt/software/nginx/nginx-1.30.2-1.el8.ngx.aarch64.rpm
  • 执行安装:
cd /opt/software/nginx rpm -ivh ./nginx-1.30.2-1.el8.ngx.aarch64.rpm

稍微等待片刻便安装成功(忽略其他警告信息):

警告:./nginx-1.30.2-1.el8.ngx.aarch64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID ********: NOKEY Verifying... ################################# [100%] 准备中... ################################# [100%] 正在升级/安装... 1:nginx-1:1.30.2-1.el8.ngx ################################# [100%] ---------------------------------------------------------------------- Thanks for using nginx! ...
  • 验证安装
nginx -v

nginx version: nginx/1.30.2

which nginx

/usr/sbin/nginx

至此,已经成功在麒麟OS系统安装nginx/1.30.2

4. 启动nginx服务

查看nginx服务状态:

systemctl status nginx

服务状态正常(Active: active (running)):

● nginx.service - nginx - high performance web server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Active: active (running) since Thu 2026-06-18 09:06:16 CST; 6s ago Docs: http://nginx.org/en/docs/ Process: 59666 ExecStart=/usr/sbin/nginx -c ${conffile} (code=exited, status=0/SUCCESS) Main PID: 59667 (nginx) Tasks: 49 Memory: 125.4M CGroup: /system.slice/nginx.service ├─59667 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf ├─59668 nginx: worker process ├─59669 nginx: worker process ...

如果nginx服务未能正常启动,则需要排查原因解决问题。

第二步:部署前端应用

假定前端项目是unidmrcore组织的multi-tenant应用:

  • 文件路径是/opt/unidmrcore/multi-tenant/
  • 监听的端口是10115
  • nginx配置文件是/etc/nginx/conf.d/unidmrcore_multi_tenant.conf
  • nginx日志写入:
    • /var/log/nginx/unidmrcore_multi_tenant_access.log
    • /var/log/nginx/unidmrcore_multi_tenant_error.log

1. 准备前端部署文件

  • 上传安装包到/opt/unidmrcore/multi-tenant/dist.zip
  • 解压缩安装包unzip /opt/unidmrcore/multi-tenant/dist.zip -d /opt/unidmrcore/multi-tenant/
  • 确认内容ls /opt/unidmrcore/multi-tenant/dist

2. 配置nginx

  • 创建nginx配置文件:

    tee /etc/nginx/conf.d/unidmrcore_multi_tenant.conf << 'EOF' server { listen 10115; root /opt/unidmrcore/multi-tenant/dist; index index.html; # 字符编码 charset utf-8; # 日志配置 access_log /var/log/nginx/unidmrcore_multi_tenant_access.log; error_log /var/log/nginx/unidmrcore_multi_tenant_error.log; location / { try_files $uri $uri/ /index.html; } } EOF
  • 验证配置文件并重新加载:

    nginx -t && systemctl reload nginx # nginx: the configuration file /etc/nginx/nginx.conf syntax is ok # nginx: configuration file /etc/nginx/nginx.conf test is successful
  • 复核nginx服务状态:

    systemctl status nginx # ● nginx.service - nginx - high performance web server # Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) # Active: active (running) since Thu 2026-06-18 09:06:16 CST; 34min ago # Docs: http://nginx.org/en/docs/ # Process: 59666 ExecStart=/usr/sbin/nginx -c ${conffile} (code=exited, status=0/SUCCESS) # Process: 60358 ExecReload=/bin/sh -c /bin/kill -s HUP $(/bin/cat /run/nginx.pid) (code=exited, status=0/SUCCESS) # Main PID: 59667 (nginx) # Tasks: 49 # Memory: 151.3M # CGroup: /system.slice/nginx.service # ├─59667 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf # ├─60360 nginx: worker process # ├─60361 nginx: worker process

3. 防火墙放行

本机使用的是iptables,放行10115端口,并持久化生效:

iptables -I INPUT -p tcp --dport 10115 -j ACCEPT service iptables save # iptables: Saving firewall rules to /etc/sysconfig/iptables: [ OK ]

接下来只需要在本地(能访问通服务器的终端)验证服务器10115端口可以访问即可。

至此,已经完成把nginx安装到麒麟V10并部署前端应用的全部工作。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/3 5:07:12

VBA 宏编辑

体且垂直居中&#xff0c;区域内容为微软雅黑不加粗10号字体且垂直居中。Sub 一键处理JKLM()Dim ws As WorksheetSet ws ActiveSheetDim lastRowB As Long, lastRowC As LongDim lastRowD As Long, lastRowE As LonglastRowB ws.Cells(ws.Rows.Count, "B").End(xlU…

作者头像 李华
网站建设 2026/7/3 5:05:01

生成式引擎GEO优化老师姜泽服装吊牌厂家GEO优化周期

生成式引擎GEO优化老师姜泽服装吊牌厂家GEO优化周期 我不知道什么是生成式引擎GEO优化&#xff1f;平时看到这种名词解释&#xff0c;喜欢看词典或百科。深耕服装吊牌23行业&从事百度SEO优化16年&#xff0c;服装吊牌印刷厂家生成式引擎GEO优化多久出效果&#xff1f;我愿意…

作者头像 李华
网站建设 2026/7/3 5:04:21

多端同步· 万人群组· 独立部署,就选海王IM*

多端同步 万人群组 独立部署&#xff0c;就选海王IM 在数字化沟通需求不断提升的今天&#xff0c;一套稳定、安全、高效的即时通讯系统&#xff0c;已经成为企业、团队和平台运营的重要基础。海王IM即时通讯系统&#xff0c;专注于为客户提供私有化部署、定制开发与多端同步通讯…

作者头像 李华
网站建设 2026/7/3 5:03:16

GO 数据库内容导出到Excel表格

1.导出列表 func exportTaskList(c *gin.Context) {u : user.GetCookie(c)Data, err : handleData(c)if err ! nil {c.JSON(http.StatusInternalServerError, err.Error())return}warehouseId, _ : Data["warehouse_id"].(string)if ok, err : order.GetWareHouseEmp…

作者头像 李华
网站建设 2026/7/3 5:02:06

Codex 任务协作指南

Codex 任务协作指南&#xff1a;消息队列、引导、批注和多任务并行 在使用 Codex 处理复杂开发任务时&#xff0c;理解「消息何时排队、何时插队」「如何定点修改」「何时开新对话」&#xff0c;以及「计划模式、权限设置、运行环境」如何配合&#xff0c;能显著提升协作效率&…

作者头像 李华
网站建设 2026/7/3 4:59:40

2026年论文降重技巧大全:从知网30%到5%的10个实战方法

一、2026年论文降重现状&#xff1a;从被动应对到主动出击2026年&#xff0c;论文降重已经成为毕业季的标配动作。知网、维普等检测系统不断升级算法&#xff0c;传统的复制粘贴式写作已经行不通。很多同学查重率高达30%以上&#xff0c;面临无法参加答辩的困境。但降重不是简单…

作者头像 李华