Fuel CMS installeren op Ubuntu 16.04 LTS
Gebruikt u een ander systeem? Fuel CMS is een op CodeIgniter gebaseerd contentmanagementsysteem. De broncode wordt gehost op GitHub. Deze gids laat zien hoe t
dotCMS is een open source enterprise content management systeem geschreven in Java. Het bevat bijna alle functies die nodig zijn om een website voor uw bedrijf te maken. Het biedt een RESTful API om te integreren met andere services zoals CRM, mobiele applicaties en meer. Het gebruikt Elasticsearch voor real-time indexering van inhoud en Redis voor het implementeren van multi-tier cache.
Dit artikel is geschreven voor dotCMS 4.2.2, maar de gegeven instructies kunnen ook werken voor nieuwere versies.
Voor deze tutorial zullen we gebruiken 192.168.0.1
als het openbare IP-adres en cms.example.com
als de domeinnaam die naar de Vultr-instantie verwijst. Zorg ervoor dat u alle exemplaren van de voorbeelddomeinnaam en het openbare IP-adres vervangt door de werkelijke.
Update uw basissysteem met behulp van de handleiding CentOS 7 updaten . Zodra uw systeem is bijgewerkt, gaat u verder met de installatie van Java.
OpenJDK kan eenvoudig worden geïnstalleerd omdat het pakket beschikbaar is in de standaard YUM-repository.
sudo yum -y install java-1.8.0-openjdk-devel
Als Java correct is geïnstalleerd, kunt u de versie ervan verifiëren.
java -version
Je krijgt een vergelijkbare 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)
Voordat we verder kunnen gaan, moeten we de JAVA_HOME
en JRE_HOME
omgevingsvariabelen instellen. Zoek het absolute pad van het Java-uitvoerbare bestand op uw systeem.
readlink -f $(which java)
U zult een vergelijkbare uitvoer zien.
[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
Stel nu de JAVA_HOME
en JRE_HOME
omgevingsvariabelen in volgens het pad van de Java-directory.
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
Voer het bash_profile
bestand uit.
source ~/.bash_profile
Nu kunt u de echo $JAVA_HOME
opdracht uitvoeren om ervoor te zorgen dat de omgevingsvariabele is ingesteld.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
DotCMS is standaard geconfigureerd om de H2-database-engine te gebruiken. De H2-database-engine is een platte database-database-engine. Het wordt niet aanbevolen om in productie te gebruiken. In deze tutorial gebruiken we de PostgreSQL-server om de dotCMS-database op te slaan.
PostgreSQL is een object-relationeel databasesysteem en staat bekend om zijn stabiliteit en snelheid. Voeg de repository van de laatste release van PostgreSQL toe aan het systeem.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installeer de PostgreSQL-databaseserver.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initialiseer de database.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Start de PostgreSQL-server en schakel deze in om automatisch te starten tijdens het opstarten.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Wijzig het wachtwoord voor de standaard PostgreSQL-gebruiker.
sudo passwd postgres
Log in als de standaard PostgreSQL-gebruiker.
sudo su - postgres
Maak een nieuwe PostgreSQL-gebruiker voor dotCMS.
createuser dotcms
PostgreSQL biedt de psql
shell om query's op de databaseserver uit te voeren. Schakel over naar de PostgreSQL-shell.
psql
Stel een wachtwoord in voor de nieuw aangemaakte gebruiker voor de dotCMS-database.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Vervang het databasegebruikerswachtwoord DBPassword
door een veilig wachtwoord. Maak een nieuwe database voor de dotCMS-installatie.
CREATE DATABASE dotcms OWNER dotcms;
Verlaat de psql
schelp.
\q
Schakel over naar de sudo
gebruiker.
exit
Download het dotCMS-archief.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
De link naar de laatste versie van de applicatie vind je altijd op de dotCMS downloadpagina .
Maak een nieuwe map aan om de dotCMS-bestanden op te slaan en uit te pakken.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Open het databaseconfiguratiebestand.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Vind het H2
blok.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Geef commentaar op de hele H2
sectie door het scheidingsteken voor opmerkingen -->
van het begin van de sectie tot het einde van de sectie te vervangen. Het zou er als volgt uit moeten zien.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Maak commentaar op de PostgreSQL-sectie door het scheidingsteken voor opmerkingen -->
aan het einde van de sectie te verwijderen en op de bovenste verpakking te plaatsen POSTGRESQL
. Zoek username=
en password=
vervang ook de bestaande waarden door de gebruikersnaam en het wachtwoord van uw PostgreSQL-databasegebruiker. Als u een andere databasenaam hebt gebruikt dan dotcms
, moet u de databasenaam wijzigen in url=
. Eenmaal geconfigureerd, zou het PostgreSQL-blok in het bestand er als volgt uit moeten zien.
<!-- 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" />
Geef de uitvoeringsmachtiging voor alle uitvoerbare bestanden.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS is nu op uw server geïnstalleerd. Voer het volgende uit om de applicatie onmiddellijk uit te voeren.
cd /opt/dotcms
sudo bin/startup.sh
U zult de volgende uitvoer zien wanneer de server succesvol is gestart.
[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.
De bovenstaande opdracht start de Tomcat-webserver om de applicatie op de poort te bedienen 8080
. Om te controleren of de dotCMS-website werkt, staat u de vereiste poort toe 8080
via de systeemfirewall.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Open uw favoriete browser en blader naar http://192.168.0.1:8080
. Je zou moeten zien dat de applicatie een demo-website heeft. Als u uw website niet ziet, wacht dan even, aangezien de eerste keer opstarten van de dotCMS-server een paar minuten in beslag neemt, aangezien het gegevens in de PostgreSQL-database schrijft en de cache opbouwt. U kunt ook de opstartlogboeken controleren.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
De dotCMS-server kan direct worden gestart met behulp van het opstartscript in het installatiepakket. Gemakshalve moet u een Systemd-eenheidsbestand voor de dotCMS-server opzetten. Dit zorgt ervoor dat de toepassingsserver automatisch wordt gestart bij het herstarten van het systeem en storingen.
Stop de actieve dotCMS-server met behulp van het shutdown-script.
sudo bin/shutdown.sh
Maak om veiligheidsredenen een onbevoegde gebruiker voor het uitvoeren van de dotCMS-server.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Geef de bestanden eigendom aan de dotCMS-gebruiker.
sudo chown -R dotcms:dotcms /opt/dotcms
Maak een nieuwe Systemd-service.
sudo nano /etc/systemd/system/dotcms.service
Vul het bestand in.
[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 de applicatie en schakel deze automatisch in tijdens het opstarten.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Zorg ervoor dat de service actief is.
sudo systemctl status dotcms
Standaard luistert de dotCMS-server op poort 8080
. We zullen Nginx configureren als de reverse proxy, zodat de applicatie toegankelijk is via standaard HTTP
en HTTPS
poorten. We zullen Nginx ook configureren om SSL te gebruiken die is gegenereerd met Let's Encrypt gratis SSL.
Installeer de Nginx-webserver.
sudo yum -y install nginx
Start de webserver en schakel deze automatisch in tijdens het opstarten.
sudo systemctl start nginx
sudo systemctl enable nginx
Installeer Certbot, een clienttoepassing voor Let's Encrypt CA.
sudo yum -y install certbot
Voordat u de certificaten kunt aanvragen, moet u de poorten 80
en / 443
of standaard HTTP
en HTTPS
services via de firewall toestaan . Verwijder ook de poort 8080
uit de lijst met firewalluitzonderingen, aangezien deze niet langer vereist is.
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
Opmerking: om certificaten van Let's Encrypt CA te verkrijgen, moet het domein waarvoor de certificaten moeten worden gegenereerd, naar de server worden gericht. Zo niet, breng dan de nodige wijzigingen aan in de DNS-records van het domein en wacht tot de DNS is gepropageerd voordat u opnieuw een certificaataanvraag indient. Certbot controleert de domeinautoriteit voordat de certificaten worden verstrekt.
Genereer de SSL-certificaten.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
De gegenereerde certificaten worden waarschijnlijk opgeslagen in /etc/letsencrypt/live/cms.example.com/
. Let's Encrypt-certificaten verlopen over 90 dagen, daarom wordt aanbevolen om de automatische verlenging van de certificaten in te stellen met Cron-taken.
Open het cron-taakbestand.
sudo crontab -e
Voeg de volgende regel toe aan het einde van het bestand.
30 5 * * * /usr/bin/certbot renew --quiet
De bovenstaande cron-taak wordt elke dag om 05.30 uur uitgevoerd. Als het certificaat vervalt, wordt het automatisch verlengd.
Maak een nieuw serverblokbestand voor de dotCMS-site.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Vul het bestand in.
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 de Nginx-webserver opnieuw op, zodat de wijzigingen van kracht kunnen worden.
sudo systemctl restart nginx
De dotCMS-applicatie is nu op uw server geïnstalleerd voor productiegebruik. Ga naar het administratieve dashboard op het volgende adres.
https://cms.example.com/dotAdmin
Meld u aan met het oorspronkelijke beheerdersaccount [email protected]
en admin
. Wijzig het standaardwachtwoord onmiddellijk na het inloggen.
Gefeliciteerd, het contentbeheersysteem dotCMS is nu op uw server geïnstalleerd. U kunt de demosite wijzigen of u kunt helemaal opnieuw beginnen met het bouwen van uw site.
Gebruikt u een ander systeem? Fuel CMS is een op CodeIgniter gebaseerd contentmanagementsysteem. De broncode wordt gehost op GitHub. Deze gids laat zien hoe t
Gebruikt u een ander systeem? Neos is een Content Application Platform met een CMS en een applicatieframework als kern. Deze gids laat u zien hoe u kunt installeren
Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen
Gebruikt u een ander systeem? Subrion 4.1 CMS is een krachtig en flexibel open source Content Management Systeem (CMS) dat een intuïtieve en duidelijke inhoud
Gebruikt u een ander systeem? BigTree CMS 4.2 is een snel en lichtgewicht, gratis en open source, enterprise-grade content management systeem (CMS) met uitgebreide en
Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen
Gebruikt u een ander systeem? WonderCMS is een open source, snel en klein, plat bestand CMS geschreven in PHP. WonderCMS-broncode wordt gehost op Github. Deze gids zal
Gebruikt u een ander systeem? Neos is een Content Application Platform met een CMS en een applicatieframework als kern. Deze gids laat u zien hoe u kunt installeren
Gebruikt u een ander systeem? Alfresco Community Edition is een open source-versie van de Alfresco Content Services. Het is geschreven in Java en gebruikt PostgreSQL t
Gebruikt u een ander systeem? BigTree CMS 4.2 is een snel en lichtgewicht, gratis en open source, enterprise-grade Content Management System (CMS) met uitgebreide en
Gebruikt u een ander systeem? Omeka Classic 2.4 CMS is een gratis en open source digitaal publicatieplatform en Content Management System (CMS) voor het delen van digita
Gebruikt u een ander systeem? Craft CMS is een open source CMS geschreven in PHP. De broncode van Craft CMS wordt gehost op GitHub. Deze gids laat u zien hoe u kunt installeren
Gebruikt u een ander systeem? ImpressPages CMS 5.0 is een eenvoudig en effectief, gratis en open source, gebruiksvriendelijk, op MVC gebaseerd Content Management Systeem (CMS)
Gebruikt u een ander systeem? Automad is een open source file-based content management systeem (CMS) en template engine geschreven in PHP. De Automad-broncode i
Gebruikt u een ander systeem? Directus 6.4 CMS is een krachtig en flexibel, gratis en open source Headless Content Management System (CMS) dat ontwikkelaars voorziet
Gebruikt u een ander systeem? ProcessWire CMS 3.0 is een eenvoudig, flexibel en krachtig, gratis en open source Content Management System (CMS). ProcessWire CMS 3.
Gebruikt u een ander systeem? TYPO3 is een gratis en open source content management systeem voor bedrijven. Het is geschreven in PHP en gebruikt MySQL om de gegevens op te slaan. TYPFOUT
Gebruikt u een ander systeem? Backdrop CMS 1.8.0 is een eenvoudig en flexibel, mobielvriendelijk, gratis en open source Content Management System (CMS) waarmee we
Gebruikt u een ander systeem? Anchor is een lichtgewicht open source blog CMS geschreven in PHP. De broncode van Anchors wordt gehost op GitHub. Deze gids laat je zien ho
Gebruikt u een ander systeem? Microweber is een open source CMS voor slepen en neerzetten en een online winkel. De broncode van Microweber wordt gehost op GitHub. Deze gids zal je laten zien
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.