Memindahkan Drupal 10 dari Windows ke Ubuntu

Dalam proses pengembangan web sering sekali seseorang melakukan pengembangannya didalam komputer lokal yang sudah terinsatall berbagai macam paket yang dapat menunjang berbagai kebutuhan dalam pengembangan website. Beberapa bulan terkahir ini saya tertarik untuk membangun sebuah situs web baru menggunakan teknologi CMS Drupal dengan versi 10.

Berbeda dengan versi – versi sebelumnya, hal yang membuat saya jadi tertarik pada versi 10 ini karena adanya template default baru yaitu Olivera yang menurut saya tampilannya sederhana tetapi elegan serta waktu itu saya berpikir akan cocok digunakan untuk situs web yang nantinya hanya berisi tulisan – tulisan ataupun journaling serta portofolio 

DRUPAL 10 ERROR DIPINDAHKAN ke UBUNTU


Pada awalnya situs website yang saya kembangkan menggunakan Drupal 10 saya install pada sistem windows kemudian saya memindahkannya pada ubuntu. Tetapi ketika dipindahkan ada berbagai macam masalah yang saya hadapi, salah satunya error seperti “The website encountered an unexpected error. Pleas try again later” hanya itu pesanya, biasanya untuk mengetahui error secara pasti kita perlu memodifikasi file settings.php yang berada di sites/default 

  1. Buka terminal dan akses file settings.php menggunakan sudo nano 
  2. Selanjutnya pada file settings.php tambahkan baris seperti berikut dibagian paling bawah
    $config['system.logging']['error_level']='verbose';
     
  3. Baris diatas digunakan untuk menampilkan pesan kesalahan secara rinci sehingga error akan ditampilkan lebih jelas seperti berikut :

    menampilkan error secara rinci pada drupal 10

  4. Error diatas menampilkan pesan “ParseError : syntax error, unexpected identifier “Connection”, expecting variabel ini Composer\Autoload\includeFile() (line 54 of dan seterusnya. 
  5. Pada awalnya saya tidak mengerti maksudnya serta tidak bisa menangkap maksudnya tetapi kemungkinan ini terjadi karena versi php yang digunakan oleh server web saya (apache) yang menggunakan versi php 8.0 sedangankan system requirement drupal 10 kalau tidak salah itu menggunakan minimalnya php versi 8.1 6. Akhirnya saya mengupgrade versi php 8.0 ke 8.2 lalu mengubah versi php apache dari 8.0 ke 8.2
Setelah mengubah versi php apache ke versi yang sesuai untuk mengembangkan situs web menggunakan drupal 10, hasilnya situs dapat diakses dengan baik, tetapi masih ada masalah pada mod_rewrite server web, seperti tidak dapat membaca url alias dari beberpa postingan yang sudah ada, dan ketika di klik salah satu postingan selalu muncul error atau apache menampilkan pesan not found 

MENGAKTIFKAN MOD REWRITE 


mod_rewrite sederhananya adalah modul apache yang berfungsi untuk memanipulasi url yang dikirimkan oleh browser. Sehingga dalam konteks drupal 10 ini mod_rewrite perlu diaktifkan agar dapat membaca url alias yang sudah dibuat drupal 

1. Pengaturan `.htaccess`: 

- Pada lingkungan Apache, file `.htaccess` digunakan untuk mengonfigurasi pengaturan spesifik direktori. Pastikan bahwa file `.htaccess` ada dan dapat diakses di direktori Drupal Anda di server Ubuntu. 

- Pastikan bahwa modul `mod_rewrite` diaktifkan di server Apache Ubuntu Anda. Anda dapat mengaktifkannya dengan menjalankan perintah berikut di terminal
     sudo a2enmod rewrite
     sudo service apache2 restart
     
- Buka file konfigurasi Apache (`/etc/apache2/apache2.conf`) dan pastikan bahwa direktif `` untuk direktori Drupal Anda memungkinkan penggunaan `.htaccess`. Carilah direktif berikut dan pastikan bahwa `AllowOverride` diatur sebagai `All`:
     
<Directory /var/www/html>
         Options Indexes FollowSymLinks
         AllowOverride All
         Require all granted
     </Directory>
     
     
- Setelah mengubah file konfigurasi, restart server Apache untuk menerapkan perubahan:

     sudo service apache2 restart
    
2. Konfigurasi Virtual Host: 

Konfigurasi yang kedua ini sebenarnya optional, dalam kasus yang saya alami, karena saya tidak menggunakan Virtual Host tetapi jika menggunakan virtual host, maka lakukan langkah – langkah konfigurasi berikut

 - Jika Anda menggunakan konfigurasi virtual host di server Ubuntu, pastikan pengaturan virtual host telah dikonfigurasi dengan benar untuk mengarahkan ke direktori Drupal Anda.

 - Buka file konfigurasi virtual host yang sesuai di direktori `/etc/apache2/sites-available/`. Misalnya, jika menggunakan default virtual host, buka file `000-default.conf`. - Pastikan pengaturan `DocumentRoot` mengarah ke direktori Drupal Anda. Misalnya:

     DocumentRoot /var/www/html/your_web
     
- Pastikan Anda memiliki blok `` yang sesuai dengan `DocumentRoot` di konfigurasi virtual host. Contohnya:
    
     <Directory /var/www/html/your_web>
         Options Indexes FollowSymLinks
         AllowOverride All
         Require all granted
     </Directory>
    
    
- Setelah mengubah file konfigurasi virtual host, restart server Apache:

     sudo service apache2 restart
    
Dengan mengonfigurasi `.htaccess` dan virtual host dengan benar, Anda memastikan bahwa pengalihan URL dan pengaturan Drupal dapat berfungsi dengan baik di server Ubuntu. Pastikan Anda telah menyesuaikan direktori dan pengaturan sesuai dengan konfigurasi server Anda. 

DETAIL ERROR DRUPAL 10 PADA FILE UPDATE.PHP 


Setelah masalah mod_rewrite selesai, saya melakukan login, dan ketika berhasil login terjadi error kembali dengan pesan Error : Class “DOMDocument” not found in Drupal\Component\Utility\Html::load() (line 292 of core/lib/Drupal/Component/Utility/Html.php)

Akhirnya selanjutnya saya coba mengakses file update.php untuk memeriksa apakah ada kesalahan yang bisa ditampilka pada file update.php, dan ternyata hasilnya terlihat seperti berikut : 

error php extensions dan mbstring drupal 10



Disana terlihat ada beberapa kesalahan atau error yaitu dari PHP extensions yang terdiri dari dom, SingleXML dan xml lalu Unicode library yaitu PHP mbstring extension. 

Saya merasa error diatas sepertinya hanya masalah sebatas perlu menginstal semacam driver – driver ataupun extension tertentu, lalu akhirnya saya coba menginstal beberapa pake php tambahan lain dengan perintah berikut :
 
sudo apt install php8.2-cli php8.2-common php8.2-imap php8.2-redis php8.2-xml php8.2-zip php8.2-mbstring
 
Setelah menginstal pake diatas, tidak ada lagi error dan proses update pun bisa berjalan dengan baik. Proses memindahkan Drupal 10 dari lingkungan Windows ke Ubuntu memang diperlukan beberapa hal yang perlu diperhatikan terutama dari sisi konfigurasi baik dari web server ataupun dari versi php yang digunakan.

0 Response to "Memindahkan Drupal 10 dari Windows ke Ubuntu"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin