Masalah/pertanyaan
- Di PHP: Skrip PHP saya kalau include file yang ada di /home gak bisa ya? Pesan errornya: “Warning: include(/u/XXXXX/home/XXXXX.php) [function.include]: failed to open stream: Permission denied in /home/sloki/user/XXXXX/sites/XXXXX/www/XXXXX.php on line 3”
- User yang menjalankan apache (webserver) siapa ya?
- Di Perl: XXX
- Di Python: XXX
Solusi
Ini karena user yang menjalankan webserver (skrip CGI/PHP) defaultnya adalah cgi-USER, bukan USER. Dan HOME ditutup dengan permission 700.Beberapa cara yang bisa dilakukan adalah:
- mengubah permission $HOME dari yang tadinya 700 menjadi 710 (atau 750).
- file yang diinclude boleh juga disimpan di /u/USER/public. Tapi isi direktori ini bisa diakses oleh semua user hosting di server tersebut, yang mana belum tentu Anda inginkan.
- mengubah user webserver menjadi user biasa (USER). Tapi ini tidak dianjurkan karena alasan keamanan.
- menaruh skrip-skrip yang ingin diinclude ke /u/USER/sites/SITE/www/ atau /u/USER/sites/SITE/etc/