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:
Selanjutnya, masukkan kata sandi pengaturan dari file /var/www/html/neoscms/Data/SetupPassword.txt dan klik tombol Login. Anda akan melihat halaman berikut:
Pastikan semua paket yang diperlukan sudah diinstal. Kemudian, klik tombol Next. Anda akan melihat halaman berikut:\
Sekarang, berikan nama database, nama pengguna dan kata sandi database Anda. Kemudian, klik tombol Next. Anda akan melihat halaman berikut:
Sekarang, berikan detail akun admin Anda dan klik tombol Next. Anda akan melihat halaman berikut:
Sekarang, klik tombol Skip . Setelah instalasi selesai dengan sukses, Anda akan melihat halaman berikut:
Sekarang, klik tombol Go to the backend. Anda akan diarahkan ke halaman login Neos:
Sekarang, berikan username dan password admin. Kemudian, klik tombol Login . Anda akan melihat halaman berikut:
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.