1. 程式人生 > >nginx環境設定(openresty 安裝時openssl查詢失敗解決方案)

nginx環境設定(openresty 安裝時openssl查詢失敗解決方案)

安裝

  1. 在Centos下,yum源不提供nginx的安裝,可以通過切換yum源的方法獲取安裝。也可以通過直接下載安裝包的方法,**以下命令均需root許可權執行**:

  2. 首先安裝必要的庫(nginx 中gzip模組需要 zlib 庫,rewrite模組需要 pcre 庫,ssl 功能需要openssl庫)。選定**/usr/local**為安裝目錄,以下具體版本號根據實際改變。

1.安裝gcc gcc-c++(如新環境,未安裝請先安裝)

  1. $ yum install -y gcc gcc-c++

2.安裝PCRE庫

  1. $ cd /usr/local/

  2. $ wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz

  3. $ tar -zxvf pcre-8.36.tar.gz

  4. $ cd pcre-8.36

  5. $ ./configure

  6. $ make && make install

  7. 如報錯:configure: error: You need a C++ compiler for C++ support

  8. 解決:yum install -y gcc gcc-c++

3.安裝SSL庫

  1. $ cd /usr/local/

  2. $ wget http://www.openssl.org/source/openssl-1.0.1j.tar.gz

  3. $ tar -zxvf openssl-1.0.1j.tar.gz

  4. $ cd openssl-1.0.1j

  5. $ ./config

  6. $ make && make install

  7. 4.安裝zlib庫存

$ cd /usr/local/ $ wget http://zlib.net/zlib-1.2.11.tar.gz $ tar -zxvf zlib-1.2.11.tar.gz $ ./configure $ make && make install

4.安裝nginx

  1. $ cd /usr/local/

  2. $ wget http://nginx.org/download/nginx-1.8.0.tar.gz

  3. $ tar -zxvf nginx-1.8.0.tar.gz

  4. $ cd nginx-1.8.0

  5. $ ./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module

  6. (注: --with-http_ssl_module:這個不加後面在nginx.conf配置ssl:on後,啟動會報nginx: [emerg] unknown directive "ssl" in /opt/nginx/conf/nginx.conf 異常)

  7. $ make && make install

  8. 時提示以下錯誤:

    ./configure: error: SSL modules require the OpenSSL library.

    支援此命令:

    yum -y install openssl openssl-devel

  9. 報錯:./configure: error: the HTTP gzip module requires the zlib library

在–prefix後面接以下命令:

  1. --with-pcre=/usr/local/pcre-8.36 指的是pcre-8.36 的原始碼路徑。--with-zlib=/usr/local/zlib-1.2.8 指的是zlib-1.2.8 的原始碼路徑。

5.啟動

$ /usr/local/nginx/sbin/nginx

檢查是否啟動成功:

開啟瀏覽器訪問此機器的 IP,如果瀏覽器出現 Welcome to nginx! 則表示 Nginx 已經安裝並執行成功。

部分命令如下: 重啟:

$ /usr/local/nginx/sbin/nginx –s reload

停止:

$ /usr/local/nginx/sbin/nginx –s stop

測試配置檔案是否正常:

 $ /usr/local/nginx/sbin/nginx –t