3
當我從Linux命令行運行ps -ef
我不認爲目前正由Apache網絡用戶運行PHP腳本,我剛纔看到的過程:顯示哪些PHP腳本的Apache正在運行
/usr/bin/php5-cgi -q -b 127.0.0.1:9000 -c /etc/php5/cgi/php.ini
有沒有一個命令行會顯示哪個腳本正在運行,而不僅僅是Apache用戶使用php的事實?
當我從Linux命令行運行ps -ef
我不認爲目前正由Apache網絡用戶運行PHP腳本,我剛纔看到的過程:顯示哪些PHP腳本的Apache正在運行
/usr/bin/php5-cgi -q -b 127.0.0.1:9000 -c /etc/php5/cgi/php.ini
有沒有一個命令行會顯示哪個腳本正在運行,而不僅僅是Apache用戶使用php的事實?
您可以使用lsof獲取當前工作目錄並打開文件。 不幸的是這不包括正在運行的腳本,但如果腳本在 不同的目錄下,或者打開不同的文件,你可以區分它們之間的 。例如,下面顯示在/ var/WWW /材料/ PHP腳本運行:
sudo lsof -c http | grep cwd
httpd 24475 id cwd DIR 8,3 4096 1123403 /var/www/stuff/php
您可以配置Apache,讓你擁有的信息。添加一個條目,如
<Location /server-status>
SetHandler server-status
...
</Location>
在您的conf確保它只是提供給受限遙控器。 然後瀏覽到http://localhost/server-status
,您將有一個「ps」 正在運行的作業。例如,這個輸出顯示gg.php運行(我 刪除了一些列):
Srv PID Acc M CPU SS Slot Client VHost Request
0-0 23688 0/0/262 W 0.50 2 4.48 ::1 xxx:80 GET /php/gg.php HTTP/1.1
1-0 23743 0/0/187 W 0.00 0 3.30 ::1 xxx:80 GET /server-status HTTP/1.1
謝謝,這說明我需要的信息 – brightonian