主頁 > 知識(shí)庫 > Nginx 安裝詳細(xì)教程

Nginx 安裝詳細(xì)教程

熱門標(biāo)簽:硅谷的囚徒呼叫中心 使用U盤裝系統(tǒng) 檢查注冊(cè)表項(xiàng) 網(wǎng)站建設(shè) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 阿里云 美圖手機(jī) 智能手機(jī)

1. Nginx簡(jiǎn)單介紹

Nginx是一款自由的、開源的、高性能的HTTP服務(wù)器和反向代理服務(wù)器;同時(shí)也是一個(gè)IMAP、POP3、SMTP代理服務(wù)器;Nginx可以作為一個(gè)HTTP服務(wù)器進(jìn)行網(wǎng)站的發(fā)布處理,另外Nginx可以作為反向代理進(jìn)行負(fù)載均衡的實(shí)現(xiàn)。

更多關(guān)于Nginx介紹以及作用請(qǐng)自行百度

2.安裝Nginx基礎(chǔ)依賴包

[root@nginx ~]# yum install gcc gcc-c++ pcre-devel zlib-devel openssl-devel -y 

3.下載相關(guān)的軟件包3.1下載nginx穩(wěn)定版

注:進(jìn)入Nginx安裝包下載地址復(fù)制您想要的版本鏈接,我這里以Nginx-1.14.0為例。

[root@nginx~]# cd /usr/local/src/  
[root@ nginx src]# wget http://nginx.org/download/nginx-1.14.0.tar.gz 

3.2 下載nginx-sticky模塊(可選安裝,應(yīng)用于集群)

作用:后端做負(fù)載均衡解決session sticky問題。

[root@nginx src]# wget https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/master.tar.gz

3.3下載ngx_cache_purge模塊(可選安裝)

作用:將ngx_cache_purge編譯到到Nginx中,用來清除指定URL的緩存。

(官網(wǎng)地址:http://labs.frickle.com/nginx_ngx_cache_purge/)

[root@nginx src]# wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz

4.添加Nginx用戶和組

[root@nginx ~]# groupadd www    
[root@nginx ~]# useradd -g www www -s /sbin/nologin

注:創(chuàng)建nginx運(yùn)行用戶www并加入到www組,不允許www用戶直接登錄系統(tǒng)。

5.解壓Nginx源碼包并進(jìn)入解壓目錄,進(jìn)行編譯安裝

[root@nginx src]# tar zxf nginx-1.14.0.tar.gz 
# 注意3.2的可選項(xiàng) 
[root@nginx src]# tar zxf ngx_cache_purge-2.3.tar.gz 
# 注意3.3的可選項(xiàng)
[root@nginx src]# tar zxf nginx-goodies-nginx-sticky-module-ng-08a395c66e42.tar.gz      
[root@nginx src]# cd nginx-1.14.0/

注:‘='號(hào)后面是自己安裝包的絕對(duì)路徑,和配置文件路徑。

[root@nginx-master nginx-1.14.0]# ./configure --prefix=/usr/local/nginx  
> --user=www --group=www       
> --with-http_stub_status_module      
> --with-http_realip_module --with-http_ssl_module    
> --with-http_gzip_static_module      
> --http-client-body-temp-path=/var/tmp/nginx/client    
> --http-proxy-temp-path=/var/tmp/nginx/proxy     
> --http-fastcgi-temp-path=/var/tmp/nginx/fcgi
# 注意3.2的可選項(xiàng)    
> --with-pcre --add-module=/usr/local/src/ngx_cache_purge-2.3 
# 注意3.3的可選項(xiàng)   
> --add-module=/usr/local/src/nginx-goodies-nginx-sticky-module-ng-08a395c66e42

執(zhí)行完編譯后:

[root@nginx nginx-1.14.0]# make && make install

注:Nginx的所有模塊必須在編譯的時(shí)候添加,不能再運(yùn)行的時(shí)候動(dòng)態(tài)加載。

6.優(yōu)化Nginx程序的執(zhí)行路徑

[root@nginx nginx-1.14.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ 
[root@nginx nginx-1.14.0]# nginx -t

如果出現(xiàn)以下問題:

需要?jiǎng)?chuàng)建此目錄:

[root@nginx nginx-1.14.0]# mkdir -p /var/tmp/nginx/client 

7.配置Nginx開機(jī)自啟動(dòng)等命令,方便我們管理Nginx

原始管理nginx的命令,不是很方便!

[root@nginx-master ~]# nginx  啟動(dòng)nginx
[root@nginx-master ~]# nginx -s reload 重啟nginx
[root@nginx-master ~]# nginx -s stop 停止nginx

接下來設(shè)置常用的管理命令:

1) 創(chuàng)建開機(jī)啟動(dòng)命令腳本文件:

[root@nginx ~]# vim /etc/init.d/nginx

2) 在這個(gè)Nginx文件中插入一下啟動(dòng)腳本代碼:

-----------------------------------腳本如下 -----------------------------------
#! /bin/bash
# chkconfig: - 85 15
PATH=/usr/local/nginx
DESC="nginx daemon"
NAME=nginx
DAEMON=$PATH/sbin/$NAME
CONFIGFILE=$PATH/conf/$NAME.conf
PIDFILE=$PATH/logs/$NAME.pid
scriptNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start() {
$DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}
do_stop() {
$DAEMON -s stop || echo -n "nginx not running"
}
do_reload() {
$DAEMON -s reload || echo -n "nginx can't reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESC configuration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $scriptNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0
[root@nginx ~]# cd /etc/init.d/

3) 設(shè)置所有人都有對(duì)這個(gè)啟動(dòng)腳本nginx文件的執(zhí)行權(quán)限:

[root@nginx init.d]# chmod a+x nginx 

4) 把nginx加入系統(tǒng)服務(wù)中:

[root@nginx init.d]# chkconfig --add nginx 

5) 把服務(wù)設(shè)置為開機(jī)啟動(dòng):

[root@nginx init.d]# chkconfig nginx on

注:reboot重啟系統(tǒng)生效!

6) 重啟后,就可以執(zhí)行如下命令進(jìn)行管理了

systemctl start nginx.service   # 啟動(dòng)nginx
systemctl stop nginx.service   # 結(jié)束nginx
systemctl restart nginx.service   # 重啟nginx
systemctl enable nginx.service   # 開機(jī)啟動(dòng)

8. 如果出現(xiàn) Nginx 啟動(dòng)不了,請(qǐng)嘗試以下方法

1) 如果之前安裝過httpd,側(cè)需要先卸載httpd,否則啟動(dòng)失敗,除非修改Nginx啟動(dòng)端口。

[root@nginx ~]# yum remove httpd -y 

2) 如果還是啟動(dòng)不來,再試試這個(gè)方法:殺死Nginx相關(guān)的進(jìn)程之后,啟動(dòng)Nginx

[root@nginx ~]#ps -A | grep nginx           
[root@nginx ~]#kill -9 pid1            
[root@nginx ~]#kill -9 pid2

3) 如果還是不行,查看日志信息解決。

9.啟動(dòng)Nginx并訪問測(cè)試

注:后續(xù)繼續(xù)更新Nginx優(yōu)化及反向代理功能!

總結(jié)

以上所述是小編給大家介紹的Nginx 安裝詳細(xì)教程,希望對(duì)大家有所幫助!

標(biāo)簽:黃山 煙臺(tái) 通遼 懷化 賀州 湖北 湘潭 山南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Nginx 安裝詳細(xì)教程》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266