国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Nginx安裝配置詳解

瀏覽:226日期:2023-03-13 15:37:23

不論是本地開發(fā),還是遠程到 Server 開發(fā),還是給提供 demo 給人看效果,我們時常需要對 Nginx 做配置,Nginx 的配置項相當多,如果考慮性能配置起來會比較麻煩。不過,我們往往只是需要一個靜態(tài) Server,或者一個反向代理 Server,這對 Nginx 來說小菜一碟。

簡介

Nginx 的安裝:

# CentOSyum install nginx;# Ubuntusudo apt-get install nginx;# Macbrew install nginx;

一般可以在/etc/nginx/nginx.conf中配置,啟動參數(shù)為:

# 啟動nginx -s start;# 重新啟動,熱啟動,修改配置重啟不影響線上nginx -s reload;# 關(guān)閉nginx -s stop;# 修改配置后,可以通過下面的命令測試是否有語法錯誤nginx -t;

-s,signal,意思就是向 nginx 發(fā)送start|reload|stop命令,還是很好理解的。先看一個最簡單的nginx.conf配置:

events {    # 需要保留這一個段落,可以為空}http {    server {listen 127.0.0.1:8888;location / {    root /home/chenya/test/;}    }}

啟動后,訪問htttp://127.0.0.1:8888,如果/home/chenya/test/下有index.html文件就會展示index.html的內(nèi)容,否則返回404

Nginx 配置一個 Web 服務(wù)器

以下對配置 Web 服務(wù)器的參數(shù)做簡單說明,包括如何配置端口、域名,如何處理請求,如何響應(yīng)請求。

1、 虛擬主機和請求的分發(fā)

域名和端口的配置

listen 127.0.0.1:8000;listen *:8000;listen localhost:8000;# IPV6listen [::]:8000;# other paramslisten 443 default_serer ssl;listen 127.0.0.1 default_server accept_filter=dataready backlog=1024

主機名配置

server_name www.chenya.site  chenya.siteserver_name *.chenya.comserver_name ~^\.chenya\.com$

URI 匹配

location = / {    # 完全匹配  =    # 大小寫敏感 ~    # 忽略大小寫 ~*}location ^~ /images/ {    # 前半部分匹配 ^~    # 可以使用正則,如:    # location ~* \.(gif|jpg|png)$ { }}location / {    # 如果以上都未匹配,會進入這里}

2、 文件路徑的定義

根目錄設(shè)置

location / {    root /home/chenya/test/;}

別名設(shè)置

location /blog {    alias /home/chenya/www/blog/;}location ~ ^/blog/(\d+)/([\w-]+)$ {    # /blog/20141202/article-name     # -> /blog/20141202-article-name.md    alias /home/chenya/www/blog/$1-$2.md;}

首頁設(shè)置

index /html/index.html /php/index.php;

重定向頁面設(shè)置

error_page    404 /404.html;error_page    502  503    /50x.html;error_page    404  =200   /1x1.gif;location / {    error_page  404 @fallback;}location @fallback {    # 將請求反向代理到上游服務(wù)器處理    proxy_pass http://localhost:9000;}

try_files 設(shè)置

try_files $uri $uri.html $uri/index.html @other;location @other {    # 嘗試尋找匹配 uri 的文件,失敗了就會轉(zhuǎn)到上游處理    proxy_pass  http://localhost:9000;}location / {    # 嘗試尋找匹配 uri 的文件,沒找到直接返回 502    try_files $uri $uri.html =502;}

Nginx 配置反向代理服務(wù)器

反向代理(reserve proxy)方式是指用代理服務(wù)器來接受 Internet 上的連接請求,然后將請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)中的上游服務(wù)器,并將上游服務(wù)器上得到的結(jié)果返回給 Internet 上請求連接的客戶端,此時代理服務(wù)器對外的表現(xiàn)就是一個 Web 服務(wù)器。

Nginx 具備超強的高并發(fā)高負載能力,一般會作為前端的服務(wù)器直接向客戶端提供靜態(tài)文件服務(wù);而業(yè)務(wù)一般還包含一些業(yè)務(wù)邏輯需要 Apache、Tomcat 等服務(wù)器來處理,故通常 Nginx 對外表現(xiàn)即為靜態(tài) Web 服務(wù)器也是反向代理服務(wù)器。

缺點是增加了一次請求的處理時間,優(yōu)點是降低了上游服務(wù)器的負載,盡量將壓力放在 Nginx 服務(wù)器上。

1、負載均衡配置

upstream,定義一個上游服務(wù)器集群

upstream backend {    # ip_hash;    server s1.chenya.com;    server s2.chenya.com;}server {    location / {proxy_pass http://backend;    }}

2、反向代理

proxy_pass 將請求轉(zhuǎn)發(fā)到有處理能力的端上,默認不會轉(zhuǎn)發(fā)請求中的 Host 頭部

location /blog {    prox_pass http://localhost:9000;    ### 下面都是次要關(guān)注項    proxy_set_header Host $host;    proxy_method POST;    # 指定不轉(zhuǎn)發(fā)的頭部字段    proxy_hide_header Cache-Control;    proxy_hide_header Other-Header;    # 指定轉(zhuǎn)發(fā)的頭部字段    proxy_pass_header Server-IP;    proxy_pass_header Server-Name;    # 是否轉(zhuǎn)發(fā)包體    proxy_pass_request_body on | off;    # 是否轉(zhuǎn)發(fā)頭部    proxy_pass_request_headers on | off;    # 顯形/隱形 URI,上游發(fā)生重定向時,Nginx 是否同步更改 uri    proxy_redirect on | off;}

一個簡單的例子,Node.js

一個十分常見的需求:處理請求,如果是靜態(tài)文件,Nginx 直接返回,否則交給 Node 服務(wù)器處理。首先創(chuàng)建了一個 Node 服務(wù)器:

const http = require("http");http.createServer((req, res) => {    res.end("hello world");}).listen(9000);

任何請求過來都返回hello world,簡版的 Nginx 配置如下,

events {    # 這里可不寫東西    use epoll;}http {    server {listen 127.0.0.1:8888;# 如果請求路徑跟文件路徑按照如下方式匹配找到了,直接返回try_files $uri $uri/index.html;location ~* ^/(js|css|image|font)/$ {    # 靜態(tài)資源都在 static 文件夾下    root /home/chenya/www/static/;}location /app {    # Node.js 在 9000 開了一個監(jiān)聽端口    proxy_pass http://127.0.0.1:9000;}# 上面處理出錯或者未找到的,返回對應(yīng)狀態(tài)碼文件error_page    404    /404.html;error_page    502  503  504  /50x.html;    }}

首先 try_files,嘗試直接匹配文件;沒找到就匹配靜態(tài)資源;還沒找到就交給 Node 處理;否則就返回 4xx/5xx 的狀態(tài)碼。

測試語法

nginx -t

到此這篇關(guān)于Nginx安裝配置的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持。

標簽: Nginx
相關(guān)文章:
主站蜘蛛池模板: 日韩不卡毛片 | 大伊香蕉精品视频在线天堂 | 伊人色在线观看 | 国产91香蕉视频 | 精品成人在线观看 | 手机看片在线精品观看 | 在线观看亚洲专区 | 国产三级a三级三级 | 国产精品久久久久久福利 | 日韩精品一区二三区中文 | 欧美粗又大gay69视频 | 国产免费人视频在线观看免费 | 成年人精品视频 | 国产视频自拍偷拍 | 欧美精品三级在线 | 亚洲图片 自拍偷拍 | 国产精品二区页在线播放 | 久久99精品九九九久久婷婷 | 久久久久久综合一区中文字幕 | 亚洲在成人网在线看 | 欧美美女一区二区三区 | 美国毛片一级视频在线aa | 久草中文在线观看 | 日本在线观看免费视频 | 欧美黑粗特黄午夜大片 | 男女性高爱潮免费的国产 | 美女视频一区二区三区在线 | 欧美色偷偷 | 91久久精品国产亚洲 | 国产亚洲精品国产 | 日日碰碰| 国产亚洲精品成人一区看片 | 怡红院免费的全部视频 | 黄人成a动漫片免费网站 | 国产乱码精品一区二区三区四川人 | 亚洲欧美精品一区天堂久久 | 成人国产精品免费软件 | 99久国产| 欧美18毛片免费看 | 毛片搜索 | 波多野吉衣 免费一区 |