CentOS7 安裝Nginx


有一個月沒寫博客了,是該記錄一些東西了,之前一直使用的是Ubuntu系統,然后就想換個系統繼續折騰下。就換成CentOS7的最小化安裝。

目錄:

  1. Nginx和依賴包
  2. 安裝依賴包
  3. 安裝Nginx
  4. 運行Nginx及無法訪問的問題

一:Nginx和依賴包

  1.   Nginx安裝包  下載地址:http://nginx.org/en/download.html
  2.   OpenSSL SSL協議加密解密的工具包 下載地址:https://www.openssl.org/
  3.   PCRE 由c語言編寫的正則表達式庫 下載地址:http://www.pcre.org/
  4.   zlib數據壓縮庫 下載地址:http://www.zlib.net/

  下載完成之后,全部扔到linux中去吧,如果上傳文件的過程中出現Access Denied(拒絕訪問),看看文件的權限是不是只讀的。下面是我的文件目錄

    

 

二:安裝依賴包

  注:1. 開始安裝前,先說明下如果以下安裝的過程中出現了:error: You need a C++ compiler for C++ support.說明你的系統中沒有安裝c++的編譯環境, 使用命令: yum install gcc-c++  安裝即可。(由於系統是新安裝的基本啥都沒有,后面安裝過程出現了此問題)

    2. 在執行以下操作時候,最好切換到root權限,避免有時候需要在命令前 重復添加 sudo。 例如 sudo make install

  

     1.先使用命令  tar -zxvf fileName (文件名稱)。逐一的解壓每個文件,如下圖

  

  

     2.安裝OpenSSL

  cd到OpenSSL目錄內,執行以下命令

    • ./config         生成Makefile文件(這里的是config文件不是Configure)
    • make                    讀取Makefile中指令編譯
    • make install       安裝到系統中(需要root權限)

  

     3.安裝PCRE 和zlib

  PCRE 和zlib安裝的方式一樣,只是和OpenSSL的文件config名稱不一樣而已

    • ./configure
    • make
    • make install

  安裝完上面的三個依賴包,下面安裝我們的正主Nginx

  

三:安裝Nginx

  安裝Nginx過程和上面的基本相同,只是在執行configure文件的時候需要設置一些參數

1 ./configure 
2 --prefix=/opt/nginx 
3 --with-pcre=/home/mgame/soft/pcre-8.41 
4 --with-openssl=/home/mgame/soft/openssl-1.1.0f 
5 --with-zlib=/home/mgame/soft/zlib-1.2.11 

  下面是以上配置的意思,如果需要更多信息,可以翻閱官方文檔:http://nginx.org/en/docs/configure.html

1 --prefix=/opt/nginx       Nginx安裝目錄(默認/usr/local/nginx) 2 --with-pcre=/home/mgame/soft/pcre-8.41   PCRE解壓目錄
3 --with-openssl=/home/mgame/soft/openssl-1.1.0f   OpenSSL解壓目錄 4 --with-zlib=/home/mgame/soft/zlib-1.2.11  zlib解壓目錄

  注意了,以上的都是解壓后的文件夾目錄,不是安裝后的目錄。 當執行完成上的命令,執行下面的命令

  編譯: make 

  安裝: make install 

  至此Nginx和依賴包都安裝完成,下面試試能否成功啟動Nginx

注:如果出現Access Denied(拒絕訪問),請使用root權限安裝

 

四:運行Nginx及出現無法訪問的問題

1.啟動Nginx

  先移動到Nginx安裝目錄內的sbin文件夾下

  

  在運行Nginx的時候如果沒有root權限會出現以下錯誤

  

  看到后面括號內的提示沒有 (Permission denied) ,拒絕訪問,沒有權限,運行的時候在命令前面加 sudo ./nginx  或者使用root權限

  當執行  sudo ./nginx 命令后,並沒有提示成功,可以使用 ps -aux | grep nginx 命令,看看是否啟動Nginx了,如果出現如下圖所示的樣子時候說明已經成功了

  

  

  然后,打開瀏覽器輸入linux的地址,出現如果所示的樣子,那么nginx已經可以完成安裝了

  

 

 2.無法訪問的問題

  (1) 關閉SELinux安全子系統

  命令  vim /etc/selinux/config  編輯config文件,將SELINUX=enforcing的值設置為disabled(重啟生效),如下

  

  (2)設置防火牆開啟80端口(Nginx監聽的是80端口)

  先使用命令  sudo firewall-cmd --list-all 查看當前防火牆狀態

  

  此處看到沒有打開80端口,那么使用命令打開80端口,並重啟防火牆

1 sudo firewall-cmd --add-port=80/tcp --permanent 打開80端口 2 sudo firewall-cmd --reload  重啟防火牆

  現在可看看是否開啟80端口了

  

  如果出現以上的信息,那么nginx基本上可以訪問了。以上學習筆記到此為止,如果能幫到大家,不勝榮幸!文章有諸多不足的地方,歡迎多多指正。謝謝!

  在程序員的路上一直在行走,雖然緩慢,但未曾停下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM