Cara Mengubah session_save_path di cPanel


5 menit

Mendapatkan pesan error session_start(): Failed to read session data: files (path: /suatu/folder/di/website) pada website yang kamu gunakan? Mungkin kamu perlu mengubah session_save_path pada websitemu, yang caranya akan dibahas dalam artikel ini.

Ketika kamu menggunakan session_save_path default, bisa saja folder tersebut tidak dapat digunakan atau bahkan tidak ada yang justru menyebabkan websitemu mengalami error, dimana error yang paling umum adalah kamu tidak bisa login ke websitemu sendiri.

Yang Perlu Dilakukan Sebelum Mengubah session_save_path

Sebelum mengubah session_save_path, ada beberapa hal yang perlu kamu lakukan untuk memastikan bahwa session_save_path baru yang kamu gunakan nantinya benar-benar terbaca.

1. Buat Folder Baru Untuk Menyimpan Session

Yang pertama perlu kamu lakukan untuk mengubah session_save_path adalah dengan membuat folder baru.

Folder baru ini disarankan untuk tidak dibuat didalam folder public_html, atau folder yang dapat diakses secara langsung oleh publik.

Misalnya disini kita akan membuat folder session baru dengan nama /session/, maka kamu bisa membuat folder /session/ ini berada didalam satu struktur dengan public_html

Cara Mengubah session_save_path di cPanel - 1-1-1

2. Periksa Lokasi Session Path Saat ini

Kamu bisa memeriksa lokasi session path saat ini dengan menambahkan file untuk memeriksa versi php didalam websitemu.

Misalnya disini website terinstall di public_html, kemudian kamu bisa menambahkan file PHP dengan nama apapun, misalnya info.php didalam folder public_html

Cara Mengubah session_save_path di cPanel - 1-2-1

Setelah membuat file info.php, kamu bisa menambahkan kode berikut ini kedalam file tersebut

<?php
phpinfo();
?>

Sekarang kamu bisa memeriksa detail PHP dengan cara mengunjungi file info.php. Misalnya jika websitemu menggunakan domain partof.my.id, maka kamu bisa mengakses https://partof.my.id/info.php dan hasilnya kamu bisa memeriksa lokasi penyimpanan session dengan mencari session.save_path

Cara Mengubah session_save_path di cPanel - 1-2-2

Karena sekarang kamu sudah menemukan lokasi session_save_path saat ini, maka sekarang kamu bisa lanjut ke cara untuk mengubah lokasi session_save_path yang digunakan pada websitemu

Cara Mengubah session_save_path

Terdapat berbagai cara untuk mengubah session_save_path, dan tentu saja disini kita akan membahas beberapa cara tersebut.

1. Mengubah session_save_path Melalui PHP Selector

Apabila hosting yang kamu gunakan mendukung fitur CloudLinux PHP Selector (tidak harus cpanel), maka kamu bisa menggunakan cara ini untuk mengubah session_save_path.

  1. Login ke hostingmu, misalnya hosting cpanel, kemudian buka halaman Select PHP Version
    Cara Mengubah session_save_path di cPanel - 2-1-1
  2. Setelah berada dihalaman PHP Selector, buka tab Options
    Cara Mengubah session_save_path di cPanel - 2-1-2
  3. Scroll kebawah kemudian cari opsi session.save_path dan ubah isinya sesuai dengan folder yang kamu buat. Apabila folder yang dibuat, misalnya /session/, maka kamu bisa mengubah valuenya menjadi ../session/ (pastikan untuk menuliskan dua titik sebelum slash – ../)
    Cara Mengubah session_save_path di cPanel - 2-1-3-0
  4. Sekarang kamu bisa memeriksa kembali lokasi session.save_path dan seharusnya sudah berubah
    Cara Mengubah session_save_path di cPanel - 2-1-3
  5. Jika sudah berbubah, maka kamu bisa mencoba menggunakan session_start pada websitemu, maka session akan disimpan didalam folder /session/ yang berada diluar public_html
    Cara Mengubah session_save_path di cPanel - 2-1-4

2. Mengubah Lokasi session_save_path Menggunakan MultiPHP INI Editor

