nginx環境設定(openresty 安裝時openssl查詢失敗解決方案)
安裝
-
在Centos下,yum源不提供nginx的安裝,可以通過切換yum源的方法獲取安裝。也可以通過直接下載安裝包的方法,**以下命令均需root許可權執行**:
-
首先安裝必要的庫(nginx 中gzip模組需要 zlib 庫,rewrite模組需要 pcre 庫,ssl 功能需要openssl庫)。選定**/usr/local**為安裝目錄,以下具體版本號根據實際改變。
1.安裝gcc gcc-c++(如新環境,未安裝請先安裝)
-
$ yum install -y gcc gcc-c++
2.安裝PCRE庫
-
$ cd /usr/local/
-
$ wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz
-
$ tar -zxvf pcre-8.36.tar.gz
-
$ cd pcre-8.36
-
$ ./configure
-
$ make && make install
-
如報錯:configure: error: You need a C++ compiler for C++ support
-
解決:yum install -y gcc gcc-c++
3.安裝SSL庫
-
$ cd /usr/local/
-
$ wget http://www.openssl.org/source/openssl-1.0.1j.tar.gz
-
$ tar -zxvf openssl-1.0.1j.tar.gz
-
$ cd openssl-1.0.1j
-
$ ./config
-
$ make && make install
-
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
-
$ cd /usr/local/
-
$ wget http://nginx.org/download/nginx-1.8.0.tar.gz
-
$ tar -zxvf nginx-1.8.0.tar.gz
-
$ cd nginx-1.8.0
-
$ ./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
-
(注: --with-http_ssl_module:這個不加後面在nginx.conf配置ssl:on後,啟動會報nginx: [emerg] unknown directive "ssl" in /opt/nginx/conf/nginx.conf 異常)
-
$ make && make install
-
時提示以下錯誤:
./configure: error: SSL modules require the OpenSSL library.
支援此命令:
yum -y install openssl openssl-devel
-
報錯:./configure: error: the HTTP gzip module requires the zlib library
在–prefix後面接以下命令:
-
--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