PHP(Hypertext Preprocessor)即“超文本預(yù)處理器”,是在服務(wù)器端執(zhí)行的腳本語言.
成都創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)績(jī)溪,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
它運(yùn)行是要基于apache、nginx等服務(wù)器來運(yùn)行的,而php擴(kuò)展在php.ini 配置好了,直接重新啟動(dòng)一下服務(wù)器就好了
php5.4中php-fpm怎么重啟?
php?5.3.3以后?源碼中已經(jīng)內(nèi)嵌了?php-fpm,不用象以前的php版本一樣專門打補(bǔ)丁了,只需要在configure的時(shí)候添加編譯參數(shù)即可。?
關(guān)于php-fpm的編譯參數(shù)有?–enable-fpm?–with-fpm-user=www?–with-fpm-group=www?–with-libevent-dir=libevent位置。?
但是,php?5.3.3以后?的php-fpm?不再支持?php-fpm?以前具有的?/usr/local/php/sbin/php-fpm?(start|stop|reload)等命令,需要使用信號(hào)控制:?
master進(jìn)程可以理解以下信號(hào):
INT,?TERM?立刻終止?
QUIT?平滑終止?
USR1?重新打開日志文件?
USR2?平滑重載所有worker進(jìn)程并重新載入配置和二進(jìn)制模塊
有了以上信號(hào),php-fpm進(jìn)程重啟就方便多了。
例子:?
php-fpm?關(guān)閉:?
代碼示例:
kill?-INT?`cat?/usr/local/php/var/run/php-fpm.pid`
php-fpm?重啟:?
代碼示例:
kill?-USR2?`cat?/usr/local/php/var/run/php-fpm.pid`
說明:
cat部分是php-fpm的進(jìn)程號(hào),可能是我用的5.4的問題。沒有用php-fpm.pid?,就沒有這個(gè)文件。
可以用?ps?aux?|?grep?php-fpm,使用第一個(gè)進(jìn)程的進(jìn)程號(hào),測(cè)試可行。
/etc/init.d/php-fpm?start
/etc/init.d/php-fpm?stop
/etc/init.d/php-fpm?restart
/etc/init.d/php-fpm?reload
apache
啟動(dòng)
systemctl start httpd
停止
systemctl stop httpd
重啟
systemctl restart httpdmysql啟動(dòng)
systemctl start mysqld停止
systemctl stop mysqld
重啟
systemctl restart mysqld
php-fpm
啟動(dòng)
systemctl start php-fpm
停止
systemctl stop php-fpm
重啟
systemctl restart php-fpmnginx
啟動(dòng)
systemctl start nginx
停止
systemctl stop nginx
重啟
systemctl restart nginx
已解決 下面是解決方法
1、設(shè)置 sudo 配置文件 可寫權(quán)限
chmod u+w /etc/sudoers
2、增加 www 用戶的 nginx 腳本管理權(quán)限
www ALL=(root) NOPASSWD: /etc/init.d/nginx
3、關(guān)閉 【強(qiáng)制控制臺(tái)登錄】執(zhí)行
【非常重要】,注釋該行 我的問題就出在這里,開啟了這個(gè)選項(xiàng)之后。在PHP中怎么調(diào)用,都沒有執(zhí)行結(jié)果
#Defaults requiretty
4、還原 sudo 配置權(quán)限 440
【非常重要】,如果不還原權(quán)限。在PHP中怎么調(diào)用,都沒有執(zhí)行結(jié)果。
chmod u-w /etc/sudoers
5、調(diào)用php
$result2 = exec("/usr/bin/sudo /etc/init.d/nginx stop",$result);
var_dump($result);
var_dump($result2);
不是重新啟動(dòng)PHP,是重新啟動(dòng)IIS或是APACHE,主要看你用的是那個(gè),PHP是由這二個(gè)啟動(dòng)的
把你的服務(wù)容器重啟就可以了
比如你是 windows +apache + php +mysql
那么重啟apache
是nginx 就重啟nginx
iis 類似,至于重啟方法么,百度一下每個(gè)服務(wù)容器怎么重啟就可以了