Menghadapi masalah berikut selama beberapa minggu dan tidak dapat menyelesaikannya. Masalah terjadi saat memanggil $wpdb - (/wp-includes/wp-load. baris php 412)
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) )_
2022/05/16 09:18:11 [error] 102518#102518: *3722311 FastCGI sent in stderr: "PHP message: PHP Warning: file_exists(): open_basedir restriction in effect. File(/www/eamplenl_975/public/releases/20220516073916/web/app/db.php) is not within the allowed path(s): (/www/eamplenl_975/public/current:/www/eamplenl_975/public/releases:/www/eamplenl_975/public:/www/eamplenl_975/mysqleditor:/www/eamplenl_975/web:/www/eamplenl_975/deploy:/www/eamplenl_975/deployment:/www/eamplenl_975/deployments:/usr/share:/tmp:/www/eamplenl_975/public/releases/20220510075554/web/app) in /www/eamplenl_975/public/releases/20220516073916/web/wp/wp-includes/load.php on line 412" while reading response header from upstream, client: 161.35.150.191, server: www.eample.nl, request: "GET //xyz.com HTTP/1.1", upstream: "fastcgi://unix:/var/run/php7.4-fpm-eamplenl.sock:", host: "www.eample.nl:42856"Situs berjalan di Kinsta. Akan sangat bagus jika ada yang bisa membantu. Terima kasih
Anda mungkin berada di sini karena melihat kesalahan di situs WordPress yang terlihat seperti salah satu pesan kesalahan berikut dan Anda tidak dapat mengakses situs Anda
• Pembatasan open_basedir berlaku. File(/tmp) tidak berada dalam jalur yang diizinkan
• Peringatan. file_exists() [fungsi. file-ada]. Pembatasan open_basedir berlaku. File(/home/some/path/here/) tidak berada dalam jalur yang diizinkan
• Peringatan. is_writable() [fungsi. dapat ditulis]. Pembatasan open_basedir berlaku
File(/) tidak berada dalam jalur yang diizinkan
Pembatasan pada dasarnya adalah pembatasan keamanan yang mencegah pengguna di server web untuk mengakses file dan folder milik pengguna lain.
Misalnya, jika suatu fungsi (seperti fopen atau mkdir) dalam tema atau plugin WordPress mencoba mengakses file atau folder yang berada di luar direktori home-nya, itu tidak akan dapat mengaksesnya dan akan menampilkan pembatasan open_basedir dalam efek kesalahan
Ada beberapa cara untuk memperbaiki pembatasan open_basedir pada kesalahan efek. Anda dapat menonaktifkan pembatasan sepenuhnya, Anda dapat secara selektif mengizinkan akses beberapa file dan folder di luar direktori home untuk beberapa pengguna atau Anda dapat men-debug kode tema dan plugin WordPress Anda sehingga tidak perlu mengakses file dan folder di luarnya.
Cara Memperbaiki Kesalahan pembatasan open_basedir di WordPress di Shared Web Hosting
Jika Anda menggunakan hosting bersama, Anda tidak dapat menonaktifkan batasan open_basedir di akun hosting web Anda. Anda perlu mengirim email ke host web Anda untuk menonaktifkannya di akun Anda. Jadi, hubungi mereka dan tunggu sampai mereka menonaktifkannya
Dalam banyak kasus, host web Anda tidak akan menonaktifkan perlindungan open_basedir. Mereka akan mengirimkan balasan seperti ini,
Masalahnya adalah skrip Anda mencoba melakukan beberapa tindakan di folder 'root' server, "/". Ini tidak benar karena Anda tidak diizinkan untuk mengakses dan melakukan operasi di root server. Kami tidak akan menonaktifkan pembatasan open_basedir karena tidak akan menyelesaikan masalah Anda. Kami menyarankan Anda untuk memperbaiki skrip Anda
Mereka benar. Jadi sekarang, untuk memperbaiki masalah ini, hubungi host web Anda dan dapatkan jalur direktori atau folder tmp di akun hosting web Anda dari mereka. Kemudian edit wp-config. php file untuk menambahkan kode ini di dalamnya,
tentukan('WP_TEMP_DIR','. /. /relative/path/to/tmp');
Di sini, ganti '. /. /relative/path/to/tmp’ dengan path sebenarnya dari direktori tmp di akun Anda relatif terhadap blog WordPress yang menunjukkan kesalahan
Misalnya, jika situs WordPress yang menunjukkan kesalahan dipasang di www. situs Anda. com/blog, dan folder tmp terletak satu tingkat di atas folder blog, kode yang akan ditambahkan ke wp-config. file php akan menjadi,
DEFINE('WP_TEMP_DIR','. /tmp')
Anda perlu menambahkan satu ../_ untuk setiap direktori lebih tinggi, relatif terhadap direktori tempat situs WordPress Anda diinstal hingga Anda mencapai direktori tmp
Perbaikan cepat. Terkadang, kesalahan open_basedir disebabkan oleh jalur unggahan media yang salah di WordPress. Untuk memeriksanya, buka http. // www. situs Anda. com/wp-admin/option. php dan periksa nilai upload_path
Nilai di sini harus wp-content/uploads. Jika memiliki garis miring seperti, /wp-content/uploads, ganti dengan wp-content/uploads
Peringatan. Harap jangan mengedit apa pun di /wp-admin/options. halaman php kecuali Anda tahu apa yang Anda lakukan. Anda akan merusak situs Anda jika melakukannya
Cara Memperbaiki Kesalahan Pembatasan open_basedir di WordPress di VPS atau Server Terdedikasi
Jika Anda menggunakan VPS atau host khusus dengan cPanel WebHost Manager (WHM), maka untuk menonaktifkan pembatasan PHP open_basedir di , buka Tweak Security > Security > Configure > PHP open_basedir Tweak, dan nonaktifkan. Anda juga dapat mengaktifkan atau menonaktifkannya secara selektif untuk berbagai akun pengguna
Jika Anda menggunakan VPS atau host khusus dengan Plesk, buka Alat dan Pengaturan > Pengaturan Tampilan Sederhana > Pengaturan PHP. Di sini, masukkan nilai khusus untuk opsi open_basedir, untuk menempatkan {DOCROOT}\;\Windows\Temp\ sebagai nilainya. Klik OK dan restart layanan Plesk
Perhatikan bahwa menonaktifkan pembatasan open_basedir secara global di Plesk tidak akan berfungsi untuk domain yang sudah dibuat di dalamnya. Ini hanya akan berfungsi untuk domain yang dibuat setelah perubahan. Untuk menonaktifkan batasan open_basedir untuk domain saat ini, setiap domain harus diedit satu per satu. Berikut prosedurnya
Buka Domain > (domain yang ingin Anda ubah) > Situs Web & Domain > Operasi Lanjutan > Pembuatan Skrip dan Keamanan Situs Web > Pengaturan PHP. Di sini, masukkan nilai khusus untuk opsi open_basedir (dalam pengaturan umum), untuk menempatkan {DOCROOT}\;\Windows\Temp\ sebagai nilai. Sekarang, daur ulang kumpulan aplikasi domain yang akan memperbarui php secara otomatis. ino yang dibuat oleh Plesk
Jika Anda tidak memiliki Cpanel WHM atau Plesk di VPS atau hosting khusus, Anda cukup mengedit file konfigurasi Apache untuk menonaktifkan pembatasan open_basedir PHP. Untuk melakukan ini, buka httpd. conf, dan temukan baris seperti ini,
php_admin_value open_basedir some_value_here
Ganti dengan baris berikut,
php_admin_value open_basedir tidak ada
Anda perlu melakukan perubahan ini hanya di bawah host virtual untuk akun pengguna domain yang ingin Anda nonaktifkan perlindungan open_basedir
Untuk mengizinkan skrip php di akun pengguna mana pun di server web Anda untuk mengakses beberapa direktori tertentu di luar direktori home mereka, tanpa menonaktifkan batasan open_basedir sepenuhnya, tambahkan kode seperti di bawah ini ke httpd. file conf
php_admin_value open_basedir "/home/user_account/. /usr/local/lib/php. / tmp. /direktori_baru"
Tambahkan lebih banyak direktori sesuai kebutuhan hanya dengan memisahkannya dengan tanda titik dua (. ) di server Unix dan Linux dan dengan titik koma (;) di server Windows
Mulai ulang server Apache setelah melakukan perubahan pada httpd. file conf
Catatan Keamanan Penting. Dalam daftar direktori di atas, nama direktori adalah awalan pencocokan ekspresi reguler. Jadi aturan /dir/incl juga akan cocok dengan /dir/includes. Untuk memastikannya sama persis dengan direktori yang ditentukan, tambahkan garis miring, seperti /dir/incl/
Memperbarui. Nama direktori yang ditentukan di open_basedir bukan lagi awalan sejak PHP 5. 2. 16 dan 5. 3. 4. Ini dianggap sebagai nama direktori lengkap sekarang