Neos adalah sistem manajemen konten modern yang free dan open source yang dapat digunakan untuk membangun dan mengelola situs web dengan mudah. Neos didasarkan pada framework PHP yang memungkinkan Anda untuk membangun sebuah situs yang dapat disesuaikan sesuai kehendak pengguna.

Neos CMS tidak hanya CMS, tetapi platform aplikasi konten dan menyesuaikan sesuai kebutuhan perusahaan Anda. Neos memungkinkan Anda untuk mengedit konten sesuai kehendak Anda sendiri di browser.

Dalam tutorial ini, kami akan menjelaskan cara menginstal Neos di server Ubuntu 18.04.

Persyaratan

  • Server yang menjalankan Ubuntu 18.04.
  • Masuk sebagai root atau user dengan hak sudo.
  • LEMP (Linux, Nginx, Mariadb, PHP)

Sebelum memulai

Sebelum memulai, Anda perlu memperbarui sistem dengan versi terbaru dengan menjalankan perintah berikut:

sudo apt-get update &&  apt-get upgrade -y

Setelah server diperbarui, restart server untuk menerapkan perubahan.

Instal LAMP Server

Pertama, Anda harus menginstal web server Apache, server database MariaDB, PHP, dan paket lain yang diperlukan ke sistem. Anda dapat menginstal semuanya dengan menjalankan perintah berikut:

sudo apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mysql php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-gd php7.2-bcmath php7.2-xml php7.2-cli php7.2-zip curl unzip git -y

Setelah semua paket diinstal, jalankan layanan Apache dan MariaDB dan aktifkan untuk memulai saat boot dengan perintah berikut:

systemctl start apache2
 systemctl start mariadb
 systemctl enable apache2
 systemctl enable mariadb

Selanjutnya, Anda perlu mengubah file php.ini seperti yang ditunjukkan di bawah ini:

nano /etc/php/7.2/apache2/php.ini

Ubah beberapa pengaturan berikut:

short_open_tag = On
memory_limit = 256M
upload_max_filesize = 150M
max_execution_time = 360
date.timezone = Asia/Jakarta

untuk zona waktu, Anda dapat melihat artikel kami tentang cara mengatur zona waktu di Linux.

Simpan dan tutup file, ketika Anda selesai.

Konfigurasikan Database MariaDB

Secara default, MariaDB tidak diamankan, jadi Anda harus mengamankannya terlebih dahulu. Anda dapat mengamankannya dengan menjalankan perintah berikut:

mysql_secure_installation

Jawab semua pertanyaan seperti yang ditunjukkan di bawah ini:

    Enter current password for root (enter for none):
    Set root password? [Y/n]: N
    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

Kemudian, buat database dan user mysql untuk Neos, sebagai contoh kita akan menggunakan nama database neosdb dan nama user neos :

MariaDB [(none)]> CREATE DATABASE neosdb;
 MariaDB [(none)]> CREATE USER 'neos'@'localhost' IDENTIFIED BY 'G4nt!_Den94n_Pa$$w0rD';

ganti kata ‘G4nt!_Den94n_Pa$$w0rD‘ dengan kata sandi aman pilihan Anda di perintah di atas dan perintah berikutnya, gunakan kata sandi yang sama dua kali. Selanjutnya, berikan semua hak istimewa ke database Neos dengan perintah berikut:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON neosdb.* TO 'neos'@'localhost' IDENTIFIED BY 'G4nt!_Den94n_Pa$$w0rD' WITH GRANT OPTION;

Selanjutnya, ubah set karakter database Anda ke utf8 dengan perintah berikut:

MariaDB [(none)]> ALTER DATABASE neosdb charset=utf8;

Selanjutnya, flush privilege dan keluar dari shell MariaDB dengan perintah berikut:

MariaDB [(none)]> FLUSH PRIVILEGES;
 MariaDB [(none)]> EXIT;

Selanjutnya kita akan membuat beberapa perubahan pada file konfigurasi default MariaDB. Buka file dengan test editor nano dengan perintah berikut:

sudo nano /etc/myql/mariadb.conf.d/50-server.cnf

Tambahkan baris berikut:

innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_file_per_table = 1
innodb_default_row_format = dynamic

Simpan dan tutup file. Kemudian, restart MariaDB service dengan perintah berikut:

systemctl restart mariadb

Anda dapat memeriksa status server MariaDB dengan perintah berikut:

systemctl status mariadb

Anda akan melihat output berikut:

? mariadb.service - MariaDB 10.1.38 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-04-16 07:31:40 UTC; 7h ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
  Process: 1239 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 1235 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
  Process: 937 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemc
  Process: 927 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 844 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
 Main PID: 1092 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 46 (limit: 1113)
   CGroup: /system.slice/mariadb.service
           ??1092 /usr/sbin/mysqld

