[英]Changing Linux hostname using PHP script
我正在嘗試使用PHP腳本更改Linux主機名。 我可以使用命令主機名直接在Linux機器上完成此操作
但是,當我使用下面的PHP語句..時,它不起作用。
system('sudo hostname '.trim($Host));
請提出解決方案。
假設您的Apache用戶可以在不輸入密碼的情況下運行sudo
命令(順便說一句,這將是一個巨大的安全漏洞,所以請不要這樣做),您可以這樣做:
exec("sudo hostname " . $hostname);
為了確保您的www-user
可以執行此操作,請使用以下行編輯/etc/sudoers
:
www-user ALL=NOPASSWD: /bin/hostname
無論您要通過更改主機名來完成什么,您都可能會發現可以用另一種更安全的方式來做到這一點。 對於任何閱讀此書的人,我完全不建議您遵循這些說明,您正在通過升級www- www-user
帳戶的特權來開放服務器,以免遭受潛在的危害。
使用函數exec()嘗試此命令。 http://php.net/manual/de/function.exec.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.