Textpattern adalah sistem manajemen konten PHP free dan open-source yang ringan, cepat, dan mudah digunakan sambil memberikan kemampuan penyesuaian yang layak melalui tema dan plugin.

Dalam panduan ini, kita akan menginstal Textpattern pada instance CentOS 8 .

Persyaratan

  • Sistem CentOS 8
  • Memiliki akses ke user root atau user dengan hak akses sudo.
  • Nama domain terdaftar yang menunjuk ke server Anda.

Jika masuk sebagai user sudo, beralih ke user root untuk pengaturan ini:

sudo su -

Set $VISUAL environment variable ke editor teks pilihan Anda. Misalnya, untuk menggunakan text editor nano:

echo "export VISUAL=nano" >> ~/.bash_profile
. ~/.bash_profile

Langkah 1: Install Software yang Diperlukan.

Perbarui cache paket di sistem Anda:

dnf update -y

Kemudian instal wget, tar, Apache, PHP, PHP extensions yang diperlukan, MariaDB dan utilitas lain untuk mengelola SELinux:

dnf install -y wget tar httpd mariadb-server php php-xml php-mysqli php-json php-mbstring php-zip php-zlib policycoreutils-python-utils

Pastikan layanan Apache dan MariaDB diaktifkan dan berjalan:

systemctl enable --now httpd.service mariadb.service

Karena repositori CentOS 8 tidak menyertakan certbot, kita akan menggunakan script certbot-auto, untuk menginstalnya. download script menggunakan wget dan install certbot-auto sebagai berikut:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto

Kemudian gunakan perintah berikut untuk menginstal certbot:

certbot-auto --install-only

Masukkan ‘y’ ketika diminta oleh dnf untuk menginstal dependensi.

Restart layanan Apache:

systemctl restart httpd.service

Langkah 2: Download Textpattern

Pada saat penulisan ini, versi terbaru dari Textpattern adalah versi 4.7.3. Untuk melihat versi terbaru kunjungi halaman release Textpattern di Github dan download ke server Anda dengan perintah wget sebagai berikut:

wget https://github.com/textpattern/textpattern/releases/download/4.7.3/textpattern-4.7.3.tar.gz

Kemudian extract arsip dan pindahkan konten ke lokasi di dalam direktori webroot dengan perintah mv:

tar -xzf textpattern*.tar.gz
rm -f textpattern*.tar.gz
mv textpattern* /var/www/html/textpattern

Agar Textpattern berfungsi dengan baik, diperlukan akses write ke direktori tertentu. Untuk memberikan akses tersebut, berikan kepemilikan pada pengguna sistem Apache dari seluruh direktori:

chown -R apache:apache /var/www/html/textpattern

Dan gunakan perintah berikut untuk memberi label pada struktur direktori dengan konteks SELinux :

semanage fcontext -a -t httpd_sys_content_t "/var/www/html/textpattern(/.*)?"
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/textpattern/themes(/.*)?"
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/textpattern/images(/.*)?"
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/textpattern/files(/.*)?"
restorecon -Rv /var/www/html

Langkah 3: Pengaturan Database

Mulai dengan menjalankan script mysql_secure_installation untuk melakukan peningkatan keamanan dasar:

mysql_secure_installation

Perintah ini akan mengubah kata sandi root, menghapus pengguna anonim, melarang login root dari jarak jauh dan menghapus database pengujian.

Jawab pertanyaan seperti yang ditunjukkan di bawah ini dan pastikan untuk memilih kata sandi yang aman untuk pengguna root:

Enter current password for root (enter for none): 
Set root password? [Y/n] y
New password: your_password
Re-enter new password: your_password
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Setelah MariaDB diamankan, masuk ke shell MariaDB dengan perintah berikut:

mysql -u root -p

Berikan kata sandi root Anda, lalu buat database dan user database untuk Textpattern dengan perintah berikut:

 CREATE DATABASE textpattern_db;
 CREATE USER textpattern_user IDENTIFIED BY 'g4nt!_d3n9aN_P@$$w0rD';
 GRANT ALL PRIVILEGES ON textpattern_db.* TO textpattern_user;
 \q

Sebagai contoh kita menggunakan textpattern_db sebagai nama database, dan textpattern_user sebagai nama database, silahkan ubah konfigurasi di atas sesuai keingingan Anda.

Langkah 4 : Konfigurasi Apache

Pertama, aktifkan layanan lalu lintas HTTP dan HTTPS melalui firewall host:

firewall-cmd --add-service http --add-service https --permanent
firewall-cmd --reload

Kemudian buat host virtual baru untuk situs Textpattern Anda:

$VISUAL /etc/httpd/conf.d/textpattern.conf

Dan masukkan konfigurasi berikut, ganti domain_anda dengan nama domain Anda.

<VirtualHost *:80>
DocumentRoot "/var/www/html/textpattern"
ServerName domain_anda
<Directory "/">
  AllowOverride All
</Directory>
</VirtualHost>

Simpan dan keluar, lalu reload apache untuk menerapkan konfigurasi baru:

systemctl reload httpd.service

Untuk mendapatkan sertifikat SSL untuk domain Anda dan mengkonfigurasi Apache untuk menggunakan HTTPS, jalankan perintah berikut:

certbot-auto --apache -d "nama_domain" -m "[email protected]" --redirect

Perintah ini akan menyelesaikan sejumlah tugas:

  • Mendpatkan sertifikat untuk domain Anda (disimpan di /etc/letsencrypt/nama_domain/).
  • Buat file konfigurasi Apache bernama textpattern-le-ssl.conf.
  • Edit textpattern.conf untuk mengarahkan ulang semua permintaan HTTP ke HTTPS.

Langkah 5: Konfigurasi Textpattern

Instalasi Textpattern Anda sekarang harus dapat diakses tetapi belum dikonfigurasi. Buka web browser di alamat https://domain_anda/textpattern/setup/ untuk memulai web installer. Setelah memilih bahasa, masukkan detail database:

  • MySQL user name: textpattern_user
  • MySQL password: masukkan password database sesuai di langkah 3.
  • MySQL server: localhost
  • MySQL database: textpattern_db
  • Table prefix: biarkan kosong

Installer akan memeriksa kredensial database yang dimasukkan sebelum membuat konfigurasi yang sesuai. Buat file yang diperlukan:

$VISUAL /var/www/html/textpattern/textpattern/config.php

Paste konfigurasi yang dihasilkan, simpan file dan keluar. Lanjutkan ke langkah berikutnya di web installer, tempat Anda akan diminta memasukkan informasi untuk akun administrator CMS dan konfigurasi situs. Setelah selesai, hapus direktori setup:

rm -rf /var/www/html/textpattern/textpattern/setup

Situs Textpattern Anda sekarang siap digunakan. Antarmuka administrasi dapat diakses di https://nama_domain/textpattern.