Apr 16 07:31:19 ubuntu1804 systemd[1]: Starting MariaDB 10.1.38 database server...
Apr 16 07:31:32 ubuntu1804 mysqld[1092]: 2019-04-16  7:31:32 140002947079296 [Note] /usr/sbin/mysqld (mysqld 10.1.38-MariaDB-0ubuntu0.18.04.1) 
Apr 16 07:31:40 ubuntu1804 systemd[1]: Started MariaDB 10.1.38 database server.
Apr 16 07:31:40 ubuntu1804 /etc/mysql/debian-start[1240]: Upgrading MySQL tables if necessary.
Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored
Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: Looking for 'mysql' as: /usr/bin/mysql
Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck
Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1244]: This installation of MySQL is already upgraded to 10.1.38-MariaDB, use --force if you
Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1294]: Checking for insecure root accounts.
Apr 16 07:31:41 ubuntu1804 /etc/mysql/debian-start[1304]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

Setelah selesai, Anda bisa melangkah ke tahap selanjutnya.

Install Neos CMS

Sebelum melakukan instalasi Neos, Anda pelu install Composer pada sistem, Anda dapat menginstallnya dengan perintah curl berikut :

curl -sS https://getcomposer.org/installer | php
 sudo mv composer.phar /usr/local/bin/composer

selanjutnya masuk ke direktori Apache web root dan install Neos CMS dengan perintah berikut :

cd /var/www/html/
composer create-project --no-dev neos/neos-base-distribution neoscms

Selanjutnya ubah izin dan kepemilikan dari neoscms dengan perintah berikut :

chown -R www-data:www-data /var/www/html/neoscms/
 chmod -R 755 /var/www/html/neoscms/

Setelah selesai, Anda dapat melangkah ke tahap selanjutnya.

Konfigurasikan Apache untuk NeosCMS

Selanjutnya, Anda perlu membuat file virtual host Apache untuk Neos. Anda dapat melakukannya dengan perintah berikut:

sudo nano /etc/apache2/sites-available/neoscms.conf

Tambahkan baris berikut:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/neoscms/Web
     ServerName example.com
     <Directory /var/www/html/neoscms/Web/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/neos_error.log
     CustomLog ${APACHE_LOG_DIR}/neos_access.log combined
    
     <Directory /var/www/html/neoscms/Web/>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*) index.php [PT,L]
    </Directory>
</VirtualHost>

Simpan dan tutup file, ketika Anda selesai. Kemudian, aktifkan neos virtual host dan modul rewrite Apache dengan perintah berikut:

a2ensite neoscms.conf
 a2enmod rewrite

Terakhir, restart layanan Apache untuk menerapkan semua perubahan dengan perintah berikut:

systemctl restart apache2

Anda dapat memeriksa status Apache dengan perintah berikut:

systemctl status apache2

Anda akan melihat output berikut:

? apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           ??apache2-systemd.conf
   Active: active (running) since Tue 2019-04-16 14:57:32 UTC; 3s ago
  Process: 2358 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
 Main PID: 2372 (apache2)
    Tasks: 6 (limit: 1113)
   CGroup: /system.slice/apache2.service
           ??2372 /usr/sbin/apache2 -k start
           ??2375 /usr/sbin/apache2 -k start
           ??2377 /usr/sbin/apache2 -k start
           ??2378 /usr/sbin/apache2 -k start
           ??2381 /usr/sbin/apache2 -k start
           ??2382 /usr/sbin/apache2 -k start

Apr 16 14:57:31 ubuntu1804 systemd[1]: Starting The Apache HTTP Server...
Apr 16 14:57:32 ubuntu1804 apachectl[2358]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 192.
Apr 16 14:57:32 ubuntu1804 systemd[1]: Started The Apache HTTP Server.

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Akses Neos Web Interface

Sekarang, buka browser web dan ketik URL http://domain_atau_server_IP/setup. Anda akan diarahkan ke halaman berikut:

Halaman Login NEOS CMS

Selanjutnya, masukkan kata sandi pengaturan dari file /var/www/html/neoscms/Data/SetupPassword.txt dan klik tombol Login. Anda akan melihat halaman berikut:

NEOS Requirement Checks

Pastikan semua paket yang diperlukan sudah diinstal. Kemudian, klik tombol Next. Anda akan melihat halaman berikut:\

konfigurasi Database NEOS CMS

Sekarang, berikan nama database, nama pengguna dan kata sandi database Anda. Kemudian, klik tombol Next. Anda akan melihat halaman berikut:

Nama Administrator Neos CMS

Sekarang, berikan detail akun admin Anda dan klik tombol Next. Anda akan melihat halaman berikut:

Neos Buat Situs Baru

Sekarang, klik tombol Skip . Setelah instalasi selesai dengan sukses, Anda akan melihat halaman berikut:

NEOS CMS Setup Selesai

Sekarang, klik tombol Go to the backend. Anda akan diarahkan ke halaman login Neos:

Neos CMS Login

Sekarang, berikan username dan password admin. Kemudian, klik tombol Login . Anda akan melihat halaman berikut:

Welcome to Neos

Kesimpulan

Selamat! Anda telah berhasil menginstal Neos CMS di server Ubuntu 18.04. Sekarang Anda dapat dengan mudah meng-host situs web atau blog Anda menggunakan Neos.