一、Nginx介紹
Nginx是一款高性能的Web伺服器軟體,是一個輕量級的HTTP和反向代理伺服器。Nginx最初是由Igor Sysoev開發的,其目的是為了解決C10K問題。C10K就是指在同一時間內有10,000個客戶端與伺服器建立連接。
二、Linux下安裝Nginx
在Linux系統中,我們可以使用yum命令進行安裝,具體步驟如下:
//更新yum源 yum update //安裝Nginx yum install nginx
安裝完畢後,我們可以啟動Nginx:
//啟動Nginx systemctl start nginx //停止Nginx systemctl stop nginx //重啟Nginx systemctl restart nginx
三、配置Nginx
默認情況下,Nginx的配置文件位於/etc/nginx/nginx.conf,可以使用vim等編輯器進行修改。
修改Nginx的監聽埠為80:
//找到server段並修改listen埠為80
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
...
}
修改完成後,需要重啟Nginx服務。
四、Nginx反向代理配置
Nginx的反向代理功能極為強大,可以將不同的請求轉發到不同的伺服器上,從而實現負載均衡、高可用性等功能。
例如,我們可以將所有請求都轉發到上游伺服器192.168.1.1,並在返回數據前添加「hello」:
//在http段下添加upstream段
http {
upstream backend {
server 192.168.1.1;
}
//在server段下添加location段
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
location / {
proxy_pass http://backend;
sub_filter '' 'Nginx ';
sub_filter_once on;
}
...
}
}
修改完成後,需要重新載入Nginx配置文件。
五、Nginx限速配置
在高並發的場景下,為了保證服務的穩定性,通常需要對訪問進行限速。
例如,我們可以將每秒鐘對同一個IP地址的請求限制在5次:
//在http段下添加limit_req_zone段
http {
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;
//在server段下添加location段
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
location / {
limit_req zone=one burst=5;
...
}
...
}
}
修改完成後,需要重新載入Nginx配置文件。
六、Nginx下載配置
Nginx可以作為HTTP伺服器,並支持文件下載功能。我們可以使用Nginx來提供高效的文件下載服務。
例如,我們要提供一個名為example.zip的文件進行下載,配置如下:
//在http段下添加server段
http {
server {
listen 80;
server_name example.com;
charset utf-8;
location / {
root /var/www/example;
index index.html index.htm;
}
location /download/ {
alias /var/www/example/files/;
internal;
}
}
}
修改完成後,需要重新載入Nginx配置文件。
以上配置完成後,用戶可以通過以下鏈接進行下載:
http://example.com/download/example.zip
七、總結
本文介紹了Nginx在Linux環境下的安裝和配置,並針對反向代理、限速和文件下載等功能進行了詳細講解。通過本文的學習,可以更好地掌握Nginx的使用方法。
原創文章,作者:UFBWQ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/334613.html
微信掃一掃
支付寶掃一掃