Oplossing foar PHP sûnder tastimming om exec-kommando út te fieren op Linux
Besibbe offisjele referinsjes
PHP exec Linux sudoers file Sudo CommandsOanpassingen by it útfieren fan fastcgi-modus
As PHP yn 'e fastcgi-modus rint, wurde har tagongsrjochten erfd fan har hostprogramma. Wy nimme apache as foarbyld om út te lizzen. Alderearst moatte wy it akkount fine wêrûnder apache rint, brûk dan vi of vim om it bestân / etc / sudoers te bewurkjen, en foegje it folgjende foarbyld oan it bestân ta. Yn 'e folgjende ynhâld, brûk earst it kommando ps om it apache-proses httpd te finen, sjoch nei de akkountynformaasje oan' e lofterkant fan it weromkommen resultaat, en bewurkje dan it sudoers-bestân om autorisaasje ta te foegjen oan it apache-akkount.
ps aux | grep httpd
vim /etc/sudoers
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
apache ALL=(ALL) NOPASSWD:ALL
Oanpassingen by it útfieren fan php-fpm-modus
As jo rinne yn php-fpm-modus, rint it as in apart proses. Dat wy fine earst it rinnende akkount, en fiere dan autorisaasjebedriuwen lykas hjirboppe.
ps aux | grep php-fpm
vim /etc/sudoers
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
www ALL=(ALL) NOPASSWD:ALL
Kontrolearje dat de wizigingen fan krêft binne
Nei de boppesteande operaasjes hawwe wy de autorisaasje wizige, mar dy is noch net yngien. Wy moatte de tsjinst opnij starte om ús wiziging fan krêft te meitsjen. Neffens ús feitlike situaasje, start de apache- of php-fpm-tsjinst opnij. Fier dan it kommando exec út om it weromkommen resultaat te besjen. As it weromkommende resultaat normaal wurdt krigen, is it suksesfol.
exec('sudo dmidecode -s system-serial-number', $result);
var_dump($result);