Sådan installeres Thelia 2.3 på Debian 9
Bruger du et andet system? Thelia er et open source-værktøj til at skabe e-business-websteder og administrere onlineindhold skrevet i PHP. Thelia kildekode i
dotCMS er et open source enterprise grade content management system skrevet i Java. Den indeholder næsten alle de funktioner, der kræves for at oprette en hjemmeside til din virksomhed. Det giver en RESTful API til at integrere med andre tjenester såsom CRM, mobilapplikationer og mere. Den bruger Elasticsearch til realtidsindeksering af indhold og Redis til implementering af multi-tier cache.
Denne artikel er skrevet til dotCMS 4.2.2, men de medfølgende instruktioner fungerer muligvis også for nyere versioner.
Til denne vejledning vil vi bruge 192.168.0.1
som den offentlige IP-adresse og cms.example.com
som domænenavnet, der pegede mod Vultr-forekomsten. Sørg for at erstatte alle forekomster af eksempeldomænenavnet og den offentlige IP-adresse med den faktiske.
Opdater dit basissystem ved hjælp af vejledningen Sådan opdaterer du CentOS 7 . Når dit system er blevet opdateret, skal du fortsætte med at installere Java.
OpenJDK kan nemt installeres, da pakken er tilgængelig i standard YUM-lageret.
sudo yum -y install java-1.8.0-openjdk-devel
Hvis Java er installeret korrekt, vil du være i stand til at bekræfte dens version.
java -version
Du vil få et lignende output.
[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, bliver vi nødt til at opsætte JAVA_HOME
og JRE_HOME
miljøvariablerne. Find den absolutte sti til den eksekverbare Java på dit system.
readlink -f $(which java)
Du vil se et lignende output.
[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
Indstil nu JAVA_HOME
og JRE_HOME
miljøvariablerne i henhold til stien til Java-mappen.
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
Udfør bash_profile
filen.
source ~/.bash_profile
Nu kan du køre echo $JAVA_HOME
kommandoen for at sikre, at miljøvariablen er indstillet.
[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 konfigureret til at bruge H2-databasemotoren. H2-databasemotoren er en fladfilbaseret databasemotor. Det anbefales ikke at bruge i produktionen. I denne vejledning vil vi bruge PostgreSQL-serveren til at gemme dotCMS-databasen.
PostgreSQL er et objektrelationelt databasesystem og kendt for dets stabilitet og hastighed. Tilføj lageret for den seneste udgivelse af PostgreSQL til 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 aktiver den til at starte automatisk ved opstart.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Skift adgangskoden til standard PostgreSQL-brugeren.
sudo passwd postgres
Log ind som standard PostgreSQL-bruger.
sudo su - postgres
Opret en ny PostgreSQL-bruger til dotCMS.
createuser dotcms
PostgreSQL leverer psql
skallen til at køre forespørgsler på databaseserveren. Skift til PostgreSQL-skallen.
psql
Indstil en adgangskode for den nyoprettede bruger til dotCMS-databasen.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Erstat databasens brugeradgangskode DBPassword
med en sikker adgangskode. Opret en ny database til dotCMS-installationen.
CREATE DATABASE dotcms OWNER dotcms;
Udgang fra psql
skallen.
\q
Skift til sudo
brugeren.
exit
Download dotCMS-arkivet.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Du kan altid finde linket til den seneste version af applikationen på dotCMS-downloadsiden .
Opret en ny mappe til at gemme dotCMS-filerne og udpakke dem ind i den.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Åbn databasens konfigurationsfil.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Find H2
blokken.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Kommenter hele H2
sektionen ved at erstatte kommentarafgrænsningen -->
fra begyndelsen af sektionen til slutningen af sektionen. Det skal se ud som følgende.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Fjern kommentarer til PostgreSQL-sektionen ved at fjerne kommentarafgrænseren -->
fra slutningen af sektionen og placere den på den øverste indpakning POSTGRESQL
. Find username=
og password=
og erstat de eksisterende værdier med brugernavnet og adgangskoden til din PostgreSQL-databasebruger. Hvis du har brugt et andet databasenavn end dotcms
, så skal du ændre databasenavnet i url=
. Når den er konfigureret, skal PostgreSQL-blokken i filen se ud 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" />
Angiv eksekveringstilladelsen for alle de eksekverbare filer.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS er nu installeret på din server. For straks at køre programmet skal du udføre følgende.
cd /opt/dotcms
sudo bin/startup.sh
Du vil se følgende output, når serveren er startet.
[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.
Ovenstående kommando starter Tomcat-webserveren for at betjene applikationen på port 8080
. For at kontrollere, om dotCMS-webstedet fungerer, skal du tillade den nødvendige port 8080
gennem systemets firewall.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Åbn din yndlingsbrowser og gå til http://192.168.0.1:8080
. Du bør se, at applikationen kører et demowebsted. Hvis du ikke kan se din hjemmeside, vent venligst, da den første opstart af dotCMS-serveren tager et par minutter, da den skriver data ind i PostgreSQL-databasen og bygger cachen. Du kan også tjekke opstartsloggene.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
DotCMS-serveren kan startes direkte ved hjælp af opstartsscriptet i installationspakken. For nemheds skyld bør du konfigurere en Systemd-enhedsfil til dotCMS-serveren. Dette vil sikre, at applikationsserveren automatisk startes ved systemgenstart og fejl.
Stop den kørende dotCMS-server ved hjælp af shutdown-scriptet.
sudo bin/shutdown.sh
Opret en uprivilegeret bruger til at køre dotCMS-serveren af sikkerhedsmæssige årsager.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Giv ejerskab af filerne til dotCMS-brugeren.
sudo chown -R dotcms:dotcms /opt/dotcms
Opret en ny Systemd-tjeneste.
sudo nano /etc/systemd/system/dotcms.service
Udfyld 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 applikationen og aktiver den til automatisk at starte ved opstart.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Sørg for, at tjenesten kører.
sudo systemctl status dotcms
Som standard lytter dotCMS-serveren på port 8080
. Vi vil konfigurere Nginx som omvendt proxy, så applikationen kan tilgås via standard HTTP
og HTTPS
porte. Vi vil også konfigurere Nginx til at bruge SSL genereret med Let's Encrypt gratis SSL.
Installer Nginx-webserveren.
sudo yum -y install nginx
Start webserveren og sæt den i stand til automatisk at starte ved opstart.
sudo systemctl start nginx
sudo systemctl enable nginx
Installer Certbot, som er en klientapplikation til Let's Encrypt CA.
sudo yum -y install certbot
Før du kan anmode om certifikaterne, skal du tillade porte 80
og/ 443
eller standard HTTP
og HTTPS
tjenester gennem firewallen. Fjern også porten 8080
fra listen over firewall-undtagelser, da den ikke længere er påkrævet.
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
Bemærk: For at få certifikater fra Let's Encrypt CA, skal det domæne, som certifikaterne skal genereres for, pege mod serveren. Hvis ikke, skal du foretage de nødvendige ændringer i domænets DNS-poster og vente på, at DNS'en udbreder sig, før du foretager certifikatanmodningen igen. Certbot kontrollerer domæneautoriteten, før certifikaterne leveres.
Generer SSL-certifikaterne.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
De genererede certifikater vil sandsynligvis blive gemt i /etc/letsencrypt/live/cms.example.com/
. Lad os kryptere certifikater udløber om 90 dage, derfor anbefales det at konfigurere automatisk fornyelse af certifikaterne ved hjælp af Cron-job.
Åbn cron-jobfilen.
sudo crontab -e
Tilføj følgende linje i slutningen af filen.
30 5 * * * /usr/bin/certbot renew --quiet
Ovenstående cron-job kører hver dag kl. 5:30. Hvis certifikatet udløber, vil det automatisk blive fornyet.
Opret en ny serverblokfil til dotCMS-webstedet.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Udfyld 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;
}
}
Genstart Nginx-webserveren, så ændringerne kan træde i kraft.
sudo systemctl restart nginx
DotCMS-applikationen er nu installeret på din server til produktionsbrug. Få adgang til det administrative dashboard på følgende adresse.
https://cms.example.com/dotAdmin
Log ind med den oprindelige administratorkonto, [email protected]
og admin
. Skift standardadgangskoden umiddelbart efter login.
Tillykke, dotCMS indholdsstyringssystemet er nu installeret på din server. Du kan ændre demo-webstedet, eller du kan begynde at bygge dit websted fra bunden.
Bruger du et andet system? Thelia er et open source-værktøj til at skabe e-business-websteder og administrere onlineindhold skrevet i PHP. Thelia kildekode i
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Bruger du et andet system? DotCMS er et open source, enterprise-grade content management system skrevet i Java. Den indeholder næsten alle nødvendige funktioner
Bruger du et andet system? Pagekit 1.0 CMS er et smukt, modulært, udvideligt og let, gratis og open source Content Management System (CMS) med
Bruger du et andet system? BigTree CMS 4.2 er et hurtigt og let, gratis og open source, enterprise-grade content management system (CMS) med omfattende
Bruger du et andet system? Pagekit er et open source CMS skrevet i PHP. Pagekit-kildekoden er hostet på GitHub. Denne vejledning viser dig, hvordan du installerer
Bruger du et andet system? PyroCMS er et open source CMS skrevet i PHP. PyroCMS-kildekoden er hostet på GitHub. I denne guide går du godt igennem det hele
Bruger du et andet system? Subrion 4.1 CMS er et kraftfuldt og fleksibelt open source Content Management System (CMS), der bringer et intuitivt og klart indhold
Bruger du et andet system? Backdrop CMS 1.8.0 er et enkelt og fleksibelt, mobilvenligt, gratis og open source Content Management System (CMS), der giver os mulighed for
Bruger du et andet system? Introduktion Roadiz er et moderne CMS designet til at håndtere mange typer tjenester. Baseret på Symfony-komponenter og Doctrin ORM, dvs
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Bruger du et andet system? Grav er et open source flad-fil CMS skrevet i PHP. Grav kildekode er offentligt hostet på GitHub. Denne vejledning viser dig, hvordan t
Bruger du et andet system? Grav er et open source flad-fil CMS skrevet i PHP. Grav kildekode er offentligt hostet på GitHub. Denne vejledning viser dig, hvordan t
Bruger du et andet system? Automad er et open source filbaseret indholdsstyringssystem (CMS) og skabelonmotor skrevet i PHP. Automad-kildekoden i
Raneto er en gratis og open source vidensbase, bygget på Node.js, der er nem at konfigurere og bruge, samt nem at administrere. Kategorier og sider ar
Bruger du et andet system? Thelia er et open source-værktøj til at skabe e-business-websteder og administrere onlineindhold skrevet i PHP. Thelia kildekode i
Bruger du et andet system? Oktober 1.0 CMS er et enkelt og pålideligt, gratis og open source Content Management System (CMS) bygget på Laravel-rammeværket
Bruger du et andet system? ImpressPages CMS 5.0 er et enkelt og effektivt, gratis og open source, brugervenligt, MVC-baseret Content Management System (CMS)
Bruger du et andet system? CMS Made Simple 2.2 er et fleksibelt og udvidelsesvenligt, gratis og open source Content Management System (CMS) intelligent designet til at b.
Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.
Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.
Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.
Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.
Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...
Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.
Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af dataene. Denne blog dækker udviklingen af datalagring på basis af en infografik.
Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.
I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.
For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af mac-maskiner. Læs denne artikel for at lære mere