RockyLinux9
•
•
By SystemArch_Alex
Rocky Linux 9 基礎教學 (14):Nginx 高效能網頁伺服器架設與優化
打造現代化的 Web 服務環境
Nginx 以其高併發、低資源佔用的特性,成為 Rocky Linux 9 上架設網頁伺服的首選。本篇將從安裝、配置到安全加固,帶你完成一個生產等級的部署。
1. 安裝 Nginx
Rocky Linux 9 的 AppStream 儲存庫中已包含 Nginx:
sudo dnf install nginx -y
sudo systemctl enable --now nginx
2. 配置檔案結構解析
/etc/nginx/nginx.conf:主配置檔。/etc/nginx/conf.d/:放置各個網站 (Virtual Host) 配置的目錄。/usr/share/nginx/html/:預設的網頁根目錄。
3. 建立虛擬主機 (Server Block)
不要直接修改主配置檔,建議為每個網站建立獨立配置。例如建立 /etc/nginx/conf.d/blog.conf:
server {
listen 80;
server_name blog.example.com;
root /var/www/blog;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
access_log /var/log/nginx/blog_access.log;
error_log /var/log/nginx/blog_error.log;
}
4. 安全加固與防火牆設定
確保防火牆允許 HTTP 與 HTTPS 流量:
sudo firewall-cmd --permanent --add-service={http,https}
sudo firewall-cmd --reload
此外,建議隱藏 Nginx 版本號以減少被針對性攻擊的風險。在 nginx.conf 的 http 區塊加入:
server_tokens off;
5. 效能優化建議
- Worker Processes:通常設定為
auto,讓 Nginx 自動偵測 CPU 核心數。 - Gzip 壓縮:開啟 Gzip 可以大幅減少傳輸數據量,提升載入速度。
- Keepalive:適當調高連線保持時間,減少頻繁握手帶來的開銷。
最後,每次修改完配置後,務必使用指令檢查語法正確性:
sudo nginx -t
sudo systemctl reload nginx