Centos 7.1安裝Nginx服務器

Nginx是一個開源的,支持高性能、高并發(fā)的www服務和代理服務軟件。它是有俄羅斯人Igor Sysoev開發(fā)的,作者將其以BSD的許可證的形式開源供全球使用。如果你對Apache比較熟悉,當然也無法無法避免地聽過這個市場份額不斷上升的服務代理軟件。目前國內的大公司淘寶、新浪等都有在使用Nginx.可見Nginx受歡迎程度。下面來介紹一下博主自己安裝Nginx的過程。

<p>
首先我們假設的前提是你們已經安裝了centos操作系統,已經能夠訪問Internet了。
</p>

1.首先第一步安裝Nginx的依賴庫以及文件,在命令行模式下輸入以下命令。
yum -y install openssl openssl-devel
yum -y install pcre   pcre-devel
2.然后第二部安裝Nginx的二進制壓縮包文件,現在我們使用的是wget命令來獲取壓縮包文件,可能系統出現一下的錯誤。
-bash command:wget can not found

這是我們的系統沒有安裝wget這個命令,這個可以直接用yum來安裝

yum -y  install wget

接下來要在Nginx的官網下載壓縮包,這里我選擇的是nginx-1.6.3.tar.gz,在命令模式輸入以下命令:

wget -p http://nginx.org/download/nginx-1.6.3.tar.gz

這會在當前的目錄下下載到一個壓縮包,我們在/home/yourself(這里是你自己的用戶名)創(chuàng)建一個文件夾來來放置Nginx包,一系列命令如下:

cd /home/yourself
mkdir myNginx
cd myNginx
mv .../nginx-1.6.3.tar.gz  /home/yourself/myNginx 這里..是你之前下載壓縮包的時候的路徑
3.解壓縮nginx-1.6.3.tar.gz,輸入以下命令:
tar -zxvf nginx-1.6.3.tar.gz

但是此時系統報了錯誤:

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

找了很多的出錯的解決方法,有人說是因為這個壓縮包沒有用gzip的方式進行壓縮,所以只需要輸入:

tar -vfx nginx-1.6.3.tar.gz

然而博主自己并沒有解決自己的問題,也試過修改壓縮的包名為nginx-1.6.3.tar。但是并沒有解決問題。后來找到的問題是下載的壓縮包文件是被破壞的,所以通過ftp工具把nginx包上傳到centos系統。這個解決了不能解壓縮的問題。

4.解壓縮之后,當前的目錄會有一個nginx-1.6.3的文件夾。
cd nginx-1.6.3
./configure --user=nginx --group=nginx --prefix=/application/nginx-1.6.3/
--with-http_stub_status_module  --with-http_ssl_module

上面的參數詳細解釋一下:

--prefix=PATH //設置安裝路徑
--user=USER //進程用戶權限
--group=GROUP //進程用戶組的權限
--with-http_stub_status_module //激活狀態(tài)信息
--with-http_ssl_module //激活ssl功能
5.編譯和安裝以及建立文件的軟連接
make && make install
ln -s /application /nginx-1.6.3 /application/nginx
6.查看文件的權限
ls -l /application/nginx/
7.啟動并檢查安裝結果

安裝完Nginx之后,并不能直接對外提供服務,需要先啟動Nginx服務才行,具體操作如下。

啟動之前,檢查Nginx的配置語法是否出錯

/application/nginx/sbin/nginx -t

如果沒有出現啟動異常問題,接下來用curl來訪問nginx:

curl 127.0.0.1(localhost)

如果可以查看到nginx的index文件就說明Nginx安裝已經成功了。

接下來,可能安裝的啟動過程出現錯誤,列舉以下以下錯誤:

問題1:啟動Nginx時有如下報錯"nginx:[emerg] getpwnam("nginx")failed",這是因為沒有對應的Nginx用戶,執(zhí)行

useradd nginx -s /sbin/nologin -M

創(chuàng)建用戶即可。

問題2:編譯安裝pcre編譯軟件時,gcc不全導致報錯.

[root@www~]# make && make install
make all-am
make [1]:Entering directory `/home/yourself/mynginx/pcre-8.30'
CXX pcrecpp.lo
libtool:compile:unrecognized option `-DHAVE_CONFIG_H'
libtool:compile:Try `libtool --help' for more information.
make[1]:***[pcrecpp.lo]//錯誤1
make[1]:Leaving directory `/home/yourself/mynginx/pcre-8.30'
make:***[all]//錯誤2

執(zhí)行yum -y install gcc-c++命令安裝gcc-c++依賴包可以解決。

問題3:wget或者curl等軟件訪問不了Nginx頁面。
此類問題的排查思路分在Nginx服務器端排查和在客戶端排查。服務器端的排查過程如下。
首先關閉SElinux,命令如下:

setencenforce 0 //臨時關閉selinux的方法
grep SELINUX=disabled /etc/selinux/config //永久關閉

然后檢查防火墻

/etc/init.d/iptables stop //這是關閉防火墻的命令,如果是有外網IP的生產環(huán)境,請允許80端口的訪問,而不是關閉防火墻
chkconfig iptables off //非正式環(huán)境下可以禁止防火墻開機啟動。
/etc/init.d/iptables status //查看iptables的當前狀態(tài)

問題4:在安裝的環(huán)節(jié)遇到以下的錯誤:

./configure:error :SSL modules requires the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library into
the system,or build the OpenSSL library statically from the source with nginx by
using --with-openssl=<path> option

解決的方式是執(zhí)行命令:

yum -y install openssl openssl-devel

到此,Nginx的安裝工作到此結束了。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容