1. 程式人生 > >【Nginx】Nginx簡介及在CentOS7.0下安裝教程

【Nginx】Nginx簡介及在CentOS7.0下安裝教程

是什麼

Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,並在一個BSD-like 協議下發行。其特點是佔有記憶體少,併發能力強,事實上nginx的併發能力確實在同類型的網頁伺服器中表現較好,中國大陸使用nginx網站使用者有:百度、京東、新浪、網易、騰訊、淘寶等。
優點:
在連線高併發的情況下,Nginx是Apache伺服器不錯的替代品:Nginx在美國是做虛擬主機生意的老闆們經常選擇的軟體平臺之一,能夠支援高達 50,000 個併發連線數的響應。
關於Nginx是什麼就介紹到這裡,如果感興趣,附百度百科解釋:Nginx
接下來就把重點放在,在CentOS7.0系統下,如何安裝Nginx

安裝前所需環境

Nginx安裝之前,需要環境:wget、gcc、pcre、openssl、zlib
1,wget:用於從外網上下載外掛

wget安裝命令:yum -y install wget 

2,gcc:GCC(GNU Compiler Collection,GNU編譯器套件),是由 GNU 開發的程式語言編譯器。GCC原本作為GNU作業系統的官方編譯器,現已被大多數類Unix作業系統(如Linux、BSD、Mac OS X等)採納為標準的編譯器

gcc安裝命令:yum install gcc-c++

3,pcre:PCRE(Perl Compatible Regular Expressions)安裝 ,它是一個Perl庫,包括 perl 相容的正則表示式庫。nginx的http模組使用pcre來解析正則表示式,所以需要在linux上安裝pcre庫

pcre安裝命令:yum install -y pcre pcre-devel

4,openssl:它是一個強大的安全套接字層密碼庫,囊括主要的密碼演算法、常用的金鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程式供測試或其它目的使用; nginx不僅支援http協議,還支援https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫

openssl安裝命令:yum install -y openssl openssl-devel 

5,zlib:它提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫

zlib安裝命令:yum install -y zlib zlib-devel
Nginx安裝

1,環境準備好之後,下載安裝包
進入一個目錄(隨便一個目錄即可,用來存放下載的Nginx安裝包,在此以/root目錄為例)

進入目錄命令:cd /root

