Table of Contents

Masalah

Muncul pesan error “URL file-access is disabled” saat menggunakan fungsi include(), fopen(), file(), atau file_get_contents() ke URL remote.

Penjelasan dan Solusi

Setting default allow_url_fopen adalah 0 (disabled) di php.ini server hosting. allow_url_fopen memang amat dianjurkan untuk tetap disabled demi alasan security. Namun konsekuensinya, Anda tidak bisa melakukan include() atau fopen() ke URL remote seperti ini:

include('http://foo.com/bar.php');

atau:

$fp = fopen('http://foo.com/bar.php');

Jika Anda memang benar-benar membutuhkan fitur seperti di atas, maka buatlah php.ini untuk subdomain Anda dan setting allow_url_fopen harus diaktifkan dg baris sbb:

allow_url_fopen=1 

Dan juga dibutuhkan baris tambahan untuk suhosin seperti ini:

suhosin.executor.include.whitelist=http://SITE1,http://SITE2...

di mana SITE1, SITE2, dsb diganti dengan nama hostname atau domain yang ingin diakses oleh skrip Anda, katakanlah klikbca.com atau detik.com.

Namun perhatikan bahwa Anda menanggung sendiri risiko memperbesar/mempermudah situs Anda dihack orang.