中标麒麟v4需离线rpm安装nginx:先用yumdownloader下载全量依赖包,再rpm -ivh *.rpm --force --nodeps安装;配置systemd服务实现开机自启;修改nginx.conf或通过sites-enabled机制指定root目录;最后firewall-cmd放行80/443端口。

在中标麒麟操作系统上配置Nginx服务,需先完成安装再进行服务管理与基础站点设置,确保Web服务可被外部访问且具备基本运行保障。
确认系统版本并选择安装方式
执行 cat /etc/os-release | grep -E "(NAME|VERSION_ID)" 查看系统标识,若输出含 NeoKylin 或 Kylin V4 字样,说明为中标麒麟V4(基于CentOS 7内核),必须使用 离线RPM包安装 或 源码编译安装;若为Kylin V10(基于Ubuntu 20.04或RHEL 8),则优先尝试YUM/APT在线安装。中标麒麟V4官方仓库长期未同步Nginx新包,直接 yum install nginx 会报“无可用软件包”错误。
离线RPM方式安装Nginx(适配中标麒麟V4)
方法一:在同版本联网机器上下载全量依赖包
1、执行 sudo yum install -y yum-utils 安装下载工具
2、运行 yumdownloader --resolve nginx nginx-filesystem nginx-all-modules 生成所有RPM文件
3、将生成的 .rpm 文件整体拷贝至目标中标麒麟V4服务器的 /mnt/nginx-offline/ 目录
4、进入该目录后执行:sudo rpm -ivh *.rpm --force --nodeps
注意:此命令跳过依赖检查,【必须确保所有RPM来自同一源、同架构(x86_64)】,否则后续启动会因缺失 libpcre.so.1 等库而失败。
配置Nginx开机自启(systemd方式)
第一步:创建服务单元文件
执行 sudo nano /etc/systemd/system/nginx.service,写入以下内容:
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s TERM $MAINPID
Restart=on-failure
[Install]
WantedBy=multi-user.target
第二步:重载并启用服务sudo systemctl daemon-reload → sudo systemctl enable nginx → sudo systemctl start nginx
第三步:验证状态sudo systemctl status nginx 中看到 active (running) 且无红色error日志即成功。
修改默认站点根目录并生效
方法1:直接编辑主配置
运行 sudo nano /etc/nginx/nginx.conf,定位到 server { ... } 块内,将 root /usr/share/nginx/html; 改为 root /opt/myweb;
方法2:使用子配置分离管理(推荐)
① 创建目录:sudo mkdir -p /etc/nginx/sites-available /etc/nginx/sites-enabled
② 新建站点配置:sudo nano /etc/nginx/sites-available/default,填入:
server {
listen 80;
server_name _;
root /opt/myweb;
index index.html;
}
③ 启用配置:sudo ln -sf /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
④ 在 http{} 块末尾添加:include /etc/nginx/sites-enabled/*;
⑤ 校验并重载:sudo nginx -t && sudo nginx -s reload
放行防火墙端口
中标麒麟V4默认使用 firewalld,执行:sudo firewall-cmd --permanent --add-port=80/tcpsudo firewall-cmd --permanent --add-port=443/tcpsudo firewall-cmd --reload
完成后,从局域网其他机器用浏览器访问 http://[服务器IP],应显示 /opt/myweb/index.html 内容。











