Hvordan installere Thelia 2.3 på Debian 9
Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i
dotCMS er et åpen kildekode for bedriftskvalitets innholdsstyringssystem skrevet i Java. Den inneholder nesten alle funksjoner som kreves for å lage et nettsted for virksomheten din. Den gir en RESTful API for å integrere med andre tjenester som CRM, mobilapplikasjoner og mer. Den bruker Elasticsearch for sanntidsindeksering av innhold og Redis for å implementere multi-tier cache.
Denne artikkelen ble skrevet for dotCMS 4.2.2, men instruksjonene kan også fungere for nyere versjoner.
For denne opplæringen vil vi bruke 192.168.0.1
som den offentlige IP-adressen og cms.example.com
som domenenavnet som pekte mot Vultr-forekomsten. Sørg for å erstatte alle forekomster av eksempeldomenenavnet og den offentlige IP-adressen med den faktiske.
Oppdater basissystemet ditt ved å bruke veiledningen Hvordan oppdatere CentOS 7 . Når systemet ditt har blitt oppdatert, fortsett å installere Java.
OpenJDK kan enkelt installeres ettersom pakken er tilgjengelig i standard YUM-depot.
sudo yum -y install java-1.8.0-openjdk-devel
Hvis Java er riktig installert, vil du kunne bekrefte versjonen.
java -version
Du vil få en lignende utgang.
[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)
Før vi kan gå videre, må vi sette opp JAVA_HOME
og JRE_HOME
miljøvariablene. Finn den absolutte banen til Java-kjørbaren på systemet ditt.
readlink -f $(which java)
Du vil se en lignende utgang.
[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
Nå satt de JAVA_HOME
og JRE_HOME
miljøvariabler i henhold til banen for Java-katalogen.
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
Kjør bash_profile
filen.
source ~/.bash_profile
Nå kan du kjøre echo $JAVA_HOME
kommandoen for å sikre at miljøvariabelen er satt.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Som standard er dotCMS konfigurert til å bruke H2-databasemotoren. H2-databasemotoren er en flatfilbasert databasemotor. Det anbefales ikke å bruke i produksjon. I denne opplæringen vil vi bruke PostgreSQL-serveren til å lagre dotCMS-databasen.
PostgreSQL er et objektrelasjonelt databasesystem og kjent for sin stabilitet og hastighet. Legg til depotet til den siste versjonen av PostgreSQL i systemet.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installer PostgreSQL-databaseserveren.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initialiser databasen.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Start PostgreSQL-serveren og la den starte automatisk ved oppstart.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Endre passordet for standard PostgreSQL-bruker.
sudo passwd postgres
Logg på som standard PostgreSQL-bruker.
sudo su - postgres
Opprett en ny PostgreSQL-bruker for dotCMS.
createuser dotcms
PostgreSQL gir psql
skallet for å kjøre spørringer på databaseserveren. Bytt til PostgreSQL-skallet.
psql
Angi et passord for den nyopprettede brukeren for dotCMS-databasen.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Erstatt databasebrukerpassordet DBPassword
med et sikkert passord. Opprett en ny database for dotCMS-installasjonen.
CREATE DATABASE dotcms OWNER dotcms;
Gå ut av psql
skallet.
\q
Bytt til sudo
brukeren.
exit
Last ned dotCMS-arkivet.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Du kan alltid finne lenken til den nyeste versjonen av applikasjonen på dotCMS-nedlastingssiden .
Opprett en ny katalog for å lagre dotCMS-filene og pakke dem ut i den.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Åpne databasekonfigurasjonsfilen.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Finn H2
blokken.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Kommenter hele H2
seksjonen ved å erstatte kommentaravgrensningen -->
fra begynnelsen av seksjonen til slutten av seksjonen. Det skal se slik ut.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Fjern kommentaren til PostgreSQL-delen ved å fjerne kommentaravgrensningsmerket -->
fra slutten av delen og plassere den på den øverste innpakningen POSTGRESQL
. Finn username=
og password=
og erstatt de eksisterende verdiene med brukernavnet og passordet til din PostgreSQL-databasebruker. Hvis du har brukt et annet databasenavn enn dotcms
, må du endre databasenavnet i url=
. Når den er konfigurert, skal PostgreSQL-blokken i filen se ut som følgende.
<!-- 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" />
Gi kjøringstillatelsen for alle de kjørbare filene.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS er nå installert på serveren din. For å kjøre programmet umiddelbart, kjør følgende.
cd /opt/dotcms
sudo bin/startup.sh
You will see the following output when the server has started successfully.
[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.
The above command will start the Tomcat web server to serve the application on port 8080
. To check if the dotCMS website is working, allow the required port 8080
through the system firewall.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Open your favorite browser and browse to http://192.168.0.1:8080
. You should see that the application is running a demo website. If you do not see your website, please wait as the first startup of the dotCMS server takes a couple of minutes as it writes data into the PostgreSQL database and builds the cache. You can also check the startup logs.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
DotCMS-serveren kan startes direkte ved å bruke oppstartsskriptet som følger med i installasjonspakken. For enkelhets skyld bør du sette opp en Systemd-enhetsfil for dotCMS-serveren. Dette vil sikre at applikasjonsserveren startes automatisk ved omstart av systemet og feil.
Stopp den kjørende dotCMS-serveren ved å bruke avslutningsskriptet.
sudo bin/shutdown.sh
Opprett en uprivilegert bruker for å kjøre dotCMS-serveren, av sikkerhetsgrunner.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Gi eierskap til filene til dotCMS-brukeren.
sudo chown -R dotcms:dotcms /opt/dotcms
Opprett en ny Systemd-tjeneste.
sudo nano /etc/systemd/system/dotcms.service
Fyll ut filen.
[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
Start programmet og la det starte automatisk ved oppstart.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Sørg for at tjenesten kjører.
sudo systemctl status dotcms
Som standard lytter dotCMS-serveren på port 8080
. Vi vil konfigurere Nginx som omvendt proxy slik at applikasjonen kan nås via standard HTTP
og HTTPS
porter. Vi vil også konfigurere Nginx til å bruke SSL generert med Let's Encrypt gratis SSL.
Installer Nginx-nettserveren.
sudo yum -y install nginx
Start webserveren og la den starte automatisk ved oppstart.
sudo systemctl start nginx
sudo systemctl enable nginx
Installer Certbot, som er en klientapplikasjon for Let's Encrypt CA.
sudo yum -y install certbot
Før du kan be om sertifikatene, må du tillate portene 80
og/ 443
eller standarden HTTP
og HTTPS
tjenestene gjennom brannmuren. Fjern også porten 8080
fra listen over brannmurunntak siden den ikke lenger er nødvendig.
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
Merk: For å få sertifikater fra Let's Encrypt CA, må domenet som sertifikatene skal genereres for peke mot serveren. Hvis ikke, gjør de nødvendige endringene i DNS-postene til domenet og vent til DNS-en forplanter seg før du foretar sertifikatforespørselen igjen. Certbot sjekker domeneautoriteten før sertifikatene leveres.
Generer SSL-sertifikatene.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
De genererte sertifikatene blir sannsynligvis lagret i /etc/letsencrypt/live/cms.example.com/
. La oss kryptere sertifikater utløper om 90 dager, derfor anbefales det å sette opp automatisk fornyelse av sertifikatene ved å bruke Cron-jobber.
Åpne cron-jobbfilen.
sudo crontab -e
Legg til følgende linje på slutten av filen.
30 5 * * * /usr/bin/certbot renew --quiet
Cron-jobben ovenfor kjøres hver dag klokken 05.30. Hvis sertifikatet skal utløpe, vil det automatisk fornyes.
Opprett en ny serverblokkfil for dotCMS-nettstedet.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Fyll ut filen.
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;
}
}
Start Nginx-nettserveren på nytt slik at endringene kan tre i kraft.
sudo systemctl restart nginx
DotCMS-applikasjonen er nå installert på serveren din for produksjonsbruk. Få tilgang til det administrative dashbordet på følgende adresse.
https://cms.example.com/dotAdmin
Logg på med den opprinnelige administratorkontoen, [email protected]
og admin
. Endre standardpassordet umiddelbart etter pålogging.
Gratulerer, dotCMS innholdsstyringssystemet er nå installert på serveren din. Du kan endre demosiden eller du kan begynne å bygge siden fra bunnen av.
Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i
Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg
Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg
Bruker du et annet system? DotCMS er et åpen kildekode, enterprise-grade innholdsstyringssystem skrevet i Java. Den inneholder nesten alle nødvendige funksjoner
Bruker du et annet system? Pagekit 1.0 CMS er et vakkert, modulært, utvidbart og lett, gratis og åpen kildekode Content Management System (CMS) med
Bruker du et annet system? BigTree CMS 4.2 er et raskt og lett, gratis og åpen kildekode, enterprise-grade content management system (CMS) med omfattende
Bruker du et annet system? Pagekit er et åpen kildekode CMS skrevet i PHP. Pagekit-kildekoden er vert på GitHub. Denne veiledningen viser deg hvordan du installerer
Bruker du et annet system? PyroCMS er et åpen kildekode CMS skrevet i PHP. PyroCMS-kildekoden er vert på GitHub. I denne guiden går du godt gjennom hele
Bruker du et annet system? Subrion 4.1 CMS er et kraftig og fleksibelt innholdsstyringssystem (CMS) med åpen kildekode som gir et intuitivt og tydelig innhold
Bruker du et annet system? Backdrop CMS 1.8.0 er et enkelt og fleksibelt, mobilvennlig, gratis og åpen kildekode Content Management System (CMS) som lar oss
Bruker du et annet system? Introduksjon Roadiz er et moderne CMS designet for å håndtere mange typer tjenester. Basert på Symfony-komponenter og Doctrine ORM, dvs
Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg
Bruker du et annet system? Grav er et åpen kildekode flat-fil CMS skrevet i PHP. Grav kildekode er offentlig vert på GitHub. Denne guiden viser deg hvordan t
Bruker du et annet system? Grav er et åpen kildekode flat-fil CMS skrevet i PHP. Grav kildekode er offentlig vert på GitHub. Denne guiden viser deg hvordan t
Bruker du et annet system? Automad er et åpen kildekode-filbasert innholdsstyringssystem (CMS) og malmotor skrevet i PHP. Automad-kildekoden i
Raneto er en gratis og åpen kildekode kunnskapsbase, bygget på Node.js som er enkel å sette opp og bruke, samt enkel å administrere. Kategorier og sider ar
Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i
Bruker du et annet system? Oktober 1.0 CMS er et enkelt og pålitelig, gratis og åpen kildekode Content Management System (CMS) bygget på Laravel-rammeverket
Bruker du et annet system? ImpressPages CMS 5.0 er et enkelt og effektivt, gratis og åpen kildekode, brukervennlig, MVC-basert Content Management System (CMS)
Bruker du et annet system? CMS Made Simple 2.2 er et fleksibelt og utvidbart, gratis og åpen kildekode Content Management System (CMS) intelligent designet for å
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.
Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.
Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.
Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...
Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.
Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.
Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.
I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.
Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer