CenterOS7系統(tǒng)下Nginx基本使用介紹

一、基本知識

1.作者

Nginx (engine x) 是一個高性能的HTTP和反向代理服務(wù)器,也是一個IMAP/POP3/SMTP服務(wù)器。Nginx是由伊戈爾·賽索耶夫為俄羅斯訪問量第二的Rambler.ru站點(俄文:Рамблер)開發(fā)的,第一個公開版本0.1.0發(fā)布于2004年10月4日。

2.優(yōu)點

Nginx 是一個很強大的高性能它具有很多非常優(yōu)越的特性:在連接高并發(fā)的情況下,Nginx是[Apache]服務(wù)器不錯的替代品,能夠支持高達 50,000 個并發(fā)連接數(shù)的響應(yīng),感謝Nginx為我們選擇了 epoll and kqueue作為開發(fā)模型。

當(dāng)然優(yōu)點還有很多 ,此處大概歸納,僅供參考!

3.安裝所需環(huán)境(本人為CenterOS7)

1.gcc安裝
nginx使用C語言開發(fā),編譯Nginx的源碼依賴 gcc 環(huán)境,如果沒有 gcc 環(huán)境,則需要安裝,安裝命令為:

yum install gcc-c++

2.PCRE pcre-devel 安裝
PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,所以需要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發(fā)的一個二次開發(fā)庫。nginx也需要此庫。命令:

yum install -y pcre pcre-devel

3.zlib 安裝
nginx 使用 zlib 對 http 包的內(nèi)容進行 gzip ,所以需要在 Centos 上安裝 zlib 庫。

yum install -y zlib zlib-devel

4.OpenSSL 安裝
nginx 不僅支持 http 協(xié)議,還支持 https(即在ssl協(xié)議上傳輸http),而OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及 SSL 協(xié)議,并提供豐富的應(yīng)用程序供測試或其它目的使用。所以需要在 Centos 安裝 OpenSSL 庫。

yum install -y openssl openssl-devel

4.源碼下載
image.png
  • 方式二、直接使用wget命令下載 (推薦選用

wget -c https://nginx.org/download/nginx-1.10.1.tar.gz

1.10.1應(yīng)該是當(dāng)前的穩(wěn)定版本。如果想體驗Nginx的其他新功能作為學(xué)習(xí)的話可以嘗試其他非穩(wěn)定發(fā)布版本。

5.解壓源碼

命令如下 對于使用Linux系統(tǒng)的人這些命令你應(yīng)該已經(jīng)熟悉到不能再熟悉了,解壓源碼并進去解壓目錄,如下:

tar -zxvf nginx-1.10.1.tar.gz
cd nginx-1.10.1

5.配置
  • 默認(rèn)配置(推薦使用

./configure

  • 自定義配置
    由于本人暫時對于自定義配置不是很清楚,故選擇了網(wǎng)上的一個配置文件,如下,僅供參考。

./configure
--prefix=/usr/local/nginx
--conf-path=/usr/local/nginx/conf/nginx.conf
--pid-path=/usr/local/nginx/conf/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/nginx/uwsgi
--http-scgi-temp-path=/var/temp/nginx/scgi
注:將臨時文件目錄指定為/var/temp/nginx,需要在/var下創(chuàng)建temp及nginx目錄

6.編譯安裝
  • 查找安裝路徑(使用wget安裝的一般位于 / usr/local 下):

whereis nginx

7.啟動、停止Nginx

切換到Nginx sbin 目錄

cd /usr/local/nginx/sbin/

執(zhí)行啟動命令

./nginx

停止命令

./nginx -s stop
./nginx -s quit
./nginx -s reload
./nginx -s quit:此方式停止步驟是待nginx進程處理任務(wù)完畢進行停止。
./nginx -s stop:此方式相當(dāng)于先查出nginx進程id再使用kill命令強制殺掉進程。

查詢nginx進程:

ps aux|grep nginx

8.重啟Nginx
  • 方式一、先停止再啟動(推薦使用):
    對 nginx 進行重啟相當(dāng)于先停止再啟動,即先執(zhí)行停止命令再執(zhí)行啟動命令。如下:

./nginx -s quit

./nginx

  • 方式二、重新加載配置文件:
    當(dāng) ngin x的配置文件 nginx.conf 修改后,要想讓配置生效需要重啟 nginx,使用-s reload不用先停止 ngin x再啟動 nginx 即可將配置信息在 nginx 中生效,如下:

./nginx -s reload

如果80端口沒有被占用的話此時在瀏覽器中輸入服務(wù)器IP地址應(yīng)該已經(jīng)可以訪問到Nginx的首頁;但是如果你的80端口已經(jīng)被占用的話就需要修改Nginx的使用端口。

9.修改Nginx配置文件

進入nginx的conf目錄 命令如下:

1.先停止再啟動(推薦):
對 nginx 進行重啟相當(dāng)于先停止再啟動,即先執(zhí)行停止命令再執(zhí)行啟動命令。如下:

./nginx -s quit
./nginx
2.重新加載配置文件:
當(dāng) ngin x的配置文件 nginx.conf 修改后,要想讓配置生效需要重啟 nginx,使用-s reload不用先停止 ngin x再啟動 nginx 即可將配置信息在 nginx 中生效,如下:

vim /usr/local/nginx/conf/nginx.conf

修改文件內(nèi)容:

image.png

然后重啟Nginx,再次在瀏覽器進行訪問,得到如下頁面代表配置安裝成功:
image.png

阿里云服務(wù)器相關(guān)配置
image.png

9.設(shè)置開機自啟動

使用命令如下:打開文件rc.local

vim /etc/rc.local

增加 /usr/local/nginx/sbin/nginx


image.png

設(shè)置改文件執(zhí)行權(quán)限:

chmod 755 rc.local

10.項目部署
  • 結(jié)合tomcat進行部署,修改Nginx配置文件
    命令如下:

vim /usr/local/nginx/conf/nginx.conf

image.png
  • 配置過程中重啟nginx時出現(xiàn)了一個異常 做下記錄,異常信息如下:

nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)

進過查閱,確實缺少nginx.pid文件,
解決方案:使用nginx -c的參數(shù)指定nginx.conf文件的位置,命令如下

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

如果感興趣可以自己去查看一下logs目錄,這個文件已經(jīng)重新生成。


image.png

此時,指定tomcat之后你會發(fā)現(xiàn)再次訪問nginx服務(wù)器地址時會分發(fā)到你配置的那臺tomcat服務(wù)器上,至此,基本配置結(jié)束。下一篇將講述多個tomcat的配置
以上內(nèi)容為個人學(xué)習(xí)記錄,供大家參考,歡迎批評指正,共同進步!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容