Melaksanakan Aplikasi Baris Perintah daripada PHP Menggunakan Pengguna Tertentu
Untuk mengawal main balik Rhythmbox daripada skrip PHP yang dijalankan sebagai pengguna-www, ia adalah penting bahawa aplikasi itu dilaksanakan sebagai pengguna yang dimaksudkan dan bukannya pengguna www lalai. Satu penyelesaian yang berkesan melibatkan penggunaan sudo.
Dengan memanfaatkan sudo, skrip PHP boleh menggunakan arahan rhythmbox-client dengan keistimewaan yang tinggi. Walau bagaimanapun, untuk memastikan bahawa hanya arahan khusus dibenarkan, adalah dinasihatkan untuk mengkonfigurasi fail sudoers dengan sewajarnya. Contohnya:
wwwuser ALL=/usr/bin/rhythmbox-client
Dengan mengehadkan seruan sudo kepada perintah tertentu, anda boleh melindungi persekitaran anda dan menghalang Apache daripada melaksanakan arahan sewenang-wenangnya.
Dalam kes di mana klien rhythmbox mungkin sukar untuk kenal pasti contoh yang betul untuk dikawal, pertimbangkan untuk mencipta skrip bash untuk mewujudkan persekitaran yang sesuai dan melaksanakan arahan. Skrip di bawah menunjukkan pendekatan ini:
#! /bin/bash DBUS_ADDRESS=`grep -z DBUS_SESSION_BUS_ADDRESS /proc/*/environ 2> /dev/null| sed 's/DBUS/\nDBUS/g' | tail -n 1` if [ "x$DBUS_ADDRESS" != "x" ]; then export $DBUS_ADDRESS /usr/bin/rhythmbox-client --pause fi
Dengan menyepadukan skrip ini ke dalam pelaksanaan PHP, anda boleh memberikan wwwpengguna keupayaan untuk mengawal main balik mengikut cara yang disasarkan, membolehkan fungsi yang diingini untuk menjeda muzik semasa pengambilan telefon dan menyambung semula apabila ditutup.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Aplikasi Baris Perintah sebagai Pengguna Khusus daripada PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!