2、Ubuntu下安裝nginx
一、系統環境安裝
1.1、 gcc 安裝
安裝 nginx 需要先將官網下載的原始碼進行編譯,編譯依賴 gcc 環境,如果沒有 gcc 環境,則需要安裝:
sudo apt-get install build-essential sudo apt-get install libtool
1.2、PCRE pcre-devel 安裝
PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 相容的正則表示式庫。nginx 的 http 模組使用 pcre 來解析正則表示式,所以需要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發的一個二次開發庫。nginx也需要此庫。命令:
sudo apt-get update sudo apt-get install libpcre3 libpcre3-dev
1.3、zlib 安裝
zlib 庫提供了很多種壓縮和解壓縮的方式, nginx 使用 zlib 對 http 包的內容進行 gzip ,所以需要在 Centos 上安裝 zlib 庫。
sudo apt-get install zlib1g-dev
1.4、OpenSSL 安裝(16.04預設已經安裝了)
OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼演算法、常用的金鑰和證書封裝管理功能及 SSL 協議,並提供豐富的應用程式供測試或其它目的使用。
nginx 不僅支援 http 協議,還支援 https(即在ssl協議上傳輸http),所以需要在 Centos 安裝 OpenSSL 庫。
sudo apt-get install openssl
二、下載安裝包
cd /usr/local
三、新建nginx的安裝目錄
mkdir nginx
四、解壓nginx
五、編譯安裝
./configure --prefix=/usr/local/nginx
make && make install
六、啟動
cd /usr/local/nginx/sbin
./nginx (或./nginx -c /usr/local/nginx/conf/nginx.conf)
七、測試
curl http:127.0.0.1:80
返回nginx 提示資訊的html則說明安裝成功
八、nginx命令和問題相關
cd /usr/local/nginx/sbin/
./nginx (啟動)
./nginx -s stop (強制停止)
./nginx -s quit (停止)
./nginx -s reload (重啟)
./nginx -t (健康檢查)
./nginx -s quit:此方式停止步驟是待nginx程序處理任務完畢進行停止。
./nginx -s stop:此方式相當於先查出nginx程序id再使用kill命令強制殺掉程序。
九、啟動錯誤處理
啟動時報80埠被佔用:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
解決辦法:1、安裝net-tool 包:yum install net-tools
九、開機自啟動
即在rc.local增加啟動程式碼就可以了。
vi /etc/rc.local
增加一行 /usr/local/nginx/sbin/nginx
設定執行許可權:
chmod 755 rc.local