1. 程式人生 > >nginx安裝以及錯誤處理

nginx安裝以及錯誤處理

nginx下載

nginx的官方下載地址為:http://nginx.org/en/download.html,選擇相應的版本進行下載,其中 nginx-x.x.x(1.12.1)是對應的linux版本,nginx、Windows-x.x.x(1.12.1)是對應的windows版本。

nginx安裝

windows安裝

windows安裝nginx比較簡單,直接下載windows下相應版本的nginx,解壓後文件夾內部的nginx.exe即為nginx伺服器的執行程式。

linux安裝

到nginx官網上下載linux下相應版本的nginx。

  • 拷貝檔案
    新建目錄,並把之後編譯好的檔案安裝到該目錄下。
mkdir /home/nginx
cd /home/nginx
cp /media/sf_Share/nginx-1.12.1.tar.gz 
  • 解壓壓縮包
tar -xf nginx-1.12.1.tar.gz
  • 配置
    nginx編譯之前需要使用configure指令碼自動生成makefile檔案,其中configure的常用選項在塗作權的部落格有相關解釋。
    安裝時簡單的將nginx的安裝路徑切換到自定義目錄/home/nginx。
cd nginx-1.12.1
./configure --prefix=/home/nginx
- 異常 
./configure: error: the
HTTP rewrite module requires the PCRE library.

產生該異常的原因是為安裝pcre庫,只需提前安裝好相應的庫即可。

solution:apt-get install libpcre3 lib-pcre3-dev

在安裝pcre庫的過程中會由於pcre庫的版本和pcre-dev庫版本的衝突而產生如下異常:

libpcre3-dev : 依賴: libpcre3 (= 1:8.31-2ubuntu2.2) 但是 1:8.31-2ubuntu2.3 正要被安裝
E: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係。

因此需要在安裝是強制指定相應的版本,以確保正確安裝。

apt-get install libpcre3=1:8.31-2ubuntu2 libpcre3-dev=1:8.31-2ubuntu2

如果只是這樣指定好庫的版本,在安裝過程中還是會提示存在庫衝突,如下:

libpcre3-dev : 依賴: libpcrecpp0 (= 1:8.31-2ubuntu2) 但是 1:8.31-2ubuntu2.2 正要被安裝
E: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係。

因此正確的解決方式應該為:

apt-get install libpcre3=1:8.31-2ubuntu2 libpcre3-dev=1:8.31-2ubuntu2 libpcrecpp0=1:8.31-2ubuntu2

同理,為了確保nginx正確的安裝,也需要將其他相應的庫安裝完成。

apt-get install openssl libssl-dev
apt-get install zlib1g-dev
  • 安裝
    經過上面的步驟後,在/home/nginx/nginx-1.12.1目錄下將生成makefile檔案,可使用make指令進行安裝。
make
make install