背景
下載Nginx安裝包石抡,編譯安裝妓雾。
安裝目錄:/usr/local/nginx
配置文件:/usr/local/nginx/conf/nginx.conf
創(chuàng)建/etc/init.d/nginx文件
在Nginx官網(wǎng)上的NGINX Init Scripts選擇啟動腳本桑滩,我這里是CentOS系統(tǒng)屁桑,選擇 Red Hat NGINX Init Script, 將腳本拷貝到/etc/init.d/nginx
設(shè)置/etc/init.d/nginx訪問權(quán)限
# !bin/bash
#(a+x參數(shù)表示 ==> all user can execute 所有用戶可執(zhí)行)
chmod a+x /etc/init.d/nginx
創(chuàng)建軟連接
仔細(xì)觀察腳本拯爽,腳本里面的nginx的相關(guān)路徑與本機(jī)安裝的路徑不一致最蕾。
nginx文件 | 本機(jī)路徑 | 腳本路徑 |
---|---|---|
nginx執(zhí)行文件 | /usr/bin/nginx | /usr/sbin/nginx |
nginx.conf配置文件 | /usr/local/nginx/conf/nginx.conf | /etc/nginx/nginx.conf |
根據(jù)以上路徑的不同創(chuàng)建軟連接
# !bin/bash
ln -s /usr/bin/nginx /usr/sbin/nginx
ln -sfn /usr/local/nginx/conf/ /etc/nginx/
設(shè)置開機(jī)默認(rèn)啟動
# !bin/bash
vi /etc/rc.local
添加 /etc/init.d/nginx start
執(zhí)行service nginx start
命令出錯
1炕横、 Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details
執(zhí)行killall -9 nginx
關(guān)閉nginx服務(wù)即可
2源内、一直卡在`Starting nginx (via systemctl)
# !bin/bash
# 查看原因
service nginx status
提示:Can't open PID file /run/nginx.pid (yet?) after start: ...ctory
# 修改nginx.conf中的pid
pid /etc/nginx/logs/nginx.pid;
# 創(chuàng)建nginx.pid
cd /etc/nginx && mkdir logs && touch logs/nginx.pid
# 替換 /lib/systemd/system/nginx.service 文件中的/run/nginx.pid,替換為/etc/nginx/logs/nginx.pid
# 執(zhí)行命令
systemctl daemon-reload
# 關(guān)閉nginx服務(wù)
killall -9 nginx
# 正常開啟服務(wù)
service nginx start