您好,登錄后才能下訂單哦!
CentOS7.4安裝Nginx1.14.2過程及配置
安裝make:
yum?-y?install?gcc?automake?autoconf?libtool?make
安裝g++:
yum?install?gcc?gcc-c++
安裝pcre和pcre-devel
yum?install?-y?pcre?pcre-devel
安裝zlib zlib提供了很多壓縮和解方式,nginx需要zlib對http進行gzip
yum?install?-y?zlib?zlib-devel
安裝openssl openssl是一個安全套接字層密碼庫,nginx要支持https,需要使用openssl
yum?install?-y?openssl?openssl-devel
下載nginx
wget?http://nginx.org/download/nginx-1.14.2.tar.gz
解壓
tar?-zxvf?nginx-1.14.2.tar.gz
cd到文件路徑
cd?nginx-1.14.2
編譯
?./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/tem/nginx/client --http-proxy-temp-path=/var/tem/nginx/proxy --http-fastcgi-temp-path=/var/tem/nginx/fcgi --with-http_stub_status_module
安裝
make?&&?make?install
創建開機啟動命令腳本文件
vim?/etc/init.d/nginx
插入啟動腳本代碼
#!/bin/sh # #?nginx?-?this?script?starts?and?stops?the?nginx?daemon # #?chkconfig:???-?85?15 #?description:??NGINX?is?an?HTTP(S)?server,?HTTP(S)?reverse?\ #???????????????proxy?and?IMAP/POP3?proxy?server #?processname:?nginx #?config:??????/etc/nginx/nginx.conf #?config:??????/etc/sysconfig/nginx #?pidfile:?????/var/run/nginx.pid #?Source?function?library. .?/etc/rc.d/init.d/functions #?Source?networking?configuration. .?/etc/sysconfig/network #?Check?that?networking?is?up. [?"$NETWORK"?=?"no"?]?&&?exit?0 nginx="/usr/sbin/nginx"????????????????????????#對應編譯安裝時的sbin-path prog=$(basename?$nginx) NGINX_CONF_FILE="/etc/nginx/nginx.conf" [?-f?/etc/sysconfig/nginx?]?&&?.?/etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx make_dirs()?{ ??#?make?required?directories ??user=`$nginx?-V?2>&1?|?grep?"configure?arguments:"?|?sed?'s/[^*]*--user=\([^?]*\).*/\1/g'?-` ??if?[?-z?"`grep?$user?/etc/passwd`"?];?then ???useradd?-M?-s?/bin/nologin?$user ??fi ???options=`$nginx?-V?2>&1?|?grep?'configure?arguments:'` ???for?opt?in?$options;?do ???if?[?`echo?$opt?|?grep?'.*-temp-path'`?];?then ???value=`echo?$opt?|?cut?-d?"="?-f?2` ???if?[?!?-d?"$value"?];?then ???#?echo?"creating"?$value ???mkdir?-p?$value?&&?chown?-R?$user?$value ???fi ???fi ???done } start()?{ [?-x?$nginx?]?||?exit?5 [?-f?$NGINX_CONF_FILE?]?||?exit?6 make_dirs echo?-n?$"Starting?$prog:?" daemon?$nginx?-c?$NGINX_CONF_FILE retval=$? echo [?$retval?-eq?0?]?&&?touch?$lockfile return?$retval } stop()?{ echo?-n?$"Stopping?$prog:?" killproc?$prog?-QUIT retval=$? echo [?$retval?-eq?0?]?&&?rm?-f?$lockfile return?$retval } restart()?{ configtest?||?return?$? stop sleep?1 start } reload()?{ configtest?||?return?$? echo?-n?$"Reloading?$prog:?" killproc?$nginx?-HUP RETVAL=$? echo } force_reload()?{ restart } configtest()?{ ??$nginx?-t?-c?$NGINX_CONF_FILE } rh_status()?{ status?$prog } rh_status_q()?{ rh_status?>/dev/null?2>&1 } case?"$1"?in start) rh_status_q?&&?exit?0 $1 ;; stop) rh_status_q?||?exit?0 $1 ;; restart|configtest) $1 ;; reload) rh_status_q?||?exit?7 $1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q?||?exit?0 ;; *) echo?$"Usage:?$0?{start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" exit?2 esac
保存
:wq
設置所有人都有對這個啟動腳本nginx文件的執行權限
chmod?a+x?/etc/init.d/nginx
把nginx加入系統服務中
chkconfig --add nginx
1)如果出現[emerg] getpwnam("nginx") failed錯誤,執行useradd nginx
2)如果出現 [emerg] mkdir() “/var/temp/nginx/client” failed (2: No such file or directory) 錯誤 執行
mkdir -p /var/tem/nginx/client
檢查nginx配置是否成功
nginx -t
啟動
nginx?
重啟
nginx -s reload
如果您正在運行防火墻,請運行以下命令以允許HTTP和HTTPS通信:
?sudo firewall-cmd --permanent --zone=public --add-service=http?
?sudo firewall-cmd --permanent --zone=public --add-service=https
?sudo firewall-cmd --reload
至此服務器配置完成。
-------------------------------------------------------------------------------------------------------------------------------?
? ? ? ?
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。