最近做的一個項目,系統(tǒng)是windows的,因為要在后臺做一些數(shù)據(jù)分析,所以使用webman,以便使用自定義進程處理數(shù)據(jù)。
開始的思路是使用bat批處理弄了個開機自啟,但運行了一段時間后,命令行直接掛了[php.exe已停止工作]。不知道什么原因,應該不是業(yè)務代碼的問題,估計是內(nèi)存泄露或者某個php擴展引起的。
處理方法就是關(guān)了命令行重新打開,但問題沒有根本解決,說不定哪天又掛了。
所以,從網(wǎng)上找了個nssm的軟件,可以生弄成一個服務,可以開機自啟,沒有黑乎乎的命令行命,掛了也自動重啟。
下載地址:http://www.nssm.cc/download
參考資料:https://www.jianshu.com/p/35487bc68ab1
我的系統(tǒng)環(huán)境:
php目錄:D:\UPUPW_ANK_W64\Modules\PHPX\PHP74
網(wǎng)站目錄:D:\doc\php\site1
下載以后,根據(jù)你的系統(tǒng)版本,打開命令行,cd進入[win64]或[win32]。(或者把nssm.exe
復制到網(wǎng)站根目錄也行)。
1、執(zhí)行命令:.\nssm install
,會打開一個圖形化界面:
D:\UPUPW_ANK_W64\Modules\PHPX\PHP74\php.exe
D:\doc\php\site1\public\
..\windows.php
webman8787
2、點擊??切換到選項卡到[I/O]
配置日志文件:
D:\doc\php\site1\runtime\logs\stdout.log
D:\doc\php\site1\runtime\logs\stderr.log
3、點擊??切換到選項卡到[Environment]
配置環(huán)境變量:
輸入:path=D:\UPUPW_ANK_W64\Modules\PHPX\PHP74\;C:\Windows\SysWOW64\;
這步很重要,即使你已在系統(tǒng)的環(huán)境變量中把php
執(zhí)行路徑加入path里面,這里仍然需要配置,不然啟動子進程的時候會報[php命令找不到]的錯誤。另外文件修改監(jiān)控熱重載使用了taskkill
系統(tǒng)命令,要找到這個命令[taskkill.exe]在系統(tǒng)中的位置,64位系統(tǒng)是在[C:\Windows\SysWOW64]這個目錄里面,也加到path里面,多個路徑使用;
分割。。
4、點擊底部[install service]
完成安裝。
5、可以在任務管理器-服務中找到webman8787
的服務。
6、如果想修改配置,執(zhí)行命令:.\nssm edit webman8787
,會重新打開配置界面。
7、出錯可以查看一下日志stdout.log
:
就跟在命令行界面看到的差不多:
666