自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

十分鐘學(xué)技術(shù)系列 | Nginx從入門到上線

系統(tǒng) Linux
由于微信小程序要使用Https,但是又不能修改已有線上的配置。所以最簡(jiǎn)單的方法就是使用nginx轉(zhuǎn)發(fā),在nginx上使用https,然后再轉(zhuǎn)發(fā)到內(nèi)部服務(wù)器。Nginx由于其優(yōu)良的性能。一臺(tái)4核16GB的內(nèi)存完全可以支撐日均百萬pv級(jí)別的訪問。

前言

由于微信小程序要使用Https,但是又不能修改已有線上的配置。所以最簡(jiǎn)單的方法就是使用nginx轉(zhuǎn)發(fā),在nginx上使用https,然后再轉(zhuǎn)發(fā)到內(nèi)部服務(wù)器。Nginx由于其優(yōu)良的性能。一臺(tái)4核16GB的內(nèi)存完全可以支撐日均百萬pv級(jí)別的訪問。

基礎(chǔ)知識(shí)

Nginx由于使用了 epoll模型,要求linux的內(nèi)核必須在2.6以上。要了解epoll模型,可以看看知乎上的這篇文章:IO多路復(fù)用與 select,poll與epoll的關(guān)系。

使用 uname -a 查看Linux 內(nèi)核版本,如下是Centos 6.5的顯示:

 

下載

Nginx 的官網(wǎng)的下載地址:http://nginx.org/en/download.html。

Nginx官網(wǎng)提供了三個(gè)類型的版本:

  • Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以說是開發(fā)版
  • Stable version:***穩(wěn)定版,生產(chǎn)環(huán)境上建議使用的版本
  • Legacy versions:遺留的老版本的穩(wěn)定版

編譯與安裝

nginx依賴以下模塊:

  • gzip模塊需要 zlib 庫(kù) 及其開發(fā)環(huán)境
  • rewrite模塊需要 pcre 庫(kù)及開發(fā)環(huán)境
  • ssl 功能需要openssl庫(kù)及開發(fā)環(huán)境以及 yum install -y gcc-c++ 環(huán)境。  以gzip 模塊為例,查看以下模塊是否安裝:

 

如果沒有安裝,那么就 yum install zlib zlib-devel。

make是用來編譯的,它從Makefile中讀取指令,然后編譯。make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。

最簡(jiǎn)單的編譯安裝 Nginx

tar zxvf nginx-1.10.2.tar.gz

解壓以后進(jìn)入到

 

./configure 是用來檢查本機(jī)的的安裝環(huán)境。在configure階段結(jié)束以后,將會(huì)出現(xiàn)如下信息:

 

可以看到默認(rèn)的安裝目錄以及一些基本的配置。

啟動(dòng)

nginx默認(rèn)采用80端口,在直接啟動(dòng)nginx之前,先檢查80端口是否被占用,使用fuser -n tcp 80或者netstat -pan | grep :80查看80端口是否被占用。這里假設(shè)沒有被占用,然后進(jìn)入 /usr/local/nginx(上文提到的默認(rèn)安裝目錄)目錄:

 

訪問:http://ip:80/就可以看到nginx的歡迎頁(yè)面。

nginx配置

在/usr/local/nginx/conf(默認(rèn)配置)中,有一個(gè)nginx.conf文件。nginx.conf的代碼是這樣的:

 

刪掉不必要的文件,基本文件類型是這個(gè)樣子:

 

注意到最頂上的日志配置嗎?在頂部設(shè)置的配置全局生效。但是子模塊可以覆蓋它。頂部日志配置:

 

假設(shè)開發(fā)人員改變了nginx.conf配置,測(cè)試nginx.conf是否合法:

 

nginx配置文件架構(gòu)的圖

 

這里有詳細(xì)的配置:http://www.cszhi.com/20120513/nginx_nginx-conf.html

###https

在編譯階段需要附帶編譯上ssl模塊:./configure --with-http_ssl_module

限流

http://nginx.org/en/docs/http/ngx_http_limit_req_module.html

 

注意在Http中配置以后需要在server中引入。

burst一秒中可以訪問的數(shù)據(jù)量。burst相當(dāng)于一個(gè)授權(quán)令牌,每秒中每次查詢,當(dāng)前burst-1,查詢結(jié)束,burst+1;

如果burst為0時(shí),訪問不了。

 

可以看到,基本上是1秒返回一次了。

實(shí)例配置

 

責(zé)任編輯:龐桂玉 來源: 馬哥Linux運(yùn)維
相關(guān)推薦

2020-12-17 06:48:21

SQLkafkaMySQL

2022-06-16 07:31:41

Web組件封裝HTML 標(biāo)簽

2012-07-10 01:22:32

PythonPython教程

2019-04-01 14:59:56

負(fù)載均衡服務(wù)器網(wǎng)絡(luò)

2023-06-07 08:27:10

Docker容器

2021-03-03 11:36:57

Java 8Java 15Java

2021-09-07 09:40:20

Spark大數(shù)據(jù)引擎

2024-06-19 09:58:29

2023-04-12 11:18:51

甘特圖前端

2024-05-13 09:28:43

Flink SQL大數(shù)據(jù)

2015-09-06 09:22:24

框架搭建快速高效app

2023-11-30 10:21:48

虛擬列表虛擬列表工具庫(kù)

2023-07-15 18:26:51

LinuxABI

2009-10-09 14:45:29

VB程序

2019-09-16 09:14:51

2024-11-07 16:09:53

2022-08-26 09:01:07

CSSFlex 布局

2024-04-01 00:55:51

Canvas前端項(xiàng)目

2023-10-11 08:18:55

DjangoPython

2020-12-11 09:40:10

DevOpsCICD
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)