下載nginx安裝包,本文用例 nginx1.10.3(最新版本可通過官網— http://nginx.org/download可檢視)

下載命令:wget http://nginx.org/download/nginx-1.10.3.tar.gz 

2,解壓Nginx的tar包

解壓命令: tar -zxvf ./nginx-1.10.3.tar.gz 

3,檢視是否解壓成功

命令: ls 

如圖,可以看到解壓成功
這裡寫圖片描述
4,進入剛解壓的的目錄

命令: cd nginx-1.10.3 

進行配置(在此將Nginx安裝指向/usr/local/nginx/ 目錄下)

命令: ./configure --prefix=/usr/local/nginx/ 

這裡寫圖片描述
5,進行編譯和安裝

命令: make && make install 

這裡寫圖片描述
6,整個驗證、編譯、安裝過程應該不會報什麼錯誤,如果在上一過程中使用prefix設定了安裝目標目錄,那麼還需要在/etc/profile檔案中設定環境變數(備註:環境變數一般指作業系統中用來指定作業系統執行環境的一些引數,相當於設定了一個啟動軟體(如mysql/jdk)等快速路徑,方便使用者使用。)

命令: vi /etc/profile

在最末尾加入export PATH=/usr/local/nginx/sbin:$PATH (其中的# add nginx path為註釋建議加上)
這裡寫圖片描述
7,使環境變數生效

命令:source /etc/profile

8,用命令export 檢視環境變數發現剛設定的Nginx目錄已經成功進去了
這裡寫圖片描述
9,檢查是否安裝成功:

進入到etc目錄(cd /etc)中執行命令: nginx –t ,若不正確則會給出相應的錯誤提示 

10,對Nginx配置檔案進行配置,Nginx配置檔案的位置: /usr/local/nginx/conf/nginx.conf(具體位置要看你自己的,如果不知道配置檔案放在哪兒了,可以使用xftp進行檢視) ,使用vi命令進行編輯:

vi /usr/local/nginx/conf/nginx.conf

這裡寫圖片描述
11,將配置檔案修改為配置檔案在Nginx安裝目錄下的conf中的nginx.conf,命令:

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

12,啟動nginx, 命令:

nginx 

這裡寫圖片描述
13,檢視Nginx狀態,命令:

ps -ef | grep nginx 

這裡寫圖片描述
14,測試,啟動Nginx的情況下在外部用瀏覽器訪問剛才在配置檔案中配置的地址 ,如圖所示,即為成功
這裡寫圖片描述

可能出現的問題:
在外部使用瀏覽器時,訪問地址有可能訪問不到。
問題原因:沒有開放80埠,或者防火牆未關閉
基於安全考慮,建議選擇開放80埠
1,開放80埠(請注意,要確保此時的防火牆是開啟的,否則進行此步驟是沒有意義的):

檢視防火牆中開放埠命令— iptables -L 
將某個埠(在此以80為例)開放firewall-cmd --zone=public --add-port=80/tcp --permanent
重啟防火牆:systemctl restart firewalld.service

2,關閉防火牆:

service firewalld stop

這兩個操作,選擇其中一個即可。至此,Nginx安裝教程結束。

設定Nginx開機自啟

在實踐過程中,發現如果將機器關閉之後,再次開啟,需要再次手動開啟,才能訪問到Nginx,對於追求高效率的我們來說,這一點肯定是無法忍受的,所以接下來講一講如何設定Nginx開機自啟:
1,進入到/lib/systemd/system/目錄下,命令:

cd /lib/systemd/system/

2,建立檔案,命令:

vim nginx.service

將下面內容,複製到該檔案中即可:

[Unit]
Description=nginx 
After=network.target 

[Service] 
Type=forking 
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true 

[Install] 
WantedBy=multi-user.target

3,儲存退出該檔案之後,執行該檔案,使Nginx開機自啟生效,執行命令:

systemctl enable nginx.service

4,重啟機器,執行命令,nginx,檢視是否開機自啟成功,如果出現下圖,則表示設定開機自啟成功:
這裡寫圖片描述
感謝您的閱讀~

相關推薦

NginxNginx簡介CentOS7.0安裝教程

是什麼 Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,並在一個BSD-like 協議下發行。其特點是佔有記憶體少,併發能力強,事實上nginx的併

CNMP系列CentOS7.0安裝Nginx服務

系統資源 for proxy input strong network emc -c .com 話步前言,CNMP之路,系統起步:http://www.cnblogs.com/riverdubu/p/6425028.html 這回我來講解下CentOS7.0下如何安裝和配置

轉載CentOS7.0安裝Telnet

soc nbsp 裝包 正常 system 關閉防火墻 blog 不能 service 1.、先檢查CentOS7.0是否已經安裝以下兩個安裝包:telnet-server、xinetd。命令如下: # rpm -qa telnet-server # rpm -qa xin

NoSQLNoSQL簡介常用的NoSQL資料庫對比(Redis、MongoDB、HBase等)

基本含義 NoSQL(NoSQL = Not Only SQL ),意即“不僅僅是SQL”,是一項全新的資料庫革命性運動,早期就有人提出,發展至2009年趨勢越發高漲。NoSQL的擁護者們提倡運用非關係型的資料儲存,相對於鋪天蓋地的關係型資料庫運用,這一概念無疑是一種全新的思維的注入。 2NoSQL

Python(Windows)numpy matploylib 相關庫的安裝教程(附資源,賊良心好嘛!CSDN上各種庫下載都要氪金的!客官滿意的話關注一下點個贊)

我自己的經驗,搞這個只有兩步:一、下載安裝包;二、安裝安裝包。 各軟體及庫的下載連結附在後面,自取不謝。 除了python是.exe檔案,直接很簡單的安裝軟體一般流程之外,其他的都需要一點點操作。 安裝安裝包(.whl)檔案過程: 開啟Cmd的命令視窗(Win+

centos7.0安裝Discuz

centos7.0下安裝Discuz廢話不多說直接進去主題,我們先在Discuz官方論壇將源碼下載下來 Discuz這裏為了方便我直接給出了下載地址。如果有最新版本可以直接去官網去下載。接下來我們將配置安裝環境: 1.首先安裝環境所需軟件 Appache,Mariadb(以前叫mysql,現在開源的服務名

centos7.0 安裝git(ssh方式)

1、 安裝依賴的庫 1 [[email protected] ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

centos7.0 安裝git(http方式)

1、 安裝依賴的庫 1 [[email protected] ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

centos7.0+安裝adobe flash-player

1.在 https://get.adobe.com/cn/flashplayer/ 上選擇需要下載版本---> ( YUM,適用於Linux (YUM) ); 2.進入root許可權後,進入你的下載目錄下(你所下載的flash-player所在的目錄,比如我的就是在home/lafee/下

CentOS7.0安裝

  安裝前所需環境 keepalived安裝之前,需要環境:wget、gcc、pcre、openssl、zlib、pop

Centos7.0安裝jdk和tomcat以及環境配置

進入你的tomcat安裝目錄下的bin檔案[[email protected] ~]# cd java/apache-tomcat-9.0.0.M4/bin/ 然後啟動tomcat [[email protected] bin]# ./startup.sh Using CATALINA_B

Linuxnginx服務配置

網站目錄 write timeout per dex 修改 header www val 一. 部署LNMP環境 準備工作 Linux系統準備 設置IP 關閉防火墻

WebNginx 反向代理與負載均衡

連接 代理服務器 body 後端服務 style 執行 class redirect 配置文件 反向代理   反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的連接請求,然後將請求轉發給內部網絡上的服務器,並將從服務器上得到的結果返回給in

安全牛學習筆記tcpdump簡介常用命令實例

信息安全 tcpdump security+ tcpdump簡介 tcpdump 是一個運行在命令行下的嗅探工具。它允許用戶攔截和顯示發送或收到過網絡連接到該 計算機的TCP/IP和其他數據包。tcpdump 是一個在BSD許可證下發布的自由軟件。

Nginx--nginx入門教程

較高的 其中 8K 三臺 finance 輸出 nginx安裝 全局 通過 nginx入門教程 一.概述 什麽是nginx? Nginx (engine x) 是一款輕量級的Web 服務器 、反向代理服務器及電子郵件(IMAP/POP3)代理服

Nginx Nginx實現端口轉發

nbsp 都是 localhost ron tro ups server 搭建 div 什麽是端口轉發 當我們在服務器上搭建一個圖書以及一個電影的應用,其中圖書應用啟動了 8001 端口,電影應用啟動了 8002 端口。此時如果我們可以通過 localhost:80

20180712Nginx 參數優化和內核參數優化

關閉連接 pla GZip壓縮 con soc java squid服務器 val expire Nginx 參數優化 worker_processes 這裏的數值不能超過CPU的總核數,因為在單個核上部署超過1個Nginx服務進程並不能起到提高性能的作用。 wor

NginxNginx配置REWRITE隱藏index.php

php div nginx配置 pan request 只需要 span col lena 只需要在server裏面加上   if ( !e $request_filename ) {     rewrite ^/(.*)$ /index.php/$1 last;  

Nginx學習---Nginx&&Redis&&hcache三層緩存架構總結

inux 次循環 地址 本地緩存 lin 同步等待 獲取數據 分發 到來 【原文】https://www.toutiao.com/i6594307974817120782/ 摘要: 對於高並發架構,毫無疑問緩存是最重要的一環,對於大量的高並發,可以采用三層緩存架構來實現,n

Nginx work_processes配置

worker_processes:作業系統啟動多少個工作程序執行Nginx。注意是工作程序,不是有多少個nginx工程。在Nginx執行的時候,會啟動兩種程序,一種是主程序master process;一種是工作程序worker process。例如我在配置檔案中將worker_processes設