Jalankan Script PHP oleh User Pemiliknya

Foto os

Apache dan PHP pada distro Ubuntu biasanya dijalankan oleh user www-data. Ini masih cocok untuk web server dengan user tunggal. Namun bila web server Anda dirancang dapat digunakan oleh beberapa user, maka kebijakan tersebut menjadi kurang tepat. Mengapa?

Katakanlah script PHP Anda memiliki fungsi untuk membuat file pada direktori /home/jefri/public_html/sites/all/default/files. Bila script dijalankan oleh user www-data, ini berarti user tersebut harus mendapat akses pada direktori /home/jefri/public_html/sites/all/default/files. Ini artinya user jefri harus memberikan perintah:

$ chmod 777 /home/jefri/public_html/sites/all/default/files

Tindakan ini memberikan celah bagi user lainnya untuk mengakses direktori tersebut.
Di sini kita membutuhkan apa yang disebut dengan suphp, dimana script yang dibuat oleh jefri akan dijalankan oleh user jefri juga, tidak lagi oleh www-data. Sekarang pasanglah paketnya:

$ sudo su
# apt-get update
# apt-get install apache2-mpm-prefork libapache2-mod-suphp
# a2enmod suphp

Jika sebelumnya Apache dan PHP5 sudah terpasang, maka modul php5 perlu di-non-aktifkan:

# a2dismod php5

Biasanya direktori user berada di /home, oleh karena itu Anda perlu mengubah /etc/suphp/suphp.conf dimana:

docroot=/home

Simpan, dan restart Apache:

# /etc/init.d/apache2 restart

Selamat mencoba.

Lihat juga: