Kaip įdiegti Thelia 2.3 Debian 9
Naudojate kitą sistemą? Thelia yra atvirojo kodo įrankis, skirtas kurti el. verslo svetaines ir valdyti PHP parašytą internetinį turinį. Thelia šaltinio kodas i
dotCMS yra atvirojo kodo įmonės lygio turinio valdymo sistema, parašyta Java. Jame yra beveik visos funkcijos, reikalingos norint sukurti svetainę jūsų verslui. Tai suteikia RESTful API, kad būtų galima integruoti su kitomis paslaugomis, pvz., CRM, mobiliosiomis programomis ir kt. Turinio indeksavimui realiuoju laiku naudojamas „Elasticsearch“, o kelių pakopų talpyklai įdiegti „Redis“.
Šis straipsnis buvo skirtas dotCMS 4.2.2, tačiau pateiktos instrukcijos gali būti naudingos ir naujesnėms versijoms.
Šioje pamokoje naudosime 192.168.0.1
kaip viešąjį IP adresą ir cms.example.com
kaip domeno pavadinimą, nukreiptą į Vultr egzempliorių. Būtinai pakeiskite visus pavyzdinio domeno vardo ir viešojo IP adreso atvejus tikruoju.
Atnaujinkite bazinę sistemą naudodami vadovą Kaip atnaujinti CentOS 7 . Kai sistema bus atnaujinta, tęskite „Java“ diegimą.
OpenJDK galima lengvai įdiegti, nes paketas yra numatytojoje YUM saugykloje.
sudo yum -y install java-1.8.0-openjdk-devel
Jei „Java“ įdiegta teisingai, galėsite patikrinti jos versiją.
java -version
Jūs gausite panašią išvestį.
[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)
Prieš tęsdami toliau, turėsime nustatyti JAVA_HOME
ir JRE_HOME
aplinkos kintamuosius. Raskite absoliutų „Java“ vykdomojo failo kelią savo sistemoje.
readlink -f $(which java)
Pamatysite panašų išvestį.
[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
Dabar nustatykite JAVA_HOME
ir JRE_HOME
aplinkos kintamuosius pagal Java katalogo kelią.
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
Vykdykite bash_profile
failą.
source ~/.bash_profile
Dabar galite paleisti echo $JAVA_HOME
komandą, kad įsitikintumėte, jog aplinkos kintamasis yra nustatytas.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Pagal numatytuosius nustatymus dotCMS yra sukonfigūruotas naudoti H2 duomenų bazės variklį. H2 duomenų bazės variklis yra vienodo failo duomenų bazės variklis. Nerekomenduojama naudoti gamyboje. Šioje pamokoje naudosime PostgreSQL serverį dotCMS duomenų bazei saugoti.
PostgreSQL yra objektų santykių duomenų bazių sistema, žinoma dėl savo stabilumo ir greičio. Į sistemą įtraukite naujausio PostgreSQL leidimo saugyklą.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Įdiekite PostgreSQL duomenų bazės serverį.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inicijuoti duomenų bazę.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Paleiskite PostgreSQL serverį ir įgalinkite jį automatiškai paleisti įkrovos metu.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Pakeiskite numatytojo „PostgreSQL“ vartotojo slaptažodį.
sudo passwd postgres
Prisijunkite kaip numatytasis PostgreSQL vartotojas.
sudo su - postgres
Sukurkite naują PostgreSQL vartotoją, skirtą dotCMS.
createuser dotcms
PostgreSQL suteikia psql
apvalkalą užklausoms vykdyti duomenų bazės serveryje. Perjunkite į PostgreSQL apvalkalą.
psql
Nustatykite slaptažodį naujai sukurtam dotCMS duomenų bazės vartotojui.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Pakeiskite duomenų bazės vartotojo slaptažodį DBPassword
saugiu slaptažodžiu. Sukurkite naują duomenų bazę dotCMS diegimui.
CREATE DATABASE dotcms OWNER dotcms;
Išeiti iš psql
apvalkalo.
\q
Perjungti į sudo
vartotoją.
exit
Atsisiųskite dotCMS archyvą.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Nuorodą į naujausią programos versiją visada galite rasti dotCMS atsisiuntimo puslapyje .
Sukurkite naują katalogą dotCMS failams saugoti ir išskleiskite juos į jį.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Atidarykite duomenų bazės konfigūracijos failą.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Raskite H2
bloką.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Komentuokite visą H2
skyrių pakeisdami komentaro skyriklį -->
nuo skyriaus pradžios iki skyriaus pabaigos. Tai turėtų atrodyti taip.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Panaikinkite PostgreSQL skyriaus komentarą pašalindami komentarų skyriklį -->
nuo sekcijos pabaigos ir įdėdami jį į viršutinį apvyniojimą POSTGRESQL
. Taip pat suraskite username=
ir password=
pakeiskite esamas reikšmes savo PostgreSQL duomenų bazės vartotojo vartotojo vardu ir slaptažodžiu. Jei naudojote kitą duomenų bazės pavadinimą nei dotcms
, tuomet turėsite pakeisti duomenų bazės pavadinimą url=
. Sukonfigūravus, PostgreSQL blokas faile turėtų atrodyti taip.
<!-- 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" />
Suteikite visų vykdomųjų failų vykdymo leidimą.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS dabar įdiegtas jūsų serveryje. Norėdami iš karto paleisti programą, atlikite šiuos veiksmus.
cd /opt/dotcms
sudo bin/startup.sh
Kai serveris bus sėkmingai paleistas, pamatysite šią išvestį.
[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.
Aukščiau pateikta komanda paleis „Tomcat“ žiniatinklio serverį, kad programa aptarnautų prievadą 8080
. Norėdami patikrinti, ar dotCMS svetainė veikia, 8080
per sistemos užkardą leiskite reikiamą prievadą .
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Atidarykite mėgstamą naršyklę ir naršykite iki http://192.168.0.1:8080
. Turėtumėte pamatyti, kad programoje veikia demonstracinė svetainė. Jei nematote savo svetainės, palaukite, nes pirmasis dotCMS serverio paleidimas užtrunka kelias minutes, kol jis įrašo duomenis į PostgreSQL duomenų bazę ir sukuria talpyklą. Taip pat galite patikrinti paleidimo žurnalus.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
DotCMS serverį galima paleisti tiesiogiai naudojant paleisties scenarijų, pateiktą diegimo programos pakete. Patogumo sumetimais turėtumėte nustatyti „DotCMS“ serverio „Systemd“ vieneto failą. Tai užtikrins, kad programų serveris bus automatiškai paleistas, kai sistema paleidžiama iš naujo ir įvykus gedimams.
Sustabdykite veikiantį dotCMS serverį naudodami išjungimo scenarijų.
sudo bin/shutdown.sh
Saugumo sumetimais sukurkite neprivilegijuotą vartotoją dotCMS serveriui paleisti.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Suteikti failų nuosavybės teisę dotCMS vartotojui.
sudo chown -R dotcms:dotcms /opt/dotcms
Sukurkite naują Systemd paslaugą.
sudo nano /etc/systemd/system/dotcms.service
Užpildykite failą.
[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
Paleiskite programą ir įgalinkite ją automatiškai paleisti įkrovos metu.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Įsitikinkite, kad paslauga veikia.
sudo systemctl status dotcms
Pagal numatytuosius nustatymus dotCMS serveris klauso prievado 8080
. „Nginx“ sukonfigūruosime kaip atvirkštinį tarpinį serverį, kad programą būtų galima pasiekti per standartinius HTTP
ir HTTPS
prievadus. Taip pat sukonfigūruosime „Nginx“, kad naudotų SSL, sugeneruotą naudojant „Let's Encrypt“ nemokamą SSL.
Įdiekite „Nginx“ žiniatinklio serverį.
sudo yum -y install nginx
Paleiskite žiniatinklio serverį ir įgalinkite jį automatiškai paleisti įkrovos metu.
sudo systemctl start nginx
sudo systemctl enable nginx
Įdiekite „Certbot“, kuri yra „Let's Encrypt CA“ kliento programa.
sudo yum -y install certbot
Kad galėtumėte prašyti sertifikatų, turėsite leisti prievadus 80
ir ( 443
arba) standartą HTTP
ir HTTPS
paslaugas per užkardą. Be to, pašalinkite prievadą 8080
iš ugniasienės išimčių sąrašo, nes jis nebereikalingas.
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
Pastaba: norint gauti sertifikatus iš Let's Encrypt CA, domenas, kuriam turi būti generuojami sertifikatai, turi būti nukreiptas į serverį. Jei ne, atlikite reikiamus domeno DNS įrašų pakeitimus ir palaukite, kol DNS išplis, prieš vėl pateikdami sertifikato užklausą. „Certbot“ patikrina domeno instituciją prieš pateikdamas sertifikatus.
Sukurkite SSL sertifikatus.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
Sugeneruoti sertifikatai greičiausiai bus saugomi /etc/letsencrypt/live/cms.example.com/
. „Encrypt“ sertifikatai baigiasi po 90 dienų, todėl rekomenduojama nustatyti automatinį sertifikatų atnaujinimą naudojant „Cron“ užduotis.
Atidarykite cron darbo failą.
sudo crontab -e
Failo pabaigoje pridėkite šią eilutę.
30 5 * * * /usr/bin/certbot renew --quiet
Pirmiau nurodytas cron darbas bus vykdomas kiekvieną dieną 5:30 val. Jei baigiasi sertifikato galiojimo laikas, jis automatiškai atnaujinamas.
Sukurkite naują serverio bloko failą dotCMS svetainei.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Užpildykite failą.
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;
}
}
Iš naujo paleiskite „Nginx“ žiniatinklio serverį, kad pakeitimai įsigaliotų.
sudo systemctl restart nginx
Dabar jūsų serveryje įdiegta dotCMS programa, skirta naudoti gamyboje. Pasiekite administracinę informacijos suvestinę šiuo adresu.
https://cms.example.com/dotAdmin
Prisijunkite naudodami pradinę administratoriaus paskyrą [email protected]
ir admin
. Pakeiskite numatytąjį slaptažodį iškart po prisijungimo.
Sveikiname, dabar jūsų serveryje įdiegta dotCMS turinio valdymo sistema. Galite modifikuoti demonstracinę svetainę arba pradėti kurti savo svetainę nuo nulio.
Naudojate kitą sistemą? Thelia yra atvirojo kodo įrankis, skirtas kurti el. verslo svetaines ir valdyti PHP parašytą internetinį turinį. Thelia šaltinio kodas i
Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys
Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys
Naudojate kitą sistemą? DotCMS yra atvirojo kodo, įmonės lygio turinio valdymo sistema, parašyta Java. Jame yra beveik visos reikalingos funkcijos t
Naudojate kitą sistemą? Pagekit 1.0 TVS yra graži, modulinė, išplečiama ir lengva, nemokama ir atviro kodo turinio valdymo sistema (TVS) su
Naudojate kitą sistemą? BigTree CMS 4.2 yra greita ir lengva, nemokama ir atviro kodo, įmonės lygio turinio valdymo sistema (TVS), turinti platų
Naudojate kitą sistemą? Pagekit yra atvirojo kodo TVS, parašyta PHP. „Pagekit“ šaltinio kodas yra „GitHub“. Šis vadovas parodys, kaip įdiegti
Naudojate kitą sistemą? PyroCMS yra atvirojo kodo TVS, parašyta PHP. PyroCMS šaltinio kodas yra priglobtas GitHub. Šiame vadove gerai eikite per visą
Naudojate kitą sistemą? Subrion 4.1 TVS yra galinga ir lanksti atvirojo kodo turinio valdymo sistema (TVS), kuri suteikia intuityvų ir aiškų turinį
Naudojate kitą sistemą? Backdrop CMS 1.8.0 yra paprasta ir lanksti, mobiliesiems pritaikyta nemokama ir atvirojo kodo turinio valdymo sistema (TVS), kuri leidžia mums
Naudojate kitą sistemą? Įvadas Roadiz yra moderni TVS, skirta daugelio tipų paslaugoms tvarkyti. Remiantis Symfony komponentais ir doktrina ORM, t
Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys
Naudojate kitą sistemą? Grav yra atvirojo kodo plokščių failų TVS, parašyta PHP. „Grav“ šaltinio kodas viešai priglobtas „GitHub“. Šis vadovas parodys, kaip t
Naudojate kitą sistemą? Grav yra atvirojo kodo plokščių failų TVS, parašyta PHP. „Grav“ šaltinio kodas viešai priglobtas „GitHub“. Šis vadovas parodys, kaip t
Naudojate kitą sistemą? Automad yra atvirojo kodo failais pagrįsta turinio valdymo sistema (TVS) ir šablonų variklis, parašytas PHP. „Automad“ šaltinio kodas i
„Raneto“ yra nemokama atvirojo kodo žinių bazė, sukurta naudojant Node.js, kurią lengva nustatyti ir naudoti, taip pat lengva administruoti. Kategorijos ir puslapiai ar
Naudojate kitą sistemą? Thelia yra atvirojo kodo įrankis, skirtas kurti el. verslo svetaines ir valdyti PHP parašytą internetinį turinį. Thelia šaltinio kodas i
Naudojate kitą sistemą? Spalio 1.0 TVS yra paprasta ir patikima, nemokama ir atviro kodo turinio valdymo sistema (TVS), sukurta remiantis Laravel sistema
Naudojate kitą sistemą? ImpressPages CMS 5.0 yra paprasta ir efektyvi, nemokama ir atviro kodo, patogi, MVC pagrįsta turinio valdymo sistema (TVS).
Naudojate kitą sistemą? CMS Made Simple 2.2 yra lanksti ir išplečiama, nemokama ir atvirojo kodo turinio valdymo sistema (TVS), sumaniai sukurta
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.
Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.
Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.
Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…
Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.
Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.
Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.
Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.
Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį