How to Install Nginx on Kylin Linux Server V10
Galaxy Kylin Advanced Server Operating System V10 is an enterprise-grade Linux distribution widely deployed across government agencies, public institutions, and enterprise environments in China. For production deployments, the officially maintained Nginx 1.21.5 RPM package is the recommended choice, as it is specifically built for Kylin Linux V10 SP3 and receives ongoing security updates.
Although newer releases such as Nginx 1.24.x can be installed by compiling from source, they require additional dependency management and compatibility testing. Versions 1.25.x and later are generally not recommended unless extensive validation has been performed, as they may introduce compatibility issues with the Kylin platform.
🖥️ Verify the Operating Environment #
Before installing Nginx, confirm both the operating system version and system architecture.
Check the Kylin Linux Version #
cat /etc/os-release
Example output:
Kylin Linux Advanced Server V10 (Lance)
For this guide, the recommended target platform is:
- Galaxy Kylin Advanced Server V10
- Service Pack 3 (SP3)
Check the CPU Architecture #
uname -m
Typical outputs include:
x86_64— Intel or AMD 64-bit processorsaarch64— ARM-based platforms such as Feiteng or Kunpeng
Selecting the correct RPM package depends on the detected architecture.
📦 Install the Official Nginx RPM Package #
For production environments, the Kylin-maintained RPM package offers the highest level of compatibility and long-term stability.
Recommended Version #
Use the official package:
- Nginx 1.21.5
Typical package names include:
nginx-1.21.5-1.ky10.x86_64.rpm
nginx-1.21.5-1.ky10.aarch64.rpm
This version provides all essential production features, including:
- HTTP and HTTPS
- Reverse proxy
- Load balancing
- gzip compression
- Static content serving
While it is not the latest upstream release, it continues to receive official security maintenance from the Kylin distribution.
Online Installation #
If your server has access to the configured Kylin repositories, install Nginx directly:
yum install nginx-1.21.5
Offline Installation #
Offline deployment is common in isolated enterprise or government networks.
Download the required RPM packages from the official Kylin repository, including Nginx and its dependencies such as:
- PCRE
- zlib
- OpenSSL
After copying the packages to the target server, install them with:
rpm -ivh *.rpm
📂 Default Installation Paths #
The official RPM package installs Nginx into the standard Linux filesystem hierarchy.
Nginx Executable #
/usr/sbin/nginx
The executable is added to the system PATH, allowing it to be launched directly:
nginx
Configuration Directory #
/etc/nginx/
Primary configuration:
/etc/nginx/nginx.conf
Virtual host and reverse proxy configurations:
/etc/nginx/conf.d/*.conf
Default Web Root #
/usr/share/nginx/html
Log Directory #
/var/log/nginx/
Common log files include:
access.log
error.log
Systemd Service File #
/usr/lib/systemd/system/nginx.service
This service definition enables Nginx to be managed using systemctl.
⚙️ Managing the Nginx Service #
The following commands cover the most common administrative tasks.
Start the Service #
systemctl start nginx
Enable Automatic Startup #
systemctl enable nginx
Restart the Service #
systemctl restart nginx
Reload Configuration Without Interrupting Connections #
systemctl reload nginx
This command is preferred after configuration changes because existing client connections remain uninterrupted.
Check Service Status #
systemctl status nginx
A successful deployment should display:
active (running)
❓ Troubleshooting Common Issues #
Cannot Access Nginx from Another Computer #
If Nginx starts successfully but remote clients cannot connect, the firewall is the most likely cause.
Step 1. Verify Local Access #
Test the local HTTP endpoint:
curl 127.0.0.1
If the default Nginx page is returned, the web server is functioning correctly.
Step 2. Check Firewall Status #
systemctl status firewalld
If the status is:
active
the firewall is enabled.
Step 3. Verify Whether Port 80 Is Open #
firewall-cmd --list-ports
If 80/tcp is absent, inbound HTTP traffic is blocked.
Step 4. Allow HTTP Traffic #
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload
Verify remote access again after reloading the firewall configuration.
🔧 Resolve “Port 80 Already in Use” #
If Nginx reports that port 80 is already occupied, another process is listening on the HTTP port.
Option 1. Terminate the Existing Process #
fuser -k 80/tcp
Restart Nginx:
systemctl start nginx
Confirm the service status:
systemctl status nginx
A successful startup should display:
active (running)
Option 2. If fuser Is Unavailable
#
Identify the process currently using port 80:
ss -tulpn | grep :80
Example output:
LISTEN 0 128 *:80 *:* users:(("httpd",pid=1234,fd=4))
Terminate the process using its PID:
kill -9 1234
Then start Nginx again:
systemctl start nginx
📋 Summary #
For Galaxy Kylin Advanced Server V10 SP3, the official Nginx 1.21.5 RPM package remains the recommended deployment option due to its platform-specific optimization, long-term maintenance, and production-grade stability. Whether installed online or in an offline environment, the standard RPM package integrates seamlessly with systemd and provides all core features required for modern web hosting, reverse proxy services, HTTPS termination, and load balancing.
By following the verification, installation, and troubleshooting procedures outlined in this guide, administrators can deploy Nginx reliably on both x86_64 and ARM64 (aarch64) Kylin Linux systems while minimizing compatibility and maintenance risks.