Cara Memasang Anchor CMS pada Fedora 26 LAMP VPS
Menggunakan Sistem yang Berbeda? Anchor CMS adalah Content Engine System (CMS) Blog Engine yang super-sederhana dan sangat ringan, gratis, dan terbuka
dotCMS adalah sistem manajemen konten tingkat perusahaan sumber terbuka yang ditulis dalam Java. Ini berisi hampir setiap fitur yang diperlukan untuk membuat situs web untuk bisnis Anda. Ini menyediakan RESTful API untuk berintegrasi dengan layanan lain seperti CRM, aplikasi seluler, dan banyak lagi. Ini menggunakan Elasticsearch untuk pengindeksan konten real-time dan Redis untuk menerapkan cache multi-tier.
Artikel ini ditulis untuk dotCMS 4.2.2, namun instruksi yang diberikan juga dapat digunakan untuk versi yang lebih baru.
Untuk tutorial ini, kita akan menggunakan 192.168.0.1
sebagai alamat IP publik dan cms.example.com
sebagai nama domain yang menunjuk ke instance Vultr. Pastikan untuk mengganti semua kemunculan nama domain contoh dan alamat IP publik dengan yang sebenarnya.
Perbarui sistem basis Anda menggunakan panduan Cara Memperbarui CentOS 7 . Setelah sistem Anda diperbarui, lanjutkan untuk menginstal Java.
OpenJDK dapat dengan mudah diinstal karena paket tersedia dalam repositori YUM default.
sudo yum -y install java-1.8.0-openjdk-devel
Jika Java diinstal dengan benar, maka Anda akan dapat memverifikasi versinya.
java -version
Anda akan mendapatkan hasil yang serupa.
[user@vultr ~]$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
Sebelum kita dapat melangkah lebih jauh, kita perlu mengatur variabel JAVA_HOME
dan JRE_HOME
lingkungan. Temukan jalur absolut dari Java executable di sistem Anda.
readlink -f $(which java)
Anda akan melihat output yang serupa.
[user@vultr ~]$ readlink -f $(which java)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java
Sekarang, setel JAVA_HOME
dan JRE_HOME
variabel lingkungan sesuai dengan jalur direktori Java.
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64" >> ~/.bash_profile
echo "export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre" >> ~/.bash_profile
Jalankan bash_profile
file.
source ~/.bash_profile
Sekarang Anda dapat menjalankan echo $JAVA_HOME
perintah untuk memastikan bahwa variabel lingkungan diatur.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Secara default, dotCMS dikonfigurasi untuk menggunakan mesin database H2. Mesin basis data H2 adalah mesin basis data berbasis file datar. Tidak dianjurkan untuk digunakan dalam produksi. Dalam tutorial ini, kita akan menggunakan server PostgreSQL untuk menyimpan basis data dotCMS.
PostgreSQL adalah sistem basis data objek-relasional dan dikenal karena stabilitas dan kecepatannya. Tambahkan repositori rilis terbaru PostgreSQL ke dalam sistem.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Instal server database PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inisialisasi basis data.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Mulai server PostgreSQL dan aktifkan untuk memulai secara otomatis saat boot.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Ubah kata sandi untuk pengguna PostgreSQL default.
sudo passwd postgres
Masuk sebagai pengguna PostgreSQL default.
sudo su - postgres
Buat pengguna PostgreSQL baru untuk dotCMS.
createuser dotcms
PostgreSQL menyediakan psql
shell untuk menjalankan query pada server database. Beralih ke shell PostgreSQL.
psql
Tetapkan kata sandi untuk pengguna yang baru dibuat untuk basis data dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Ganti kata sandi pengguna basis data DBPassword
dengan kata sandi aman. Buat database baru untuk instalasi dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Keluar dari psql
shell.
\q
Beralih ke sudo
pengguna.
exit
Unduh arsip dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Anda selalu dapat menemukan tautan ke versi terbaru aplikasi pada halaman unduhan dotCMS .
Buat direktori baru untuk menyimpan file dotCMS dan ekstrak ke dalamnya.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Buka file konfigurasi basis data.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Temukan H2
bloknya.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Komentari seluruh H2
bagian dengan mengganti pembatas komentar -->
dari awal bagian hingga akhir bagian. Seharusnya terlihat seperti berikut.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Batalkan komentar pada bagian PostgreSQL dengan menghapus pembatas komentar -->
dari akhir bagian dan menempatkannya di atas pembungkus POSTGRESQL
. Juga, temukan username=
dan password=
ganti nilai yang ada dengan nama pengguna dan kata sandi pengguna basis data PostgreSQL Anda. Jika Anda telah menggunakan nama basis data selain dotcms
, maka Anda harus mengubah nama basis data di url=
. Setelah dikonfigurasi, blok PostgreSQL di file tersebut akan terlihat seperti berikut ini.
<!-- POSTGRESQL -->
<Resource name="jdbc/dotCMSPool" auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/dotcms"
username="dotcms" password="DBPassword" maxTotal="60" maxIdle="10" maxWaitMillis="60000"
removeAbandonedOnBorrow="true" removeAbandonedOnMaintenance="true" removeAbandonedTimeout="60" logAbandoned="true"
timeBetweenEvictionRunsMillis="30000" validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Berikan izin eksekusi untuk semua file yang dapat dieksekusi.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS sekarang diinstal di server Anda. Untuk segera menjalankan aplikasi, jalankan yang berikut ini.
cd /opt/dotcms
sudo bin/startup.sh
Anda akan melihat output berikut ketika server sudah mulai berhasil.
[user@vultr dotcms]$ sudo bin/startup.sh
Using DOTCMS_HOME = /opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT
Using DOTSERVER = dotcms
Using CATALINA_PID = /tmp/dotcms.pid
Using JAVA_OPTS = -Djava.awt.headless=true -Xverify:none -Dfile.encoding=UTF8 -server -XX:+DisableExplicitGC -XX:MaxMetaspaceSize=512m -Xmx1G -XX:+UseG1GC -javaagent:/opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/byte-buddy-agent-1.6.12.jar -Ddotserver=dotcms
Using CATALINA_BASE: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_HOME: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_TMPDIR: /opt/dotcms/dotserver/tomcat-8.0.18/temp
Using JRE_HOME: /
Using CLASSPATH: /opt/dotcms/dotserver/tomcat-8.0.18/bin/bootstrap.jar:/opt/dotcms/dotserver/tomcat-8.0.18/bin/tomcat-juli.jar
Using CATALINA_PID: /tmp/dotcms.pid
Tomcat started.
Perintah di atas akan memulai server web Tomcat untuk melayani aplikasi pada port 8080
. Untuk memeriksa apakah situs web dotCMS berfungsi, izinkan port yang diperlukan 8080
melalui sistem firewall.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Buka browser favorit Anda dan jelajahi http://192.168.0.1:8080
. Anda akan melihat bahwa aplikasi menjalankan situs web demo. Jika Anda tidak melihat situs web Anda, silakan tunggu karena startup pertama dari server dotCMS memerlukan beberapa menit saat menulis data ke dalam database PostgreSQL dan membuat cache. Anda juga dapat memeriksa log startup.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
Server dotCMS dapat dimulai secara langsung menggunakan skrip startup yang disediakan dalam paket installer. Demi kenyamanan, Anda harus menyiapkan file unit Systemd untuk server dotCMS. Ini akan memastikan bahwa server aplikasi secara otomatis dimulai pada restart dan kegagalan sistem.
Hentikan server dotCMS yang sedang berjalan menggunakan skrip shutdown.
sudo bin/shutdown.sh
Buat pengguna yang tidak memiliki hak istimewa untuk menjalankan server dotCMS, untuk alasan keamanan.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Berikan kepemilikan file kepada pengguna dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Buat layanan Systemd baru.
sudo nano /etc/systemd/system/dotcms.service
Mengisi file.
[Unit]
Description=dotCMS service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/dotcms/bin/startup.sh
ExecStop=/opt/dotcms/bin/shutdown.sh
User=dotcms
Group=dotcms
Restart=always
[Install]
WantedBy=multi-user.target
Mulai aplikasi dan aktifkan untuk memulai secara otomatis saat boot.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Pastikan layanan berjalan.
sudo systemctl status dotcms
Secara default, server dotCMS mendengarkan pada port 8080
. Kami akan mengkonfigurasi Nginx sebagai proxy terbalik sehingga aplikasi dapat diakses melalui standar HTTP
dan HTTPS
port. Kami juga akan mengkonfigurasi Nginx untuk menggunakan SSL yang dihasilkan dengan Let's Encrypt SSL gratis.
Instal server web Nginx.
sudo yum -y install nginx
Mulai server web dan aktifkan untuk memulai secara otomatis saat boot.
sudo systemctl start nginx
sudo systemctl enable nginx
Instal Certbot, yang merupakan aplikasi klien untuk Let's Encrypt CA.
sudo yum -y install certbot
Sebelum Anda dapat meminta sertifikat, Anda harus mengizinkan port 80
dan 443
atau standar HTTP
dan HTTPS
layanan melalui firewall. Juga, hapus port 8080
dari daftar pengecualian firewall karena tidak lagi diperlukan.
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Catatan: Untuk mendapatkan sertifikat dari Let's Encrypt CA, domain tempat sertifikat akan dibuat harus diarahkan ke server. Jika tidak, buat perubahan yang diperlukan pada catatan DNS domain dan tunggu hingga DNS menyebar sebelum membuat permintaan sertifikat lagi. Certbot memeriksa otoritas domain sebelum memberikan sertifikat.
Buat sertifikat SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
Sertifikat yang dihasilkan cenderung disimpan di /etc/letsencrypt/live/cms.example.com/
. Mari Enkripsi sertifikat kedaluwarsa dalam 90 hari, oleh karena itu disarankan untuk mengatur perpanjangan otomatis sertifikat menggunakan pekerjaan Cron.
Buka file tugas cron.
sudo crontab -e
Tambahkan baris berikut di akhir file.
30 5 * * * /usr/bin/certbot renew --quiet
Pekerjaan cron di atas akan berjalan setiap hari pada pukul 5:30 pagi. Jika sertifikat akan kedaluwarsa, maka secara otomatis akan diperpanjang.
Buat file blok server baru untuk situs dotCMS.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Mengisi file.
server {
listen 80;
server_name cms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name cms.example.com;
ssl_certificate /etc/letsencrypt/live/cms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/dotcms.access.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://cms.example.com;
}
}
Mulai ulang server web Nginx agar perubahan dapat terjadi.
sudo systemctl restart nginx
Aplikasi dotCMS sekarang diinstal pada server Anda untuk penggunaan produksi. Akses dasbor administratif pada alamat berikut.
https://cms.example.com/dotAdmin
Masuk menggunakan akun administrator awal, [email protected]
dan admin
. Ganti kata sandi default segera setelah login.
Selamat, sistem manajemen konten dotCMS sekarang diinstal di server Anda. Anda dapat memodifikasi situs demo atau mulai membangun situs Anda dari awal.
Menggunakan Sistem yang Berbeda? Anchor CMS adalah Content Engine System (CMS) Blog Engine yang super-sederhana dan sangat ringan, gratis, dan terbuka
Menggunakan Sistem yang Berbeda? Directus 6.4 CMS adalah Headless Content Management System (CMS) yang kuat dan fleksibel, gratis dan open source yang menyediakan pengembang
Menggunakan Sistem yang Berbeda? Thelia adalah alat sumber terbuka untuk membuat situs web e-bisnis dan mengelola konten online yang ditulis dalam PHP. Kode sumber thelia i
Menggunakan Sistem yang Berbeda? Couch CMS adalah Content Management System (CMS) sederhana dan fleksibel, gratis dan open source yang memungkinkan desainer web untuk mendesain
Menggunakan Sistem yang Berbeda? Automad adalah open source berbasis sistem manajemen konten (CMS) dan mesin template yang ditulis dalam PHP. Kode sumber Automad i
Menggunakan Sistem yang Berbeda? 1.0 Oktober CMS adalah Content Management System (CMS) yang sederhana dan dapat diandalkan, gratis dan open source yang dibangun di atas kerangka Laravel
Menggunakan Sistem yang Berbeda? BlogoText CMS adalah Content Management System (CMS) yang sederhana dan ringan, gratis, dan engine blog minimalis
Bolt adalah CMS open source yang ditulis dalam PHP. Kode sumber baut di-host di GitHub. Panduan ini akan menunjukkan kepada Anda cara menginstal Bolt CMS pada CentOS 7 Vult yang baru
Menggunakan Sistem yang Berbeda? Backdrop CMS 1.8.0 adalah Content Management System (CMS) yang sederhana dan fleksibel, ramah seluler, gratis dan terbuka yang memungkinkan kami
Menggunakan Sistem yang Berbeda? Pagekit 1.0 CMS adalah Content Management System (CMS) yang indah, modular, dapat diperpanjang dan ringan, dengan
Menggunakan Sistem yang Berbeda? WonderCMS adalah open source, CMS file flat dan kecil yang ditulis dalam PHP. Kode sumber WonderCMS di-host di Github. Panduan ini wil
Menggunakan Sistem yang Berbeda? Neos adalah Platform Aplikasi Konten dengan CMS dan kerangka kerja aplikasi pada intinya. Panduan ini akan menunjukkan cara menginstal
Menggunakan Sistem yang Berbeda? Pagekit 1.0 CMS adalah Content Management System (CMS) yang indah, modular, dapat diperpanjang dan ringan, dengan
Menggunakan Sistem yang Berbeda? PyroCMS adalah CMS open source yang ditulis dalam PHP. Kode sumber PyroCMS dihosting di GitHub. Dalam panduan ini berjalan dengan baik melalui keseluruhan
Menggunakan Sistem yang Berbeda? Redaxscript 3.2 CMS adalah Content Management System (CMS) yang modern dan sangat ringan, gratis dan open source dengan roket
Menggunakan Sistem yang Berbeda? Pendahuluan Tiki Wiki CMS Groupware, juga dikenal sebagai Tiki, adalah sistem manajemen konten wiki sumber terbuka dan gratis. Fitur Tikis
Menggunakan Sistem yang Berbeda? Anchor CMS adalah Content Engine System (CMS) Blog Engine yang super-sederhana dan sangat ringan, gratis, dan terbuka
Menggunakan Sistem yang Berbeda? Subrion 4.1 CMS adalah Content Management System (CMS) open source yang kuat dan fleksibel yang menghadirkan konten yang intuitif dan jelas
Menggunakan Sistem yang Berbeda? Pendahuluan BoltWire adalah sistem manajemen konten gratis dan ringan yang ditulis dalam PHP. Dibandingkan dengan sebagian besar Pengelola Konten lainnya
Menggunakan Sistem yang Berbeda? Anchor CMS adalah Content Engine System (CMS) Blog Engine yang super-sederhana dan sangat ringan, gratis, dan terbuka
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.
CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?
Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.
Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.
Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut