跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash

银河麒麟服务器版 Nginx Web 服务部署实战

基于银河麒麟 V10 SP3 系统,演示了使用 Nginx 搭建 Web 服务的完整流程。涵盖环境准备、软件安装(Yum/源码)、配置文件修改、防火墙策略及性能优化。重点解决了国产化适配中的网络配置、源替换及权限问题,确保服务在生产环境中稳定高效运行。

信号故障发布于 2026/4/7更新于 2026/10/22102 浏览

背景与目标

在国产化替代浪潮下,政企单位对服务器硬件和操作系统的适配需求日益迫切。银河麒麟操作系统(Kylin OS)凭借高安全性、稳定兼容性和完善的生态支持,成为核心选择之一。Web 服务作为企业数字化转型的基础载体,其部署质量直接影响业务稳定性。

本文将聚焦银河麒麟服务器版搭建 Nginx Web 服务的全流程实战,从环境准备、软件安装、配置优化到访问测试,兼顾实用性与国产化适配特性。本文以 Kylin Server V10 SP3 为例,提供可直接复制的命令和配置示例。

环境准备

硬件与系统要求

虚拟机推荐配置:CPU 2 核,内存 ≥4GB,存储 ≥50GB。架构上 x86 或国产芯片均可,建议优先选择国产化硬件以契合替代需求。系统必须选择服务器版,安装时需勾选'开发工具'组件,避免后续缺失编译依赖。

必备工具清单

工具类型具体工具用途说明
远程连接Xshell / SecureCRT远程操作服务器
包管理yum / dpkg系统自带,用于软件安装与依赖管理
Web 服务器Nginx提供 Web 服务,支持高并发
辅助工具vim, netstat, firewall-cmd文本编辑、端口检测、防火墙配置
文件传输SCP, rz/sz, FileZilla本地与服务器间传输文件

网络与源配置

固定 IP 配置

编辑网络配置文件 /etc/sysconfig/network-scripts/ifcfg-ens33(网卡名需根据实际修改),示例如下:

TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=223.5.5.5
ONBOOT=yes

配置后重启网络服务:systemctl restart NetworkManager

软件源替换

默认源可能存在访问缓慢问题,建议替换为官方镜像源。以下以 x86 架构为例(鲲鹏架构请替换为 aarch64 后缀):

# 备份原有源
mv /etc/yum.repos.d/kylin_x86_64.repo /etc/yum.repos.d/kylin_x86_64.repo.bak

# 下载官方源
wget -O /etc/yum.repos.d/kylin_x86_64.repo http://update.cs2c.com.cn:8080/NS/V10/os/adv/lic/base/x86_64/Packages/kylin-x86_64.repo

# 更新缓存
yum clean all && yum makecache

注意:生产环境建议创建专用用户运行 Web 服务,避免直接使用 root。

核心部署:Nginx 安装与配置

安装方案选择

主流 Web 服务器为 Nginx 和 Apache。Nginx 在高并发支持和资源占用上表现更优,且完美适配鲲鹏、飞腾等国产架构,配置相对简洁,因此本文首选 Nginx。

方案一:Yum 源安装(推荐)

适合大多数场景,无需手动处理依赖。

  1. 检查是否已安装:nginx -v
  2. 执行安装:yum install nginx -y
  3. 验证版本:nginx -v
方案二:源码编译安装

适合需要自定义模块(如 SSL 加密)的场景。

  1. 安装编译依赖:
    yum install gcc pcre-devel zlib-devel openssl-devel -y
    
  2. 下载并解压源码(以 1.24.0 为例):
    wget http://nginx.org/download/nginx-1.24.0.tar.gz
    tar -zxvf nginx-1.24.0.tar.gz
    cd nginx-1.24.0
    
  3. 配置编译参数:
    ./configure \
      --prefix=/usr/local/nginx \
      --with-http_ssl_module \
      --with-http_stub_status_module
    
  4. 编译安装:
    make && make install
    
  5. 配置环境变量:
    echo "export PATH=/usr/local/nginx/sbin:$PATH" >> /etc/profile
    source /etc/profile
    

下文配置以 Yum 安装路径 /etc/nginx/ 为例,源码安装用户请替换为 /usr/local/nginx/conf/。

配置文件详解

主配置文件

编辑 /etc/nginx/nginx.conf,关键参数调整如下:

user nginx; # 运行用户
worker_processes auto; # 自动匹配 CPU 核心数
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
    worker_connections 1024; # 每个进程最大连接数
}

