Installazione di Fuel CMS su Ubuntu 16.04 LTS
Usi un sistema diverso? Fuel CMS è un sistema di gestione dei contenuti basato su CodeIgniter. Il suo codice sorgente è ospitato su GitHub. Questa guida ti mostrerà come t
dotCMS è un sistema di gestione dei contenuti di livello enterprise open source scritto in Java. Contiene quasi tutte le funzionalità necessarie per creare un sito Web per la tua azienda. Fornisce un'API RESTful per l'integrazione con altri servizi come CRM, applicazioni mobili e altro. Utilizza Elasticsearch per l'indicizzazione in tempo reale dei contenuti e Redis per l'implementazione della cache multilivello.
Questo articolo è stato scritto per dotCMS 4.2.2, tuttavia le istruzioni fornite potrebbero funzionare anche per le versioni più recenti.
Per questo tutorial, utilizzeremo 192.168.0.1
come indirizzo IP pubblico e cms.example.com
come nome di dominio puntato verso l'istanza Vultr. Assicurati di sostituire tutte le occorrenze del nome di dominio e dell'indirizzo IP pubblico di esempio con quello effettivo.
Aggiorna il tuo sistema di base usando la guida Come aggiornare CentOS 7 . Dopo aver aggiornato il sistema, procedere con l'installazione di Java.
OpenJDK può essere facilmente installato poiché il pacchetto è disponibile nel repository YUM predefinito.
sudo yum -y install java-1.8.0-openjdk-devel
Se Java è installato correttamente, sarai in grado di verificarne la versione.
java -version
Otterrai un risultato simile.
[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)
Prima di poter procedere oltre, dovremo impostare le variabili di ambiente JAVA_HOME
e JRE_HOME
. Trova il percorso assoluto dell'eseguibile Java sul tuo sistema.
readlink -f $(which java)
Vedrai un risultato simile.
[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
Ora, imposta le variabili di ambiente JAVA_HOME
e in JRE_HOME
base al percorso della directory 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
Esegui il bash_profile
file.
source ~/.bash_profile
Ora puoi eseguire il echo $JAVA_HOME
comando per assicurarti che la variabile di ambiente sia impostata.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Per impostazione predefinita, dotCMS è configurato per utilizzare il motore di database H2. Il motore di database H2 è un motore di database basato su file flat. Non è raccomandato l'uso in produzione. In questo tutorial, useremo il server PostgreSQL per archiviare il database dotCMS.
PostgreSQL è un sistema di database relazionale ad oggetti e noto per la sua stabilità e velocità. Aggiungi il repository dell'ultima versione di PostgreSQL nel sistema.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installa il server di database PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inizializza il database.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Avviare il server PostgreSQL e abilitarlo ad avviarsi automaticamente all'avvio.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Cambia la password per l'utente PostgreSQL predefinito.
sudo passwd postgres
Accedi come l'utente PostgreSQL predefinito.
sudo su - postgres
Crea un nuovo utente PostgreSQL per dotCMS.
createuser dotcms
PostgreSQL fornisce la psql
shell per eseguire query sul server di database. Passa alla shell PostgreSQL.
psql
Impostare una password per l'utente appena creato per il database dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Sostituire la password dell'utente del database DBPassword
con una password sicura. Creare un nuovo database per l'installazione dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Esci dalla psql
shell.
\q
Passa sudo
all'utente.
exit
Scarica l'archivio dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Puoi sempre trovare il link all'ultima versione dell'applicazione nella pagina di download di dotCMS .
Creare una nuova directory per archiviare i file dotCMS ed estrarli in essa.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Apri il file di configurazione del database.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Trova il H2
blocco.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Commenta l'intera H2
sezione sostituendo il delimitatore di commento -->
dall'inizio della sezione alla fine della sezione. Dovrebbe apparire come segue.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Decommenta la sezione PostgreSQL rimuovendo il delimitatore dei commenti -->
dalla fine della sezione e posizionandolo nella parte superiore POSTGRESQL
. Inoltre, trova username=
e password=
sostituisci i valori esistenti con il nome utente e la password dell'utente del database PostgreSQL. Se hai utilizzato un nome di database diverso da dotcms
, dovrai cambiare il nome del database in url=
. Una volta configurato, il blocco PostgreSQL nel file dovrebbe essere simile al seguente.
<!-- 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" />
Fornire l'autorizzazione all'esecuzione per tutti i file eseguibili.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS è ora installato sul tuo server. Per eseguire immediatamente l'applicazione, eseguire quanto segue.
cd /opt/dotcms
sudo bin/startup.sh
Verrà visualizzato il seguente output quando il server è stato avviato correttamente.
[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.
Il comando precedente avvierà il server Web Tomcat per servire l'applicazione sulla porta 8080
. Per verificare se il sito Web dotCMS funziona, consentire la porta richiesta 8080
attraverso il firewall di sistema.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Apri il tuo browser preferito e cerca http://192.168.0.1:8080
. Dovresti vedere che l'applicazione sta eseguendo un sito Web demo. Se non vedi il tuo sito web, attendi che il primo avvio del server dotCMS impieghi un paio di minuti mentre scrive i dati nel database PostgreSQL e costruisce la cache. Puoi anche controllare i log di avvio.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
Il server dotCMS può essere avviato direttamente utilizzando lo script di avvio fornito nel pacchetto di installazione. Per comodità, è necessario impostare un file di unità Systemd per il server dotCMS. Ciò assicurerà che il server delle applicazioni venga avviato automaticamente al riavvio del sistema e agli errori.
Arrestare il server dotCMS in esecuzione utilizzando lo script di arresto.
sudo bin/shutdown.sh
Creare un utente senza privilegi per eseguire il server dotCMS, per motivi di sicurezza.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Fornire la proprietà dei file all'utente dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Crea un nuovo servizio Systemd.
sudo nano /etc/systemd/system/dotcms.service
Popolare il 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
Avviare l'applicazione e abilitarne l'avvio automatico all'avvio.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Assicurarsi che il servizio sia in esecuzione.
sudo systemctl status dotcms
Per impostazione predefinita, il server dotCMS è in ascolto sulla porta 8080
. Configureremo Nginx come proxy inverso in modo che sia possibile accedere all'applicazione tramite standard HTTP
e HTTPS
porte. Configureremo anche Nginx per utilizzare SSL generato con Let's Encrypt SSL gratuito.
Installa il web server Nginx.
sudo yum -y install nginx
Avviare il server Web e abilitare l'avvio automatico all'avvio.
sudo systemctl start nginx
sudo systemctl enable nginx
Installa Certbot, che è un'applicazione client per Let's Encrypt CA.
sudo yum -y install certbot
Prima di poter richiedere i certificati, è necessario consentire le porte 80
e / 443
o standard HTTP
e HTTPS
servizi attraverso il firewall. Inoltre, rimuovere la porta 8080
dall'elenco delle eccezioni del firewall in quanto non è più necessario.
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
Nota: per ottenere certificati da Let's Encrypt CA, il dominio per il quale devono essere generati i certificati deve essere puntato verso il server. In caso contrario, apportare le modifiche necessarie ai record DNS del dominio e attendere la propagazione del DNS prima di effettuare nuovamente la richiesta di certificato. Certbot controlla l'autorità di dominio prima di fornire i certificati.
Genera i certificati SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
È probabile che i certificati generati siano archiviati in /etc/letsencrypt/live/cms.example.com/
. Let's Encrypt certificati scadranno tra 90 giorni, quindi si consiglia di impostare il rinnovo automatico dei certificati utilizzando i processi Cron.
Apri il file di lavoro cron.
sudo crontab -e
Aggiungi la seguente riga alla fine del file.
30 5 * * * /usr/bin/certbot renew --quiet
Il precedente cron job verrà eseguito ogni giorno alle 5:30. Se il certificato è in scadenza, verrà automaticamente rinnovato.
Creare un nuovo file di blocco del server per il sito dotCMS.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Popolare il 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;
}
}
Riavviare il server Web Nginx in modo che le modifiche abbiano effetto.
sudo systemctl restart nginx
L'applicazione dotCMS è ora installata sul server per l'uso in produzione. Accedi alla dashboard amministrativa al seguente indirizzo.
https://cms.example.com/dotAdmin
Accedere utilizzando l'account amministratore iniziale [email protected]
e admin
. Modifica la password predefinita immediatamente dopo l'accesso.
Congratulazioni, il sistema di gestione dei contenuti di dotCMS è ora installato sul tuo server. È possibile modificare il sito demo o iniziare a creare il sito da zero.
Usi un sistema diverso? Fuel CMS è un sistema di gestione dei contenuti basato su CodeIgniter. Il suo codice sorgente è ospitato su GitHub. Questa guida ti mostrerà come t
Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare
Usi un sistema diverso? Subrion 4.1 CMS è un sistema di gestione dei contenuti (CMS) open source potente e flessibile che offre un contenuto intuitivo e chiaro
Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare
Usi un sistema diverso? WonderCMS è un file CMS open source, veloce e di piccole dimensioni scritto in PHP. Il codice sorgente di WonderCMS è ospitato su Github. Questa guida sarà
Usi un sistema diverso? Neos è una piattaforma di applicazioni di contenuto con un CMS e un framework applicativo al suo interno. Questa guida ti mostrerà come installare
Usi un sistema diverso? Directus 6.4 CMS è un sistema di gestione dei contenuti senza testa (CMS) potente e flessibile, gratuito e open source che fornisce agli sviluppatori
Usi un sistema diverso? BigTree CMS 4.2 è un sistema di gestione dei contenuti (CMS) rapido e leggero, gratuito e open source di livello aziendale con
Usi un sistema diverso? Craft CMS è un CMS open source scritto in PHP. Il codice sorgente di Craft CMS è ospitato su GitHub. Questa guida ti mostrerà come installare
Usi un sistema diverso? ImpressPages CMS 5.0 è un sistema di gestione dei contenuti (CMS) semplice ed efficace, gratuito e open source, intuitivo, basato su MVC
Bolt è un CMS open source scritto in PHP. Il codice sorgente di Bolts è ospitato su GitHub. Questa guida ti mostrerà come installare Bolt CMS su un nuovo CentOS 7 Vult
Usi un sistema diverso? Automad è un sistema di gestione dei contenuti (CMS) basato su file open source e un motore di template scritto in PHP. Il codice sorgente di Automad i
Usi un sistema diverso? Directus 6.4 CMS è un sistema di gestione dei contenuti senza testa (CMS) potente e flessibile, gratuito e open source che fornisce agli sviluppatori
Usi un sistema diverso? ProcessWire CMS 3.0 è un sistema di gestione dei contenuti (CMS) semplice, flessibile e potente, gratuito e open source. ProcessWire CMS 3.
Usi un sistema diverso? TYPO3 è un sistema di gestione dei contenuti aziendali gratuito e open source. È scritto in PHP e utilizza MySQL per archiviare i suoi dati. TYPO
Usi un sistema diverso? Backdrop CMS 1.8.0 è un sistema di gestione dei contenuti (CMS) semplice e flessibile, ottimizzato per dispositivi mobili, gratuito e open source che ci consente
Usi un sistema diverso? Anchor CMS è un motore di blog Content Management System (CMS) super semplice ed estremamente leggero, gratuito e open source
Usi un sistema diverso? Anchor è un blog CMS open source leggero scritto in PHP. Il codice sorgente delle ancore è ospitato su GitHub. Questa guida ti mostrerà ho
Usi un sistema diverso? Microweber è un drag and drop open source CMS e negozio online. Il codice sorgente di Microweber è ospitato su GitHub. Questa guida ti mostrerà
Usi un sistema diverso? Thelia è uno strumento open source per la creazione di siti Web di e-business e la gestione di contenuti online, scritto in PHP. Codice sorgente Thelia i
Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane
ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.
Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+
Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.
Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più
13 strumenti commerciali per l'estrazione dei dati dai Big Data
Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true
Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.
Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1
L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.