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 open source di livello aziendale scritto in Java. Contiene quasi tutte le funzionalità necessarie per creare un sito Web per la tua azienda. Fornisce un'API RESTful da integrare con altri servizi come CRM, applicazioni mobili e altro. Utilizza Elasticsearch per l'indicizzazione in tempo reale dei contenuti e Redis per l'implementazione di una cache multilivello.
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 Ubuntu 16.04 . Dopo aver aggiornato il sistema, procedere con l'installazione di Java.
Aggiungi il repository Ubuntu per Oracle Java 8.
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
Installa Java.
sudo apt -y install oracle-java8-installer
Sarai in grado di verificare la versione di Java.
java -version
Vedrai il seguente output.
user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Impostare il percorso predefinito per Java installando il seguente pacchetto.
sudo apt -y install oracle-java8-set-default
È possibile verificare che JAVA_HOME
sia impostato.
echo $JAVA_HOME
Dovresti vedere quanto segue.
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Se non vedi alcun output, dovrai disconnetterti dalla shell corrente e riconnetterti.
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, noto per la sua stabilità e velocità. Il repository Ubuntu predefinito contiene una vecchia versione di PostgreSQL, quindi aggiungi il repository PostgreSQL.
echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update
Installa il server di database PostgreSQL.
sudo apt -y install postgresql
Avviare il server PostgreSQL e abilitarlo ad avviarsi automaticamente all'avvio.
sudo systemctl start postgresql
sudo systemctl enable postgresql
Cambia la password per l'utente PostgreSQL predefinito.
sudo passwd postgres
Accedi come utente PostgreSQL.
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.3.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 spostando 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 sarà 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:/opt/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: /usr
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
.
Apri il tuo browser preferito e cerca http://192.168.0.1:8080
. Vedrai che l'applicazione esegue un sito Web demo. Se non vedi il tuo sito web, attendi che il primo avvio del server dotCMS impieghi da cinque a dieci 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 --home /opt/dotcms -gecos "dotCMS User" --disabled-password --disabled-login 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 lo standard HTTP
e le HTTPS
porte. Configureremo anche Nginx per utilizzare l'SSL generato con Let's Encrypt.
Installa Nginx.
sudo apt -y install nginx
Avvia Nginx e abilita l'avvio automatico all'avvio.
sudo systemctl start nginx
sudo systemctl enable nginx
Aggiungi il repository Certbot.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Installa Certbot, che è l'applicazione client per Let's Encrypt CA.
sudo apt -y install certbot
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 /var/www/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/sites-available/dotcms
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;
}
}
Attiva la configurazione.
sudo ln -s /etc/nginx/sites-available/dotcms /etc/nginx/sites-enabled/dotcms
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
Accedi utilizzando l'account amministratore iniziale [email protected]
e la password 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.