linux nginx 重启_Nginx 的介绍及安装
大家好,我是你們的導師,經常看我朋友圈的同學應該知道,我每天會在微信上給大家免費提供以下服務!
1、長期為你提供最優質的學習資源!
2、給你解決技術問題!
3、每天在朋友圈里分享優質的技術文章!
4、每周1、3、5送紙質書籍免費送給大家,每年至少送書800本書!
5、為大家推薦靠譜的就業單位!
請注意!我上面說的5點全部都是免費的!全網你應該找不到第二家吧!
當然,大家在我私人微信上問我問題,僅限回答web前端、java相關的。
---------------------------
好了,接下來開始今天的技術分享!上次老師跟大家分享了Mybatis整合Spring的知識,今天跟大家分享下Nginx的介紹及安裝的知識。
1 Nginx的介紹
圖1 Nginx架構圖
1.什么是Nginx
Nginx是一款高性能的http 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。由俄羅斯的程序設計師Igor Sysoev所開發,官方測試nginx能夠支支撐5萬并發鏈接,并且cpu、內存等資源消耗卻非常低,運行非常穩定。
2.Nginx的應用場景
1、http服務器。Nginx是一個http服務可以獨立提供http服務。可以做網頁靜態服務器。2、虛擬主機。可以實現在一臺服務器虛擬出多個網站。例如個人網站使用的虛擬主機。3、反向代理,負載均衡。當網站的訪問量達到一定程度后,單臺服務器不能滿足用戶的請求時,需要用多臺服務器集群可以使用nginx做反向代理。并且多臺服務器可以平均分擔負載,不會因為某臺服務器負載高宕機而某臺服務器閑置的情況。3.Nginx的設計架構
Nginx基于模塊化設計、基于事件驅動模型處理請求、主進程和工作進程
https://coding.net/u/aminglinux/p/nginx/git/blob/master/4z/jg.mdNginx架構
Nginx服務器使用 master/worker 多進程模式。
主進程(Master process)啟動后,會接收和處理外部信號;
主進程啟動后通過fork() 函數產生一個或多個子進程(work process),每個子進程會進行進程初始化、模塊調用以及對事件的接收和處理等工作。
主進程
主要功能是和外界通信和對內部其他進程進行管理,具體來說有以下幾點:
讀取Nginx配置文件并驗證其有效性和正確性建立、綁定和關閉socket按照配置生成、管理工作進程接收外界指令,比如重啟、關閉、重載服務等指令日志文件管理子進程(worker process)
是由主進程生成,生成數量可以在配置文件中定義。該進程主要工作有:
接收客戶端請求將請求依次送入各個功能模塊進行過濾處理IO調用,獲取響應數據與后端服務器通信,接收后端服務器處理結果數據緩存,訪問緩存索引,查詢和調用緩存數據發送請求結果,響應客戶端請求接收主進程指令,如重啟、重載、退出等2 Nginx的安裝
1. Nginx下載
進入http://nginx.org/en/download.html 下載nginx1.8.0版本(當前最新穩定版本)。
2. 安裝
(1)安裝環境
nginx是C語言開發,建議在linux上運行,本教程使用Centos6.5作為安裝環境。gcc安裝nginx需要先將官網下載的源碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要安裝gcc:yum install gcc-c++ PCREPCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,所以需要在linux上安裝pcre庫。yum install -y pcre pcre-devel注:pcre-devel是使用pcre開發的一個二次開發庫。nginx也需要此庫。zlibzlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。yum install -y zlib zlib-devel opensslOpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,并提供豐富的應用程序供測試或其它目的使用。nginx不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。yum install -y openssl openssl-devel(2)編譯安裝
將nginx-1.8.0.tar.gz拷貝至linux服務器。
解壓:
tar -zxvf nginx-1.8.0.tar.gzcd nginx-1.8.0br1、configure
./configure --help查詢詳細參數(參考本教程附錄部分:nginx編譯參數)
參數設置如下:
./configure \--prefix=/usr/local/nginx \--pid-path=/var/run/nginx/nginx.pid \--lock-path=/var/lock/nginx.lock \--error-log-path=/var/log/nginx/error.log \--http-log-path=/var/log/nginx/access.log \--with-http_gzip_static_module \--http-client-body-temp-path=/var/temp/nginx/client \--http-proxy-temp-path=/var/temp/nginx/proxy \--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \--http-uwsgi-temp-path=/var/temp/ngi \--http-scgi-temp-path=/var/temp/nginx/scgiginx/uws注意:上邊將臨時文件目錄指定為/var/temp/nginx,需要在/var下創建temp及nginx目錄
2、?編譯安裝
makemake install安裝成功查看安裝目錄 :
(3)啟動nginx
cd /usr/local/nginx/sbin/./nginx查詢nginx進程:
15098是nginx主進程的進程id,15099是nginx工作進程的進程id
注意:執行./nginx啟動nginx,這里可以-c指定加載的nginx配置文件,如下:
./nginx -c /usr/local/nginx/conf/nginx.conf
如果不指定-c,nginx在啟動時默認加載conf/nginx.conf文件,此文件的地址也可以在編譯安裝nginx時指定./configure的參數(--conf-path= 指向配置文件(nginx.conf))
(4)停止nginx
方式1,快速停止:cd /usr/local/nginx/sbin./nginx -s stop此方式相當于先查出nginx進程id再使用kill命令強制殺掉進程。 方式2,完整停止(建議使用):cd /usr/local/nginx/sbin./nginx -s quit此方式停止步驟是待nginx進程處理任務完畢進行停止。(5)重啟nginx
方式1,先停止再啟動(建議使用):對nginx進行重啟相當于先停止nginx再啟動nginx,即先執行停止命令再執行啟動命令。如下:./nginx -s quit./nginx 方式2,重新加載配置文件:當nginx的配置文件nginx.conf修改后,要想讓配置生效需要重啟nginx,使用-s reload不用先停止nginx再啟動nginx即可將配置信息在nginx中生效,如下:./nginx -s reload(6)安裝測試
nginx安裝成功,啟動nginx,即可訪問虛擬機上的nginx:
到這說明nginx基本上安裝成功。
今天就分享這么多,關于Nginx的介紹及安裝,你學會了多少?歡迎在留言區評論,對于有價值的留言,我們都會一一回復的。如果覺得文章對你有一丟丟幫助,請點右下角【在看】,讓更多人看到該文章。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的linux nginx 重启_Nginx 的介绍及安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 诚志股份是做什么的 诚志股份的业务
- 下一篇: c#获取当前时间 毫秒_《Linux设备