Kako namestiti Thelia 2.3 na Debian 9
Uporaba drugega sistema? Thelia je odprtokodno orodje za ustvarjanje spletnih strani e-poslovanja in upravljanje spletnih vsebin, napisanih v PHP. Izvorna koda Thelia i
dotCMS je odprtokodni sistem za upravljanje vsebine podjetja, napisan v Javi. Vsebuje skoraj vse funkcije, potrebne za ustvarjanje spletnega mesta za vaše podjetje. Zagotavlja RESTful API za integracijo z drugimi storitvami, kot so CRM, mobilne aplikacije in drugo. Uporablja Elasticsearch za indeksiranje vsebine v realnem času in Redis za implementacijo večstopenjskega predpomnilnika.
Ta članek je bil napisan za dotCMS 4.2.2, vendar lahko navedena navodila delujejo tudi za novejše različice.
Za to vadnico bomo uporabili 192.168.0.1
kot javni naslov IP in cms.example.com
kot ime domene, usmerjeno proti primerku Vultr. Poskrbite, da boste zamenjali vse pojavitve vzorčnega imena domene in javnega naslova IP z dejanskim.
Posodobite svoj osnovni sistem z uporabo priročnika Kako posodobiti CentOS 7 . Ko je vaš sistem posodobljen, nadaljujte z namestitvijo Jave.
OpenJDK je mogoče enostavno namestiti, saj je paket na voljo v privzetem repozitoriju YUM.
sudo yum -y install java-1.8.0-openjdk-devel
Če je Java pravilno nameščena, boste lahko preverili njeno različico.
java -version
Dobili boste podoben rezultat.
[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)
Preden lahko nadaljujemo, bomo morali nastaviti spremenljivke okolja JAVA_HOME
in JRE_HOME
. Poiščite absolutno pot izvedljive datoteke Java v vašem sistemu.
readlink -f $(which java)
Videli boste podoben izhod.
[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
Zdaj nastavite spremenljivke okolja JAVA_HOME
in JRE_HOME
glede na pot imenika 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
Izvedite bash_profile
datoteko.
source ~/.bash_profile
Zdaj lahko zaženete echo $JAVA_HOME
ukaz, da zagotovite, da je spremenljivka okolja nastavljena.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
DotCMS je privzeto konfiguriran za uporabo motorja baze podatkov H2. Mehanizem baze podatkov H2 je mehanizem baze podatkov, ki temelji na ploščati datoteki. Ni priporočljivo uporabljati v proizvodnji. V tej vadnici bomo za shranjevanje baze podatkov dotCMS uporabili strežnik PostgreSQL.
PostgreSQL je objektno-relacijski sistem baz podatkov, znan po svoji stabilnosti in hitrosti. V sistem dodajte repozitorij najnovejše izdaje PostgreSQL.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Namestite strežnik baze podatkov PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inicializirajte bazo podatkov.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Zaženite strežnik PostgreSQL in omogočite, da se samodejno zažene ob zagonu.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Spremenite geslo za privzetega uporabnika PostgreSQL.
sudo passwd postgres
Prijavite se kot privzeti uporabnik PostgreSQL.
sudo su - postgres
Ustvarite novega uporabnika PostgreSQL za dotCMS.
createuser dotcms
PostgreSQL ponuja psql
lupino za izvajanje poizvedb na strežniku baze podatkov. Preklopite na lupino PostgreSQL.
psql
Nastavite geslo za novoustvarjenega uporabnika za bazo podatkov dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Uporabniško geslo baze podatkov zamenjajte DBPassword
z varnim geslom. Ustvarite novo bazo podatkov za namestitev dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Izstopite iz psql
lupine.
\q
Preklopite na sudo
uporabnika.
exit
Prenesite arhiv dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Povezavo do najnovejše različice aplikacije lahko vedno najdete na strani za prenos dotCMS .
Ustvarite nov imenik za shranjevanje datotek dotCMS in jih ekstrahirajte vanj.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Odprite konfiguracijsko datoteko baze podatkov.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Poiščite H2
blok.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Komentirajte celoten H2
razdelek tako, da zamenjate ločilo komentarja -->
od začetka razdelka do konca razdelka. To bi moralo izgledati takole.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Odkomentirajte razdelek PostgreSQL tako, da odstranite ločilo komentarjev -->
s konca razdelka in ga postavite na zgornji ovoj POSTGRESQL
. Prav tako poiščite username=
in password=
zamenjajte obstoječe vrednosti z uporabniškim imenom in geslom uporabnika vaše baze podatkov PostgreSQL. Če ste uporabili drugo ime baze podatkov kot dotcms
, boste morali spremeniti ime baze podatkov v url=
. Ko je konfiguriran, bi moral blok PostgreSQL v datoteki izgledati takole.
<!-- 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" />
Zagotovite dovoljenje za izvajanje za vse izvedljive datoteke.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS je zdaj nameščen na vašem strežniku. Če želite takoj zagnati aplikacijo, izvedite naslednje.
cd /opt/dotcms
sudo bin/startup.sh
Ko se strežnik uspešno zažene, boste videli naslednji izhod.
[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.
Zgornji ukaz bo zagnal spletni strežnik Tomcat, ki bo stregel aplikaciji na vratih 8080
. Če želite preveriti, ali spletno mesto dotCMS deluje, dovolite zahtevana vrata 8080
prek sistemskega požarnega zidu.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Odprite svoj najljubši brskalnik in poiščite http://192.168.0.1:8080
. Videti bi morali, da aplikacija izvaja demo spletno mesto. Če ne vidite svojega spletnega mesta, počakajte, saj prvi zagon strežnika dotCMS traja nekaj minut, ko zapisuje podatke v bazo podatkov PostgreSQL in gradi predpomnilnik. Preverite lahko tudi dnevnike zagona.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
Strežnik dotCMS je mogoče zagnati neposredno z uporabo zagonskega skripta, ki je na voljo v namestitvenem paketu. Zaradi priročnosti bi morali nastaviti datoteko enote Systemd za strežnik dotCMS. To bo zagotovilo, da se aplikacijski strežnik samodejno zažene ob ponovnem zagonu sistema in napakah.
Ustavite delujoči strežnik dotCMS s skriptom za zaustavitev.
sudo bin/shutdown.sh
Iz varnostnih razlogov ustvarite neprivilegiranega uporabnika za zagon strežnika dotCMS.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Zagotovite lastništvo datotek uporabniku dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Ustvarite novo storitev Systemd.
sudo nano /etc/systemd/system/dotcms.service
Izpolnite datoteko.
[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
Zaženite aplikacijo in omogočite, da se samodejno zažene ob zagonu.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Prepričajte se, da storitev deluje.
sudo systemctl status dotcms
Strežnik dotCMS privzeto posluša vrata 8080
. Nginx bomo konfigurirali kot povratni proxy, tako da bo do aplikacije mogoče dostopati prek standarda HTTP
in HTTPS
vrat. Nginx bomo tudi konfigurirali za uporabo SSL, ustvarjenega z brezplačnim SSL Let's Encrypt.
Namestite spletni strežnik Nginx.
sudo yum -y install nginx
Zaženite spletni strežnik in omogočite, da se samodejno zažene ob zagonu.
sudo systemctl start nginx
sudo systemctl enable nginx
Namestite Certbot, ki je odjemalska aplikacija za Let's Encrypt CA.
sudo yum -y install certbot
Preden lahko zahtevate potrdila, boste morali dovoliti vrata 80
in/ 443
ali standard HTTP
ter HTTPS
storitve prek požarnega zidu. Prav tako odstranite vrata 8080
s seznama izjem požarnega zidu, saj niso več potrebna.
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
Opomba: Če želite pridobiti potrdila od Let's Encrypt CA, mora biti domena, za katero naj bi bila generirana potrdila, usmerjena proti strežniku. Če ne, naredite potrebne spremembe v zapisih DNS domene in počakajte, da se DNS razširi, preden znova pošljete zahtevo za potrdilo. Certbot preveri avtoriteto domene, preden zagotovi potrdila.
Ustvarite SSL potrdila.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
Ustvarjena potrdila bodo verjetno shranjena v /etc/letsencrypt/live/cms.example.com/
. Potrdila Let's Encrypt potečejo v 90 dneh, zato je priporočljivo, da nastavite samodejno obnavljanje potrdil s pomočjo opravil Cron.
Odprite datoteko opravila cron.
sudo crontab -e
Dodajte naslednjo vrstico na konec datoteke.
30 5 * * * /usr/bin/certbot renew --quiet
Zgornje opravilo cron se bo izvajalo vsak dan ob 5.30. Če potrdilo poteče, se samodejno podaljša.
Ustvarite novo datoteko blokov strežnika za spletno mesto dotCMS.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Izpolnite datoteko.
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;
}
}
Znova zaženite spletni strežnik Nginx, da bodo spremembe začele veljati.
sudo systemctl restart nginx
Aplikacija dotCMS je zdaj nameščena na vašem strežniku za produkcijsko uporabo. Dostopite do skrbniške nadzorne plošče na naslednjem naslovu.
https://cms.example.com/dotAdmin
Prijavite se z začetnim skrbniškim računom [email protected]
in admin
. Spremenite privzeto geslo takoj po prijavi.
Čestitamo, sistem za upravljanje vsebine dotCMS je zdaj nameščen na vašem strežniku. Lahko spremenite demo stran ali pa začnete graditi svoje spletno mesto iz nič.
Uporaba drugega sistema? Thelia je odprtokodno orodje za ustvarjanje spletnih strani e-poslovanja in upravljanje spletnih vsebin, napisanih v PHP. Izvorna koda Thelia i
Uporaba drugega sistema? Microweber je odprtokodna povleci in spusti CMS in spletna trgovina. Izvorna koda Microweber gostuje na GitHubu. Ta vodnik vam bo pokazal
Uporaba drugega sistema? Microweber je odprtokodna povleci in spusti CMS in spletna trgovina. Izvorna koda Microweber gostuje na GitHubu. Ta vodnik vam bo pokazal
Uporaba drugega sistema? DotCMS je odprtokodni sistem za upravljanje vsebin za podjetja, napisan v Javi. Vsebuje skoraj vse zahtevane funkcije t
Uporaba drugega sistema? Pagekit 1.0 CMS je lep, modularen, razširljiv in lahek, brezplačen in odprtokoden sistem za upravljanje vsebine (CMS) z
Uporaba drugega sistema? BigTree CMS 4.2 je hiter in lahek, brezplačen in odprtokoden sistem za upravljanje vsebin podjetja (CMS) z obsežnim
Uporaba drugega sistema? Pagekit je odprtokodni CMS, napisan v PHP. Izvorna koda Pagekit gostuje na GitHubu. Ta priročnik vam bo pokazal, kako namestiti
Uporaba drugega sistema? PyroCMS je odprtokodni CMS, napisan v PHP. Izvorna koda PyroCMS gostuje na GitHubu. V tem vodniku se dobro sprehodite po celem
Uporaba drugega sistema? Subrion 4.1 CMS je zmogljiv in prilagodljiv odprtokodni sistem za upravljanje vsebine (CMS), ki prinaša intuitivno in jasno vsebino.
Uporaba drugega sistema? Backdrop CMS 1.8.0 je preprost in prilagodljiv, mobilnim prijazen, brezplačen in odprtokoden sistem za upravljanje vsebine (CMS), ki nam omogoča
Uporaba drugega sistema? Uvod Roadiz je sodoben CMS, zasnovan za obdelavo številnih vrst storitev. Na podlagi komponent Symfony in Doctrine ORM, tj
Uporaba drugega sistema? Microweber je odprtokodna povleci in spusti CMS in spletna trgovina. Izvorna koda Microweber gostuje na GitHubu. Ta vodnik vam bo pokazal
Uporaba drugega sistema? Grav je odprtokodni CMS s ploščatimi datotekami, napisan v PHP. Izvorna koda Grav je javno gostovana na GitHubu. Ta vodnik vam bo pokazal, kako t
Uporaba drugega sistema? Grav je odprtokodni CMS s ploščatimi datotekami, napisan v PHP. Izvorna koda Grav je javno gostovana na GitHubu. Ta vodnik vam bo pokazal, kako t
Uporaba drugega sistema? Automad je odprtokodni sistem za upravljanje vsebin (CMS), ki temelji na datotekah, in mehanizem za predloge, napisan v PHP. Izvorna koda Automad i
Raneto je brezplačna in odprtokodna baza znanja, zgrajena na Node.js, ki je enostavna za nastavitev in uporabo ter enostavna za upravljanje. Kategorije in strani ar
Uporaba drugega sistema? Thelia je odprtokodno orodje za ustvarjanje spletnih strani e-poslovanja in upravljanje spletnih vsebin, napisanih v PHP. Izvorna koda Thelia i
Uporaba drugega sistema? October 1.0 CMS je preprost in zanesljiv, brezplačen in odprtokoden sistem za upravljanje vsebine (CMS), zgrajen na ogrodju Laravel
Uporaba drugega sistema? ImpressPages CMS 5.0 je preprost in učinkovit, brezplačen in odprtokoden, uporabniku prijazen sistem za upravljanje vsebine (CMS), ki temelji na MVC.
Uporaba drugega sistema? CMS Made Simple 2.2 je prilagodljiv in razširljiv, brezplačen in odprtokoden sistem za upravljanje vsebine (CMS), ki je inteligentno zasnovan za
Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.
Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.
Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.
Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.
Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…
Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.
Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.
Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.
V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.
Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več