Hur man installerar Thelia 2.3 på Debian 9
Använder du ett annat system? Thelia är ett verktyg med öppen källkod för att skapa e-handelswebbplatser och hantera onlineinnehåll skrivet i PHP. Thelia källkod i
dotCMS är ett open source-innehållshanteringssystem för företagsklass skrivet i Java. Den innehåller nästan alla funktioner som krävs för att skapa en webbplats för ditt företag. Den tillhandahåller ett RESTful API för att integrera med andra tjänster som CRM, mobilapplikationer och mer. Den använder Elasticsearch för realtidsindexering av innehåll och Redis för att implementera multi-tier cache.
Den här artikeln skrevs för dotCMS 4.2.2, men instruktionerna kan även fungera för nyare versioner.
För den här handledningen kommer vi att använda 192.168.0.1
som den offentliga IP-adressen och cms.example.com
som domännamnet pekade mot Vultr-instansen. Se till att ersätta alla förekomster av exemplets domännamn och offentliga IP-adress med den faktiska.
Uppdatera ditt bassystem med hjälp av guiden Hur man uppdaterar CentOS 7 . När ditt system har uppdaterats, fortsätt att installera Java.
OpenJDK kan enkelt installeras eftersom paketet är tillgängligt i standard YUM-förvaret.
sudo yum -y install java-1.8.0-openjdk-devel
Om Java är korrekt installerat kommer du att kunna verifiera dess version.
java -version
Du kommer att få en liknande utgång.
[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)
Innan vi kan gå vidare måste vi ställa in variablerna JAVA_HOME
och JRE_HOME
miljö. Hitta den absoluta sökvägen för den körbara Java-filen på ditt system.
readlink -f $(which java)
Du kommer att se en liknande utgång.
[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
Nu, ställa in JAVA_HOME
och JRE_HOME
miljövariabler enligt sökvägen till 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
Kör bash_profile
filen.
source ~/.bash_profile
Nu kan du köra echo $JAVA_HOME
kommandot för att säkerställa att miljövariabeln är inställd.
[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 är dotCMS konfigurerat för att använda H2-databasmotorn. H2 databasmotorn är en platt filbaserad databasmotor. Det rekommenderas inte att använda i produktionen. I den här handledningen kommer vi att använda PostgreSQL-servern för att lagra dotCMS-databasen.
PostgreSQL är ett objektrelationellt databassystem och känt för sin stabilitet och hastighet. Lägg till arkivet för den senaste versionen 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
Installera PostgreSQL-databasservern.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initiera databasen.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Starta PostgreSQL-servern och låt den starta automatiskt vid uppstart.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Ändra lösenordet för standardpostgreSQL-användaren.
sudo passwd postgres
Logga in som standard PostgreSQL-användare.
sudo su - postgres
Skapa en ny PostgreSQL-användare för dotCMS.
createuser dotcms
PostgreSQL tillhandahåller psql
skalet för att köra frågor på databasservern. Byt till PostgreSQL-skalet.
psql
Ställ in ett lösenord för den nyskapade användaren för dotCMS-databasen.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Ersätt databasens användarlösenord DBPassword
med ett säkert lösenord. Skapa en ny databas för dotCMS-installationen.
CREATE DATABASE dotcms OWNER dotcms;
Gå ut ur psql
skalet.
\q
Växla till sudo
användaren.
exit
Ladda ner dotCMS-arkivet.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Du kan alltid hitta länken till den senaste versionen av applikationen på dotCMS nedladdningssida .
Skapa en ny katalog för att lagra dotCMS-filerna och extrahera dem i den.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Öppna databasens konfigurationsfil.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Hitta H2
blocket.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Kommentera hela H2
avsnittet genom att ersätta kommentaravgränsaren -->
från början av avsnittet till slutet av avsnittet. Det ska se ut som följande.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Avkommentera PostgreSQL-sektionen genom att ta bort kommentaravgränsaren -->
från slutet av sektionen och placera den på den översta omslaget POSTGRESQL
. Hitta username=
och password=
ersätt också de befintliga värdena med användarnamnet och lösenordet för din PostgreSQL-databasanvändare. Om du har använt ett annat databasnamn än dotcms
, måste du ändra databasnamnet i url=
. När det väl är konfigurerat bör PostgreSQL-blocket i filen se ut så här.
<!-- 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" />
Ange körningsbehörighet för alla körbara filer.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS är nu installerat på din server. För att omedelbart köra programmet, kör följande.
cd /opt/dotcms
sudo bin/startup.sh
Du kommer att se följande utdata när servern har startat framgångsrikt.
[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.
Kommandot ovan kommer att starta Tomcat-webbservern för att servera applikationen på port 8080
. För att kontrollera om dotCMS-webbplatsen fungerar, tillåt den nödvändiga porten 8080
genom systemets brandvägg.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Öppna din favoritwebbläsare och bläddra till http://192.168.0.1:8080
. Du bör se att applikationen kör en demowebbplats. Om du inte ser din webbplats, vänligen vänta eftersom den första uppstarten av dotCMS-servern tar ett par minuter eftersom den skriver data till PostgreSQL-databasen och bygger cachen. Du kan också kontrollera startloggarna.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
DotCMS-servern kan startas direkt med hjälp av startskriptet som finns i installationspaketet. För enkelhets skull bör du ställa in en Systemd-enhetsfil för dotCMS-servern. Detta kommer att säkerställa att applikationsservern startas automatiskt vid omstart av systemet och fel.
Stoppa den körande dotCMS-servern med avstängningsskriptet.
sudo bin/shutdown.sh
Skapa en oprivilegierad användare för att köra dotCMS-servern av säkerhetsskäl.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Ge äganderätten till filerna till dotCMS-användaren.
sudo chown -R dotcms:dotcms /opt/dotcms
Skapa en ny Systemd-tjänst.
sudo nano /etc/systemd/system/dotcms.service
Fyll i 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
Starta programmet och låt det starta automatiskt vid uppstart.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Se till att tjänsten körs.
sudo systemctl status dotcms
Som standard lyssnar dotCMS-servern på port 8080
. Vi kommer att konfigurera Nginx som omvänd proxy så att applikationen kan nås via standard HTTP
och HTTPS
portar. Vi kommer också att konfigurera Nginx att använda SSL som genereras med Let's Encrypt gratis SSL.
Installera Nginx webbserver.
sudo yum -y install nginx
Starta webbservern och låt den starta automatiskt vid uppstart.
sudo systemctl start nginx
sudo systemctl enable nginx
Installera Certbot, som är en klientapplikation för Let's Encrypt CA.
sudo yum -y install certbot
Innan du kan begära certifikaten måste du tillåta portarna 80
och/ 443
eller standarden HTTP
och HTTPS
tjänsterna genom brandväggen. Ta också bort port 8080
från listan över brandväggsundantag eftersom det inte längre behövs.
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
Obs: För att få certifikat från Let's Encrypt CA måste domänen för vilken certifikaten ska genereras peka mot servern. Om inte, gör de nödvändiga ändringarna i domänens DNS-poster och vänta tills DNS:n sprider sig innan du gör certifikatbegäran igen. Certbot kontrollerar domänmyndigheten innan certifikaten tillhandahålls.
Generera SSL-certifikaten.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
De genererade certifikaten kommer sannolikt att lagras i /etc/letsencrypt/live/cms.example.com/
. Låt oss kryptera certifikaten går ut om 90 dagar, därför rekommenderas det att ställa in automatisk förnyelse av certifikaten med Cron-jobb.
Öppna cron-jobbfilen.
sudo crontab -e
Lägg till följande rad i slutet av filen.
30 5 * * * /usr/bin/certbot renew --quiet
Ovanstående cron-jobb kommer att köras varje dag klockan 5:30. Om certifikatet löper ut kommer det automatiskt att förnyas.
Skapa en ny serverblockfil för dotCMS-webbplatsen.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Fyll i 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;
}
}
Starta om Nginx-webbservern så att ändringarna kan träda i kraft.
sudo systemctl restart nginx
DotCMS-applikationen är nu installerad på din server för produktionsanvändning. Gå till den administrativa instrumentpanelen på följande adress.
https://cms.example.com/dotAdmin
Logga in med det ursprungliga administratörskontot [email protected]
och admin
. Ändra standardlösenordet direkt efter inloggning.
Grattis, dotCMS innehållshanteringssystem är nu installerat på din server. Du kan ändra demosidan eller så kan du börja bygga din webbplats från början.
Använder du ett annat system? Thelia är ett verktyg med öppen källkod för att skapa e-handelswebbplatser och hantera onlineinnehåll skrivet i PHP. Thelia källkod i
Använder du ett annat system? Microweber är en öppen källkod för dra och släpp CMS och onlinebutik. Microweber källkod finns på GitHub. Denna guide kommer att visa dig
Använder du ett annat system? Microweber är en öppen källkod för dra och släpp CMS och onlinebutik. Microweber källkod finns på GitHub. Denna guide kommer att visa dig
Använder du ett annat system? DotCMS är ett open-source, företagsklassat innehållshanteringssystem skrivet i Java. Den innehåller nästan alla funktioner som krävs
Använder du ett annat system? Pagekit 1.0 CMS är ett vackert, modulärt, utbyggbart och lätt, gratis och öppen källkod Content Management System (CMS) med
Använder du ett annat system? BigTree CMS 4.2 är ett snabbt och lätt, gratis och öppen källkod, företagsklassat innehållshanteringssystem (CMS) med omfattande
Använder du ett annat system? Pagekit är ett CMS med öppen källkod skrivet i PHP. Pagekit-källkoden finns på GitHub. Den här guiden visar hur du installerar
Använder du ett annat system? PyroCMS är ett open source CMS skrivet i PHP. PyroCMS källkod finns på GitHub. I denna guide går du väl igenom hela
Använder du ett annat system? Subrion 4.1 CMS är ett kraftfullt och flexibelt innehållshanteringssystem (CMS) med öppen källkod som ger ett intuitivt och tydligt innehåll
Använder du ett annat system? Backdrop CMS 1.8.0 är ett enkelt och flexibelt, mobilvänligt, gratis och open source Content Management System (CMS) som låter oss
Använder du ett annat system? Inledning Roadiz är ett modernt CMS designat för att hantera många typer av tjänster. Baserat på Symfony-komponenter och Doctrin ORM, dvs
Använder du ett annat system? Microweber är en öppen källkod för dra och släpp CMS och onlinebutik. Microweber källkod finns på GitHub. Denna guide kommer att visa dig
Använder du ett annat system? Grav är ett platt-fil-CMS med öppen källkod skrivet i PHP. Grav källkod är offentligt värd på GitHub. Den här guiden visar dig hur t
Använder du ett annat system? Grav är ett platt-fil-CMS med öppen källkod skrivet i PHP. Grav källkod är offentligt värd på GitHub. Den här guiden visar dig hur t
Använder du ett annat system? Automad är ett filbaserat innehållshanteringssystem (CMS) och mallmotor med öppen källkod skriven i PHP. Källkoden för Automad i
Raneto är en gratis kunskapsbas med öppen källkod, byggd på Node.js som är enkel att installera och använda, samt lätt att administrera. Kategorier och sidor ar
Använder du ett annat system? Thelia är ett verktyg med öppen källkod för att skapa e-handelswebbplatser och hantera onlineinnehåll skrivet i PHP. Thelia källkod i
Använder du ett annat system? Oktober 1.0 CMS är ett enkelt och pålitligt, gratis och öppen källkodsinnehållshanteringssystem (CMS) byggt på Laravel-ramverket
Använder du ett annat system? ImpressPages CMS 5.0 är ett enkelt och effektivt, gratis och öppen källkod, användarvänligt, MVC-baserat Content Management System (CMS)
Använder du ett annat system? CMS Made Simple 2.2 är ett flexibelt och utbyggbart, gratis och open source Content Management System (CMS) intelligent designat för att
Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.
Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.
Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.
Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.
Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...
När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.
Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.
Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.
I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.
Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer