在CentOS上配置和優(yōu)化Nginx服務(wù)器
1、安裝Nginx
使用以下命令更新系統(tǒng)軟件包:
“`
sudo yum update
“`
安裝EPEL存儲庫,以獲取額外的軟件包:
“`
sudo yum install epelrelease
“`
安裝Nginx:
“`
sudo yum install nginx
“`
2、配置Nginx
編輯Nginx主配置文件:
“`
sudo vi /etc/nginx/nginx.conf
“`
在http
塊中添加以下內(nèi)容,以設(shè)置默認站點和虛擬主機:
“`
server {
listen 80;
server_name example.com; # 替換為你的域名或IP地址
root /var/www/html; # 網(wǎng)站根目錄
location / {
index index.html index.htm; # 設(shè)置默認首頁文件名
}
}
“`
保存并退出編輯器。
3、啟動Nginx服務(wù):
“`
sudo systemctl start nginx
“`
如果希望Nginx在系統(tǒng)啟動時自動運行,請執(zhí)行以下命令:
“`
sudo systemctl enable nginx
“`
4、配置防火墻允許HTTP和HTTPS流量:
創(chuàng)建一個新的防火墻規(guī)則,允許HTTP流量通過端口80:
“`
sudo firewallcmd permanent zone=public addservice=http
sudo firewallcmd reload
“`
如果需要支持HTTPS,還需要允許HTTPS流量通過端口443:
“`
sudo firewallcmd permanent zone=public addservice=https
sudo firewallcmd reload
“`
5、優(yōu)化Nginx性能:
調(diào)整工作進程數(shù)和線程數(shù):在Nginx主配置文件的events
塊中,可以設(shè)置worker_processes
和worker_connections
參數(shù)來調(diào)整工作進程數(shù)和每個進程的最大連接數(shù)。
“`
events {
worker_processes 4; # 根據(jù)CPU核心數(shù)進行調(diào)整,通常設(shè)置為等于CPU核心數(shù)的值。
worker_connections 1024; # 根據(jù)服務(wù)器負載進行調(diào)整。
}
“`
啟用Gzip壓縮:在Nginx主配置文件的http
塊中,添加以下內(nèi)容以啟用Gzip壓縮:
“`
http {
gzip on; # 開啟Gzip壓縮。
gzip_min_length 1000; # 設(shè)置最小壓縮文件大小。
gzip_proxied any; # 對代理服務(wù)器上的響應(yīng)進行壓縮。
gzip_types text/plain text/css application/json application/javascript application/xjavascript text/xml application/xml application/xml+rss text/javascript; # 設(shè)置要壓縮的文件類型。
gzip_disable "MSIE [16]."; # IE瀏覽器不支持Gzip壓縮,因此禁用它。
}
“`
調(diào)整緩存策略:在Nginx主配置文件的http
塊中,可以設(shè)置緩存策略以提高性能,將靜態(tài)文件緩存設(shè)置為30天:
“`
http {
…
location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
access_log off; # 關(guān)閉訪問日志記錄。
expires 30d; # 設(shè)置緩存過期時間為30天。
log_not_found off; # 關(guān)閉未找到文件的日志記錄。
}
…
}
“`