http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    
    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer"';
    access_log /var/log/nginx/access.log main;
    
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    
    include /etc/nginx/conf.d/*.conf; # 引入虚拟主机配置
}
虚拟主机配置

为避免修改主配置,建议在 /etc/nginx/conf.d/ 下新建 .conf 文件,例如 default.conf:

server {
    listen 80; # 监听 HTTP 端口
    server_name localhost; # 域名或服务器 IP
    root /var/www/html; # 网站根目录
    index index.html index.htm;
    
    access_log /var/log/nginx/default-access.log main;
    error_log /var/log/nginx/default-error.log;
    
    location / {
        try_files $uri $uri/ =404; # 找不到文件返回 404
    }
}

修改后务必执行语法检查:nginx -t

网页文件部署

  1. 创建目录:mkdir -p /var/www/html
  2. 制作测试页:
    vim /var/www/html/index.html
    
    内容示例(修正了 HTML 标签错误):
    <!DOCTYPE html>
    <head>
        <meta charset="UTF-8">
        <style>
            body { text-align: center; margin-top: 100px; font-family: "Microsoft YaHei"; }
            h1 { color: #0066cc; }
            .desc { font-size: 18px; color: #333; margin-top: 30px; }
        </style>
    </head>
    <body>
        <h1>银河麒麟服务器 Web 服务部署成功!</h1>
        <p>国产化操作系统 + Nginx 架构,安全稳定高效</p>
        <p>服务器 IP:192.168.1.100</p>
    </body>
    </html>
    
  3. 设置权限:
    chown -R nginx:nginx /var/www/html
    chmod -R 755 /var/www/html
    

服务启动与防火墙

服务控制

systemctl start nginx      # 启动
systemctl status nginx     # 查看状态
systemctl enable nginx     # 开机自启
systemctl reload nginx     # 重载配置(不中断服务)

防火墙配置

银河麒麟默认启用 firewalld,需开放 80 端口:

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
firewall-cmd --list-ports

SELinux 处理

若启用 SELinux 导致访问受限,可临时关闭测试:setenforce 0。生产环境推荐配置上下文而非永久关闭:

chcon -R -t httpd_sys_content_t /var/www/html/

访问测试与优化

多场景验证

  1. 本地测试:curl http://localhost:80
  2. 局域网访问:浏览器输入 http://服务器 IP
  3. 公网访问:需路由器端口映射及域名解析

性能优化建议

针对高并发场景,调整 nginx.conf 中的 events 块:

events {
    use epoll; # 启用 epoll 模型
    worker_connections 4096; # 根据内存调整
}
worker_rlimit_nofile 65535; # 打开文件数限制

修改后执行 systemctl reload nginx 生效。

目录

  1. 背景与目标
  2. 环境准备
  3. 硬件与系统要求
  4. 必备工具清单
  5. 网络与源配置
  6. 固定 IP 配置
  7. 软件源替换
  8. 备份原有源
  9. 下载官方源
  10. 更新缓存
  11. 核心部署:Nginx 安装与配置
  12. 安装方案选择
  13. 方案一:Yum 源安装(推荐)
  14. 方案二:源码编译安装
  15. 配置文件详解
  16. 主配置文件
  17. 虚拟主机配置
  18. 网页文件部署
  19. 服务启动与防火墙
  20. 服务控制
  21. 防火墙配置
  22. SELinux 处理
  23. 访问测试与优化
  24. 多场景验证
  25. 性能优化建议

更多推荐文章

查看全部
  • C++ LeetCode 算法题解析:逆波兰表达式与滑动窗口
  • FPGA 核心硬件资源详解:LUT、FF、BRAM、DSP、PLL 及综合报告解读
  • 动态规划专题:子序列问题的核心思路与实战
  • MySQL 8.4.7 Windows 免安装版部署与配置详解
  • AI 绘画入门:从零掌握文生图核心技术
  • AI 大模型 40 年发展历程与未来统一趋势研究
  • C++ std::map 容器用法详解
  • C++ 命令行编译流程与 CMake 构建工具实战:最小化日志系统示例
  • 无人机与机器人群控通信技术现状及未来展望
  • Llama-2-7b 昇腾 NPU 测评:性能数据、场景适配与硬件选型
  • 双延迟深度确定性策略梯度算法 (TD3) 详解与实现
  • ARINC 825:一种航电通信总线标准
  • C++ 虚函数与纯虚函数:深入理解多态机制
  • 命令行下的 MCPHost:让大模型通过协议与工具交互
  • Midjourney 进阶:色调详解(上)
  • Midjourney 产品摄影提示词指南:风格、构图与背景详解
  • Go 命令行 AI 对话客户端开发:从环境部署到核心实现
  • STL 有序关联容器详解:set、map 及其变体使用指南
  • WPF 中使用 ListView 封装组合控件 TreeView+DataGrid
  • 鸿蒙电商购物车实战:用户管理、商品列表与购物车功能实现

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online