T:Skrip tidak bisa include skrip lain di HOME

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/

Resita has written 702 articles