Bagaimanakah Saya Boleh Menjalankan Skrip Shell yang Diperlukan Sudo daripada PHP Tanpa Gesaan Kata Laluan?

Barbara Streisand
Lepaskan: 2024-11-17 18:24:02
asal
333 orang telah melayarinya

How Can I Run Sudo-Required Shell Scripts from PHP Without Password Prompts?

Cara Melaksanakan Skrip Shell yang Diperlukan SUDO daripada PHP

Melaksanakan skrip shell yang memerlukan keistimewaan yang tinggi dari dalam PHP boleh mencabar, kerana fungsi shell_exec() tidak menyokong gesaan kata laluan. Walau bagaimanapun, terdapat cara untuk mengatasi had ini dan mengautomasikan pelaksanaan skrip.

Penyelesaian: Ubah Suai Fail Sudoers

Satu penyelesaian yang berkesan ialah mengedit fail sudoers (biasanya terletak di /etc/sudoers) dan tambah peraturan yang membenarkan skrip yang ditentukan dilaksanakan tanpa kata laluan. Untuk melakukan ini, ikuti langkah berikut:

  1. Buka fail sudoers dengan keistimewaan root menggunakan arahan berikut:

    sudo visudo
    Salin selepas log masuk
  2. Tambah baris dalam format berikut:

    www-data ALL=NOPASSWD: /path/to/script
    Salin selepas log masuk

    di mana www-data ialah nama pengguna pelayan web dan /path/to/script ialah laluan ke skrip bash yang memerlukan keistimewaan yang tinggi.

  3. Simpan dan tutup fail sudoers.

Dengan membuat pengubahsuaian ini, anda memberi kebenaran secara berkesan kepada pengguna pelayan web untuk melaksanakan skrip yang ditentukan tanpa digesa untuk mendapatkan kata laluan.

Setelah anda melengkapkan langkah ini, anda boleh memanggil skrip bash anda daripada PHP menggunakan fungsi shell_exec() seperti biasa. Skrip akan dijalankan dengan keistimewaan yang tinggi, tanpa sebarang gesaan kata laluan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjalankan Skrip Shell yang Diperlukan Sudo daripada PHP Tanpa Gesaan Kata Laluan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan