摘要:基于阿里云,版本是先廢話下進程分為進程和進程,開始運行后我們可以通過查看他的的在之后會把它的進程寫到文件中。之后就會把此掉,隨之這個文件也會被刪除。此時你文件得到的一串數字和上述中的數據是一致的。
基于阿里云,版本是 CentOS release 5.8 (Final)
先廢話下,Nginx進程分為master進程和worker進程,nginx開始運行后
我們可以通過 ps aux|gerp nginx查看他的master的pid
Nginx在start之后會把它的master進程id寫到*/nginx/logs/nginx.pid文件中。
stop之后就會把此pid kill掉,隨之這個文件也會被刪除。
此時你cat文件*/nginx/logs/nginx.pid得到的一串數字和上述 ps aux|gerp nginx 中的nginx master pid數據是一致的。
如下圖:
那么nginx.pid文件寫在哪個路徑中,在哪里設置呢,當然可以在編譯的時候指定(我沒做過),這里我的是在conf文件中指定。
配置文件是在*/server/nginx/conf下,這里列出前四列
user www www; worker_processes 1; error_log /alidata/log/nginx/error.log crit; pid /alidata/server/nginx-1.2.5/logs/nginx.pid;
我們啟動nginx的時候 大家都知道,可以如下命令:
/alidata/server/nginx/sbin/nginx -c /alidata/server/nginx/conf/nginx.conf
-c就是這里的conf文件了。
那么問題來了,我們在執行 nginx restart 或者strat stop中報類似錯 :
nginx: [error] open() "/alidata/server/nginx/logs/nginx.pid" failed
(2: No such file or directory)
是哪里報錯的呢,其實是在
/etc/init.d/nginx這個文件中,這里是nginx start stop reload restart 的命令源頭。
這里我貼一下這個文件中的代碼,這個文件可以自己修改或者優化。
改完之后執行 chkconfig --add /etc/init.d/nginx
如果chkconfig執行報錯如下:
service nginx does not support chkconfig
可以在文件中頭部加上下面這兩句:
# chkconfig: - 85 15 # description: nginx is a World Wide Web server. It is used to serve
如果大概看懂了下面的腳本,就大概知道錯誤的源頭在哪里啦。
#!/bin/bash # nginx Startup script for the Nginx HTTP Server # this script create it by ruijie. at 2014.02.26 # if you find any errors on this scripts,please contact ruijie. # and send mail to ruijie at gmail dot com. # ruijie.qiao@gmail.com # chkconfig: - 85 15 # description: nginx is a World Wide Web server. It is used to serve # nginxd=/alidata/server/nginx/sbin/nginx nginx_config=/alidata/server/nginx/conf/nginx.conf nginx_pid=/alidata/server/nginx-1.2.5/logs/nginx.pid RETVAL=0 prog="nginx" [ -x $nginxd ] || exit 0 # Start nginx daemons functions. start() { if [ -e $nginx_pid ] && netstat -tunpl | grep nginx &> /dev/null;then echo "fuck nginx already running...." exit 1 fi echo -n $"Starting $prog!" $nginxd -c ${nginx_config} RETVAL=$? echo [ $RETVAL = 0 ] && touch /var/lock/nginx return $RETVAL } # Stop nginx daemons functions. stop() { echo -n $"Stopping $prog!" $nginxd -s stop RETVAL=$? echo [ $RETVAL = 0 ] && rm -f /var/lock/nginx } # reload nginx service functions. reload() { echo -n $"Reloading $prog!" #kill -HUP `cat ${nginx_pid}` $nginxd -s reload RETVAL=$? echo } # See how we were called. case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) stop start ;; *) echo $"Usage: $prog {start|stop|restart|reload|help}" exit 1 esac exit $RETVAL
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/39214.html
其實,我們在工作生活當中,總是會遇到各種各樣的困惑的,甚至遇到各種麻煩,一旦遇到這么麻煩問題的話,就會嚴重的影響到我們的工作效率,比如遇到Python無法用requests獲取網頁源碼的問題,那么,我們該怎么去進行解決呢?下面就給大家詳細解答下。 最近在抓取http://skell.sketchengine.eu網頁時,發現用requests無法獲得網頁的全部內容,所以我就用selenium...
小編寫這篇文章的目的,主要是給大家講解一下,關于實現配置熱加載的方法,具體是怎么操作呢?下面就給大家詳細的解答下。 背景 由于最近有相關的工作需求,需要進行增添相關的新功能,實現配置熱加載的功能。所謂的配置熱加載,也就是說當服務收到配置更新消息之后,我們不用重啟服務就可以使用最新的配置去執行任務。 如何實現 下面我分別采用多進程、多線程、協程的方式去實現配置熱加載。 使用多進程實現配...
小編寫這篇文章的主要目的,是給大家去做一個相關的介紹,介紹一下關于其怎么才能夠實現python迷宮,那么,我們要使用的話,就要去生成代碼了,那么,具體的代碼有嗎?下面就給大家做一個解答。 作為一項古老的智力游戲,千百年來迷宮都散發著迷人的魅力。但是,手工設計迷宮費時又耗(腦)力,于是,我們有必要制作一個程序:迷宮生成器…… 好吧,我編不下去了。但是,從上面的文字中,我們可以看出,我們此次的...
小編寫這篇文章的主要目的,是來給大家做一個解答,解答的內容主要是python解析json數據,涉及到的知識點還是比較的多的,那么,做完數據之后,怎么去保存csv文件呢?下面就給大家詳細解答下。 解析json數據并保存為csv文件 首先導入兩個包: importjson importpandasaspd 打開json文件并讀取: withopen('2.json',...
在今日,任何小區類服務平臺,都具有點贊功能,應時而生的便是自動點贊器,別名刷電話分機/qq刷贊器。本文用Python撰寫1個關注點贊智能機器人,所需要的可以了解一下 在今日,任何小區類服務平臺,都具有點贊功能,應時而生的便是自動點贊器,別名刷電話分機/qq刷贊器。 本文為大家介紹一下一個關注點贊智能機器人,最簡單容易接受的關鍵邏輯性。 全篇涉及到的遞歸算法,應用Python撰寫,因為是遞...
閱讀 3022·2021-09-22 14:59
閱讀 1863·2021-09-22 10:02
閱讀 2107·2021-09-04 16:48
閱讀 2259·2019-08-30 15:53
閱讀 2964·2019-08-30 11:27
閱讀 3401·2019-08-29 18:35
閱讀 959·2019-08-29 17:07
閱讀 2668·2019-08-29 13:27