Rabu, 27 September 2017

Server Moodle dengan IP Address Dinamis

Apabila anda sebagai administrator web berbasis moodle, dimana moodle tersebut anda install pada sebuah server dengan ip address static misalnya 192.168.0.200, sudah beroperasi dan lancar tanpa kendala apapun. Namun suatu ketika saat topologi jaringan anda berubah atau anda menata ulang jaringan anda dan disana anda harus mengganti ip address server moodle entah dengan alasan tertentu. Lalu anda langsung mengganti ip address yang biasa beroperasi dengan ip address yang baru, maka anda akan menemukan error saat anda mencoba akses ke halam moodle, begini tampilan error nya :
troubleshoting moodle
tampilan error saat moodle gagal koneksi ke database

demikian error yang akan anda alami, dan itu akan terjadi berungkali setiap anda mengganti ip address server moodle. Kemudian kami ada ide bagaimana caranya agar moodle tidak error saat kita mengganti ip address server moodle tanpa ubah config / koneksi ke database. Jawabnya adalah membuat konfigurasi $CFG->wwwroot dengan variable yang dinamis, menggunakan PHP Predefined Variables $_SERVER sebagai pengganti ip address, sehingga server moodle anda menjadi dinamis, moodle akan otomatis menyesuaikan dengan ip address yang baru tanda mengubah config.php lagi. 

ini dia script config.php moodle yang dinamis, perhatikan baris yang kami beri warna merah. 
###############

<?php  // Moodle configuration file

unset($CFG);
global $CFG;
$CFG = new stdClass();

$CFG->dbtype    = 'mysqli';
$CFG->dblibrary = 'native';
$CFG->dbhost    = 'localhost';
$CFG->dbname    = 'nama_database';
$CFG->dbuser    = 'username_database';
$CFG->dbpass    = 'password';
$CFG->prefix    = 'qwe_';
$CFG->dboptions = array (
  'dbpersist' => 0,
  'dbport' => '',
  'dbsocket' => '',
);

$CFG->wwwroot   = 'http://'.$_SERVER["HTTP_HOST"].'/moodle';
$CFG->dataroot  = '/var/htmldata';
$CFG->admin     = 'admin';

$CFG->directorypermissions = 0777;

require_once(dirname(__FILE__) . '/lib/setup.php');

// There is no php closing tag in this file,
// it is intentional because it prevents trailing whitespace problems!

###############

Jika anda menggunakan sistem operasi linux, script diatas letaknya di /var/www/html/moodle/config.php (sesuaikan dengan directory moodle anda)
dan jika menggunakan os windows letaknya di c:\xampp\htdocs\moodle\config.php(sesuaikan dengan directory moodle anda)


OK... segitu aja, semoga bermanfaat.

Tidak ada komentar:

Posting Komentar