Jika hosting yang kamu gunakan tidak mendukung CloudLinux PHP Selector, maka kamu bisa menggunakan MultiPHP INI Editor untuk mengubah lokasi session_save_path.

  1. Login ke hostingmu dan buka halaman MultiPHP INI Editor (bukan MultiPHP Manager, jangan sampai salah pilih)
    Cara Mengubah session_save_path di cPanel - 2-2-1
  2. Pilih nama domain yang ingin kamu ubah lokasi penyimpanan sessionnya
    Cara Mengubah session_save_path di cPanel - 2-2-2
  3. Kemudian cari opsi session.save_path dan ubah konten didalamnya, misalnya menjadi ../sessionINI/
    Cara Mengubah session_save_path di cPanel - 2-2-3
  4. Simpan perubahan, dan selanjutnya kamu bisa memeriksa kembali halaman untuk memeriksa detail PHP dengan membuka namadomain/info.php (sesuai dengan nama domainmu dan nama file info yang kamu buat)
    Cara Mengubah session_save_path di cPanel - 2-2-4

Jika menggunakan cara ini, kamu bisa mengabaikan value dari “Master Value” karena nantinya yang akan terbaca tetap yang ada di “Local Value“.

3. Mengubah session_save_path Melalui .htaccess

Jika kamu lebih memilih menggunakan .htaccess, maka kamu bisa juga mengubah lokasi session_save_path dengan ketentuan

  • session_save_path belum ditentukan didalam file php.ini
  • session_save_path belum ditentukan didalam file user.ini

Jika kamu sudah memenuhi kedua ketentuan tersebut, maka kamu bisa mengedit file .htaccess pada websitemu, kemudian menambahkan baris ini

php_value session.save_path "../session/htaccess"

Ubah session/htaccess sesuai dengan folder yang akan kamu gunakan, namun jangan menghapus tanda titik dua sebelum slash (../)

Cara Mengubah session_save_path di cPanel - 2-3-1

Setelah .htaccess disimpan, maka lokasi session_save_path pada websitemu akan berubah

Cara Mengubah session_save_path di cPanel - 2-3-2

4. Mengubah session_save_path Melalui php.ini dan user.ini

Peringatan: Cara ini biasanya tidak berhasil. Disarankan untuk menggunakan metode nomor 1,2,3, dan 5!

Kamu juga bisa menggunakan file php.ini atau user.ini untuk menentukan dimana session akan disimpan.

Apabila ada file php.ini atau user.ini didalam satu folder, maka user.ini akan lebih diutamakan dan konfigurasi didalamnya yang akan digunakan. Jadi pastikan untuk memeriksa apakah saat ini didalam website kamu apakah ada dua file tersebut, atau hanya ada salah satu.

Apabila hanya ada satu, maka kamu tidak perlu menambahkan satunya lagi, dan langsung menambahkan atau mengubah baris berikut ini

session.save_path = "../session/PHP/INI/"

Ubah session/PHP/INI/ dengan lokasi folder yang sudah kamu buat, dan pastikan foldernya memang sudah benar-benar ada didalam hostingmu

Cara Mengubah session_save_path di cPanel - 2-4-1

Setelah diubah, maka selanjutnya kamu dapat memeriksa kembali halaman info PHP untuk memastikan lokasi penyimpanan session kamu sudah berubah atau belum.

5. Menentukan session_save_path Dari Script

Berbeda dengan cara-cara sebelumnya, kamu bisa juga menentukan lokasi session_save_path dari script yang kamu gunakan didalam website.

Jika biasanya kamu menggunakan session_start(); untuk memulai session, maka kamu bisa mendefinisikan lokasi penyimpanan session sebelum penyimpanan session dijalankan.

Gunakan kode berikut ini untuk menentukan lokasi penyimpanan session menggunakan script

<?php
$sessionSavePath = '../folder/session/yang/kamu/gunakan'; 
session_save_path($sessionSavePath);
session_start();

// kode php websitemu

Pastikan untuk mengubah folder/session/yang/kamu/gunakan sesuai dengan nama dan lokasi folder yang akan kamu gunakan untuk menyimpan session


Terima kasih telah berkunjung ke WPGan.com. Dapatkan saldo $100 di Vultr gratis dan deploy servermu sendiri melalui [Halaman Ini]
Share: