Comment installer Thelia 2.3 sur CentOS 7
Vous utilisez un système différent? Thelia est un outil open source pour la création de sites Web de commerce électronique et la gestion de contenu en ligne, écrit en PHP. Code source Thelia i
dotCMS est un système de gestion de contenu d'entreprise open source écrit en Java. Il contient presque toutes les fonctionnalités requises pour créer un site Web pour votre entreprise. Il fournit une API RESTful pour s'intégrer à d'autres services tels que le CRM, les applications mobiles, etc. Il utilise Elasticsearch pour l'indexation en temps réel du contenu et Redis pour implémenter le cache à plusieurs niveaux.
Cet article a été écrit pour dotCMS 4.2.2, mais les instructions fournies peuvent également fonctionner pour les versions plus récentes.
Pour ce didacticiel, nous utiliserons 192.168.0.1
comme adresse IP publique et cms.example.com
comme nom de domaine pointé vers l'instance Vultr. Veuillez vous assurer de remplacer toutes les occurrences de l'exemple de nom de domaine et de l'adresse IP publique par celui-ci.
Mettez à jour votre système de base à l'aide du guide Comment mettre à jour CentOS 7 . Une fois votre système mis à jour, installez Java.
OpenJDK peut être facilement installé car le package est disponible dans le référentiel YUM par défaut.
sudo yum -y install java-1.8.0-openjdk-devel
Si Java est installé correctement, vous pourrez vérifier sa version.
java -version
Vous obtiendrez une sortie similaire.
[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)
Avant de continuer, nous devrons configurer les variables d'environnement JAVA_HOME
et JRE_HOME
. Trouvez le chemin absolu de l'exécutable Java sur votre système.
readlink -f $(which java)
Vous verrez une sortie similaire.
[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
Maintenant, définissez les variables d'environnement JAVA_HOME
et en JRE_HOME
fonction du chemin du répertoire 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
Exécutez le bash_profile
fichier.
source ~/.bash_profile
Vous pouvez maintenant exécuter la echo $JAVA_HOME
commande pour vous assurer que la variable d'environnement est définie.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Par défaut, dotCMS est configuré pour utiliser le moteur de base de données H2. Le moteur de base de données H2 est un moteur de base de données basé sur des fichiers plats. Il n'est pas recommandé de l'utiliser en production. Dans ce tutoriel, nous utiliserons le serveur PostgreSQL pour stocker la base de données dotCMS.
PostgreSQL est un système de base de données relationnelle objet et connu pour sa stabilité et sa vitesse. Ajoutez le référentiel de la dernière version de PostgreSQL dans le système.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installez le serveur de base de données PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initialisez la base de données.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Démarrez le serveur PostgreSQL et activez-le pour démarrer automatiquement au démarrage.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Modifiez le mot de passe de l'utilisateur PostgreSQL par défaut.
sudo passwd postgres
Connectez-vous en tant qu'utilisateur PostgreSQL par défaut.
sudo su - postgres
Créez un nouvel utilisateur PostgreSQL pour dotCMS.
createuser dotcms
PostgreSQL fournit le psql
shell pour exécuter des requêtes sur le serveur de base de données. Basculez vers le shell PostgreSQL.
psql
Définissez un mot de passe pour l'utilisateur nouvellement créé pour la base de données dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Remplacez le mot DBPassword
de passe utilisateur de la base de données par un mot de passe sécurisé. Créez une nouvelle base de données pour l'installation dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Sortez du psql
shell.
\q
Passez à l' sudo
utilisateur.
exit
Téléchargez l'archive dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Vous pouvez toujours trouver le lien vers la dernière version de l'application sur la page de téléchargement dotCMS .
Créez un nouveau répertoire pour stocker les fichiers dotCMS et extrayez-les dedans.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Ouvrez le fichier de configuration de la base de données.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Trouvez le H2
bloc.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Mettez en commentaire la H2
section entière en remplaçant le délimiteur -->
de commentaires du début à la fin de la section. Il devrait ressembler à ce qui suit.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Supprimez la mise en commentaire -->
de la section PostgreSQL en supprimant le délimiteur de commentaires à la fin de la section et en le plaçant sur l'enveloppe supérieure POSTGRESQL
. , Trouver également username=
et password=
et remplacer les valeurs existantes avec le nom d' utilisateur et mot de passe utilisateur de votre base de données PostgreSQL. Si vous avez utilisé un nom de base de données autre que dotcms
, vous devrez modifier le nom de la base de données dans url=
. Une fois configuré, le bloc PostgreSQL dans le fichier devrait ressembler à ce qui suit.
<!-- 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" />
Fournissez l'autorisation d'exécution pour tous les fichiers exécutables.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS est maintenant installé sur votre serveur. Pour exécuter immédiatement l'application, exécutez ce qui suit.
cd /opt/dotcms
sudo bin/startup.sh
Vous verrez la sortie suivante lorsque le serveur a démarré avec succès.
[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.
La commande ci-dessus démarre le serveur Web Tomcat pour servir l'application sur le port 8080
. Pour vérifier si le site Web dotCMS fonctionne, autorisez le port requis 8080
via le pare-feu du système.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Ouvrez votre navigateur préféré et accédez à http://192.168.0.1:8080
. Vous devriez voir que l'application exécute un site Web de démonstration. Si vous ne voyez pas votre site Web, veuillez patienter, car le premier démarrage du serveur dotCMS prend quelques minutes car il écrit des données dans la base de données PostgreSQL et crée le cache. Vous pouvez également consulter les journaux de démarrage.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
Le serveur dotCMS peut être démarré directement à l'aide du script de démarrage fourni dans le package d'installation. Par souci de commodité, vous devez configurer un fichier d'unité Systemd pour le serveur dotCMS. Cela garantira que le serveur d'applications démarre automatiquement au redémarrage et aux échecs du système.
Arrêtez le serveur dotCMS en cours d'exécution à l'aide du script d'arrêt.
sudo bin/shutdown.sh
Créez un utilisateur non privilégié pour exécuter le serveur dotCMS, pour des raisons de sécurité.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Attribuez la propriété des fichiers à l'utilisateur dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Créez un nouveau service Systemd.
sudo nano /etc/systemd/system/dotcms.service
Remplissez le fichier.
[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
Démarrez l'application et activez-la pour qu'elle démarre automatiquement au démarrage.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Assurez-vous que le service est en cours d'exécution.
sudo systemctl status dotcms
Par défaut, le serveur dotCMS écoute sur le port 8080
. Nous allons configurer Nginx comme proxy inverse afin que l'application soit accessible via la norme HTTP
et les HTTPS
ports. Nous allons également configurer Nginx pour utiliser SSL généré avec Let's Encrypt SSL gratuit.
Installez le serveur Web Nginx.
sudo yum -y install nginx
Démarrez le serveur Web et activez-le pour qu'il démarre automatiquement au démarrage.
sudo systemctl start nginx
sudo systemctl enable nginx
Installez Certbot, qui est une application cliente de Let's Encrypt CA.
sudo yum -y install certbot
Avant de pouvoir demander les certificats, vous devez autoriser les ports 80
et / 443
ou la norme HTTP
et les HTTPS
services à travers le pare-feu. Supprimez également le port 8080
de la liste des exceptions de pare-feu car il n'est plus nécessaire.
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
Remarque: Pour obtenir des certificats de Let's Encrypt CA, le domaine pour lequel les certificats doivent être générés doit être dirigé vers le serveur. Sinon, apportez les modifications nécessaires aux enregistrements DNS du domaine et attendez que le DNS se propage avant de refaire la demande de certificat. Certbot vérifie l'autorité de domaine avant de fournir les certificats.
Générez les certificats SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
Les certificats générés sont susceptibles d'être stockés dans /etc/letsencrypt/live/cms.example.com/
. Les certificats Let's Encrypt expirent dans 90 jours, il est donc recommandé de configurer le renouvellement automatique des certificats à l'aide des tâches Cron.
Ouvrez le fichier de tâche cron.
sudo crontab -e
Ajoutez la ligne suivante à la fin du fichier.
30 5 * * * /usr/bin/certbot renew --quiet
La tâche cron ci-dessus s'exécutera tous les jours à 5h30. Si le certificat doit expirer, il sera automatiquement renouvelé.
Créez un nouveau fichier de blocage de serveur pour le site dotCMS.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Remplissez le fichier.
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;
}
}
Redémarrez le serveur Web Nginx pour que les modifications prennent effet.
sudo systemctl restart nginx
L'application dotCMS est maintenant installée sur votre serveur pour une utilisation en production. Accédez au tableau de bord administratif à l'adresse suivante.
https://cms.example.com/dotAdmin
Connectez-vous en utilisant le compte administrateur initial [email protected]
et admin
. Modifiez le mot de passe par défaut immédiatement après la connexion.
Félicitations, le système de gestion de contenu dotCMS est maintenant installé sur votre serveur. Vous pouvez modifier le site de démonstration ou vous pouvez commencer à créer votre site à partir de zéro.
Vous utilisez un système différent? Thelia est un outil open source pour la création de sites Web de commerce électronique et la gestion de contenu en ligne, écrit en PHP. Code source Thelia i
Vous utilisez un système différent? Fuel CMS est un système de gestion de contenu basé sur CodeIgniter. Son code source est hébergé sur GitHub. Ce guide vous montrera comment
Vous utilisez un système différent? Alfresco Community Edition est une version open source des services de contenu Alfresco. Il est écrit en Java et utilise PostgreSQL t
Vous utilisez un système différent? WonderCMS est un CMS open source, rapide et petit fichier plat écrit en PHP. Le code source de WonderCMS est hébergé sur Github. Ce guide sera
Vous utilisez un système différent? Redaxscript 3.2 CMS est un système de gestion de contenu (CMS) moderne et ultra léger, gratuit et open source avec rocket-fas
Vous utilisez un système différent? Neos est une plate-forme dapplication de contenu avec un CMS et un cadre dapplication en son cœur. Ce guide vous montrera comment installer
Vous utilisez un système différent? Octobre 1.0 CMS est un système de gestion de contenu (CMS) simple et fiable, gratuit et open source basé sur le framework Laravel
Vous utilisez un système différent? Subrion 4.1 CMS est un système de gestion de contenu (CMS) open source puissant et flexible qui apporte un contenu intuitif et clair
Vous utilisez un système différent? ImpressPages CMS 5.0 est un système de gestion de contenu (CMS) simple et efficace, gratuit et open source, convivial et basé sur MVC
Vous utilisez un système différent? Introduction BoltWire est un système de gestion de contenu gratuit et léger écrit en PHP. Comparé à la plupart des autres gestionnaires de contenu
Vous utilisez un système différent? Fuel CMS est un système de gestion de contenu basé sur CodeIgniter. Son code source est hébergé sur GitHub. Ce guide vous montrera comment
Bolt est un CMS open source écrit en PHP. Le code source de Bolts est hébergé sur GitHub. Ce guide vous montrera comment installer Bolt CMS sur un nouveau CentOS 7 Vult
Vous utilisez un système différent? Redaxscript 3.2 CMS est un système de gestion de contenu (CMS) moderne et ultra léger, gratuit et open source avec rocket-fas
Raneto est une base de connaissances gratuite et open-source, construite sur Node.js qui est facile à configurer et à utiliser, ainsi que facile à administrer. Catégories et pages ar
Vous utilisez un système différent? Couch CMS est un système de gestion de contenu (CMS) simple et flexible, gratuit et open source qui permet aux concepteurs de sites Web de
Vous utilisez un système différent? Fork est un CMS open source écrit en PHP. Le code source de Forks est hébergé sur GitHub. Ce guide vous montrera comment installer Fork CM
Vous utilisez un système différent? ImpressPages CMS 5.0 est un système de gestion de contenu (CMS) simple et efficace, gratuit et open source, convivial et basé sur MVC
Vous utilisez un système différent? Pagekit 1.0 CMS est un système de gestion de contenu (CMS) beau, modulaire, extensible et léger, gratuit et open source avec
Vous utilisez un système différent? DotCMS est un système de gestion de contenu open-source de niveau entreprise écrit en Java. Il contient presque toutes les fonctionnalités requises t
Vous utilisez un système différent? Backdrop CMS 1.8.0 est un système de gestion de contenu (CMS) simple et flexible, adapté aux mobiles, gratuit et open source qui nous permet
Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau
ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.
Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+
Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.
Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus
13 outils commerciaux d'extraction de données de Big Data
Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true
Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.
Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1
L'IA dans le domaine de la santé a fait de grands progrès au cours des dernières décennies. Ainsi, l'avenir de l'IA dans les soins de santé continue de croître de jour en jour.