2013-04-26 70 views
-1

我想寫一個php程序,它可以執行服務fcserver狀態來查找我的聊天室是否正在運行。如果它運行,那麼輸出應該是php執行功能的根訪問

http://i40.tinypic.com/15ysobn.png

,如果它不是那麼運行輸出應該是

http://i44.tinypic.com/2mo5t3a.png

如果它沒有運行,那麼應該有一個開始按鈕開始聊天室。當有人點擊該按鈕時,我的腳本執行服務fcserver啓動命令。

好吧,我不能像「數據用戶」那樣執行「service fcserver status」或「service fcserver start」等命令。我需要一個根權限。請幫幫我!!有什麼方法可以完成這個小任務而不會影響服務器的安全性?

謝謝!

+0

RTLM:http://en.wikipedia.org/wiki/Sudo – 2013-04-26 20:35:49

+2

這是一個123flashchat的任何機會?爲什麼你想讓最終用戶爲你啓動聊天室? – Cubatown 2013-04-26 20:36:05

+1

這已被問及很多時間。搜索所以:'php exec root',你會發現很多信息(其中大部分信息會告訴你,由於安全問題,這不是一個明智的方法)。 – tptcat 2013-04-26 20:37:53

回答

0

這純粹是在回答這個問題的狀態部分:

多久你需要查詢此?一經請求?或者定期的投票工作(即cron工作)?

如果cron作業正常,您可以讓根級別的cron作業每隔1-5分鐘在web目錄中生成一個狀態文件。然後PHP不是執行系統命令本身,而是隻是讀取狀態文件和解析。

有了這個,您至少可以在不影響任何安全性的情況下查看最新的狀態信息。

至於從遠程Web界面執行系統命令,這將是非常不願意這樣做。