Comment installer ProcessWire CMS 3.0 sur un VPS FBS FreeBSD 11

ProcessWire CMS 3.0 est un système de gestion de contenu (CMS) simple, flexible et puissant, gratuit et open source. ProcessWire CMS 3.0 propose une API de type jQuery facile à utiliser, une architecture de plug-in entièrement modulaire et un système de modèles flexible et puissant qui offre une expérience utilisateur tout aussi satisfaisante aux concepteurs, développeurs et utilisateurs finaux.

Dans ce didacticiel, nous allons installer ProcessWire CMS 3.0 sur un VPS FBS FreeBSD 11 en utilisant le serveur Web Apache, PHP 7.1 et une base de données MariaDB.

Conditions préalables

  • Une instance de serveur Vultr FreeBSD 11 propre avec accès SSH

Étape 1: ajouter un utilisateur Sudo

Nous allons commencer par ajouter un nouvel sudoutilisateur.

Tout d'abord, connectez-vous à votre serveur en tant que root:

ssh root@YOUR_VULTR_IP_ADDRESS

La sudocommande n'est pas installée par défaut dans l'instance de serveur Vultr FreeBSD 11, nous allons donc d'abord installer sudo:

pkg install sudo

Ajoutez un nouvel utilisateur appelé user1(ou votre nom d'utilisateur préféré):

adduser user1

La addusercommande vous demandera de nombreux détails pour le compte d'utilisateur, il vous suffit donc de sélectionner les paramètres par défaut pour la plupart d'entre eux lorsque cela est logique de le faire. Lorsque vous êtes invité à le faire Invite user1 into any other groups?, vous devez entrer wheelpour ajouter user1au wheelgroupe.

Maintenant, vérifiez le /etc/sudoersfichier pour vous assurer que le sudoersgroupe est activé:

visudo

Recherchez une section comme celle-ci:

# %wheel        ALL=(ALL)       ALL

Cette ligne nous indique que les utilisateurs membres du wheelgroupe peuvent utiliser la sudocommande pour obtenir des rootprivilèges. Il sera commenté par défaut, vous devrez donc le décommenter, puis enregistrer et quitter le fichier.

Nous pouvons vérifier l' user1appartenance au groupe avec la groupscommande:

groups user1

Si user1n'est pas membre du wheelgroupe, vous pouvez utiliser cette commande pour mettre à jour l' user1appartenance au groupe:

pw group mod wheel -m user1 

Utilisez maintenant la sucommande pour basculer vers le nouveau user1compte utilisateur sudo :

su - user1

L'invite de commande sera mise à jour pour indiquer que vous êtes maintenant connecté au user1compte. Vous pouvez le vérifier avec la whoamicommande:

whoami

Redémarrez maintenant le sshdservice pour vous connecter via sshle nouveau compte utilisateur sudo non root que vous venez de créer:

sudo /etc/rc.d/sshd restart

Quittez le user1compte:

exit

Quittez le rootcompte (qui déconnectera votre sshsession):

exit

Vous pouvez maintenant sshaccéder à l'instance de serveur à partir de votre hôte local en utilisant le nouveau user1compte utilisateur sudo non root :

ssh user1@YOUR_VULTR_IP_ADDRESS

Si vous souhaitez exécuter sudosans avoir à taper un mot de passe à chaque fois, ouvrez à /etc/sudoersnouveau le fichier en utilisant visudo:

sudo visudo

Modifiez la section du wheelgroupe pour qu'elle ressemble à ceci:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Remarque: la désactivation de l'exigence de mot de passe pour l'utilisateur sudo n'est pas une pratique recommandée, mais elle est incluse ici car elle peut rendre la configuration du serveur beaucoup plus pratique et moins frustrante, en particulier pendant les sessions d'administration de systèmes plus longues. Si vous êtes préoccupé par les implications de sécurité, vous pouvez toujours rétablir la modification de configuration à l'original après avoir terminé vos tâches d'administration.

Chaque fois que vous souhaitez vous connecter au rootcompte d'utilisateur à partir du sudocompte d'utilisateur, vous pouvez utiliser l'une des commandes suivantes:

sudo -i
sudo su -

Vous pouvez quitter le rootcompte et revenir à votre sudocompte utilisateur à tout moment en tapant simplement exit.

Étape 2: Mettre à jour le système FreeBSD 11

Avant d'installer des packages sur l'instance du serveur FreeBSD, nous mettrons d'abord à jour le système.

Assurez-vous que vous êtes connecté au serveur à l'aide d'un utilisateur sudo non root et exécutez les commandes suivantes:

sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade

Étape 3: installer Apache Web Server

Installez le serveur Web Apache 2.4:

sudo pkg install apache24

Et entrez ylorsque vous y êtes invité. Utilisez maintenant la sysrccommande pour permettre au service Apache de s'exécuter automatiquement au démarrage:

sudo sysrc apache24_enable=yes

La sysrccommande met à jour le /etc/rc.conffichier de configuration, donc si vous voulez vérifier manuellement la mise à jour de la configuration, vous pouvez simplement ouvrir le /etc/rc.conffichier avec votre éditeur de terminal préféré:

vi /etc/rc.conf

Démarrez maintenant le service Apache:

sudo service apache24 start

Vous pouvez rapidement vérifier que Apache fonctionne en visitant l'adresse IP ou le domaine de l'instance de serveur dans votre navigateur:

http://YOUR_VULTR_IP_ADDRESS/

Vous verrez la page par défaut de FreeBSD Apache affichant le texte:

It works!

Vérifiez votre fichier de configuration par défaut Apache pour vous assurer que la DocumentRootdirective pointe vers le bon répertoire:

sudo vi /usr/local/etc/apache24/httpd.conf

L' DocumentRootoption de configuration ressemblera à ceci:

DocumentRoot "/usr/local/www/apache24/data"

Nous devons maintenant activer le mod_rewritemodule Apache. Pour ce faire, recherchez le terme dans le fichier de configuration Apache par défaut mod_rewrite.

Par défaut, le mod_rewritemodule Apache sera commenté (ce qui signifie qu'il est désactivé). La ligne de configuration sur une instance propre de Vultr FreeBSD 11 ressemblera à ceci:

#LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Retirez simplement le symbole de hachage pour décommenter la ligne et charger le module. Bien entendu, cela s'applique également à tous les autres modules Apache requis:

LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Nous devons maintenant modifier la Directorydirective Apache dans le même fichier de configuration afin que mod_rewritecela fonctionne correctement avec ProcessWire CMS.

Recherchez la section du fichier de configuration qui commence par <Directory "/usr/local/www/apache24/data">et passez AllowOverride noneà AllowOverride All. Le résultat final (avec tous les commentaires supprimés) ressemblera à ceci:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Maintenant, enregistrez et quittez le fichier de configuration Apache.

Nous redémarrerons Apache à la fin de ce tutoriel, mais redémarrer régulièrement Apache pendant l'installation et la configuration est certainement une bonne habitude, alors faisons-le maintenant:

sudo service apache24 restart

Étape 4: installez PHP 7.1

Nous pouvons maintenant installer PHP 7.1 avec tous les modules PHP nécessaires requis par ProcessWire CMS:

sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip

FreeBSD 11 nous donne la possibilité d'utiliser un développement php.iniou une production php.ini. Puisque nous allons installer Siverstripe sur un serveur Web public, nous utiliserons la version de production. Tout d'abord, sauvegardez php.ini-production:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup

Créez ensuite un lien logiciel php.ini-productionvers php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Nous devons configurer Apache pour utiliser réellement PHP, alors créons un nouveau fichier appelé php.confdans le Includesrépertoire Apache :

sudo vi /usr/local/etc/apache24/Includes/php.conf

Saisissez le texte suivant dans le fichier nouvellement créé:

<IfModule dir_module>
    DirectoryIndex index.php index.html
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

Enregistrez et quittez le fichier.

Redémarrons maintenant Apache pour qu'il puisse recharger les modifications de configuration:

sudo service apache24 restart

Étape 5: installer le serveur MariaDB (MySQL)

Par défaut, FreeBSD 11 utilise le serveur de base de données MariaDB, qui est un remplacement amélioré, entièrement open source, développé par la communauté, pour le serveur MySQL.

Installez le serveur de base de données MariaDB:

sudo pkg install mariadb102-server mariadb102-client

Démarrez et activez le serveur MariaDB pour qu'il s'exécute automatiquement au démarrage:

sudo sysrc mysql_enable="yes"
sudo service mysql-server start

Sécurisez l'installation de votre serveur MariaDB:

sudo mysql_secure_installation

Lorsque vous êtes invité à créer un utilisateur MariaDB / MySQL root, sélectionnez "Y" (pour oui), puis entrez un rootmot de passe sécurisé . Répondez simplement "Y" à toutes les autres questions oui / non car les suggestions par défaut sont les options les plus sûres.

Étape 6: créer une base de données pour ProcessWire CMS

Connectez-vous au shell MariaDB en tant rootqu'utilisateur MariaDB en exécutant la commande suivante:

sudo mysql -u root -p

Pour accéder à l'invite de commande MariaDB, entrez simplement le rootmot de passe MariaDB lorsque vous y êtes invité.

Exécutez les requêtes suivantes pour créer une base de données MariaDB et un utilisateur de base de données pour ProcessWire CMS:

CREATE DATABASE pw_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'pw_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON pw_db.* TO 'pw_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Vous pouvez remplacer le nom pw_dbet le nom pw_userd' utilisateur de la base de données par quelque chose de plus à votre goût, si vous préférez. Assurez-vous également de remplacer "UltraSecurePassword" par un mot de passe réellement sécurisé.

Étape 7: installer les fichiers CMS ProcessWire

Remplacez votre répertoire de travail actuel par le répertoire Web par défaut:

cd /usr/local/www/apache24/data

Votre répertoire de travail courant devrait maintenant être: /usr/local/www/apache24/data. Vous pouvez vérifier cela avec la commande pwd(imprimer le répertoire de travail):

pwd

Utilisez maintenant wgetpour télécharger le package d'installation de ProcessWire CMS:

sudo wget https://github.com/processwire/processwire/archive/master.zip

Remarque: vous devez absolument vérifier la version la plus récente en visitant la page de téléchargement du ProcessWire CMS .

Répertoriez le répertoire actuel pour vérifier que vous avez correctement téléchargé le fichier:

ls -la

Supprimer index.html:

sudo rm index.html

Décompressez maintenant l'archive zip:

sudo unzip master.zip

Déplacez tous les fichiers d'installation dans le répertoire racine Web:

sudo mv processwire-master/* /usr/local/www/apache24/data

Modifiez la propriété des fichiers Web pour éviter tout problème d'autorisation:

sudo chown -R www:www * ./

Redémarrez Apache à nouveau:

sudo service apache24 restart

Étape 8: installation complète de ProcessWire CMS

Il est maintenant temps de visiter l'adresse IP de votre instance de serveur dans votre navigateur, ou si vous avez déjà configuré vos paramètres DNS Vultr (et lui avez donné suffisamment de temps pour se propager), vous pouvez simplement visiter votre domaine à la place.

Pour accéder à la page d'installation de ProcessWire CMS, entrez votre adresse IP d'instance Vultr dans la barre d'adresse de votre navigateur, puis index.php:

http://YOUR_VULTR_IP_ADDRESS/install.php

Le programme d'installation de ProcessWire CMS contient de nombreuses options, voici donc quelques conseils pour vous aider:

  1. Sur la page d'accueil de l'installation de ProcessWire CMS, cliquez sur le Get Startedbouton pour démarrer le processus d'installation.

  2. Sélectionnez maintenant votre profil d'installation préféré (ou site de démonstration) et cliquez sur Continue.

  3. Vous verrez une Compatibility Checkpage. Si vous voyez des erreurs, cela signifie probablement que certains modules PHP vous manquent ou que vous avez un problème d'autorisations, sinon vous pouvez simplement cliquer sur Continue.

  4. Entrez les valeurs suivantes dans la MySQL Database Settingspage:

    DB Name:            pw_db
    DB User:            pw_user
    DB Pass:            UltraSecurePassword
    DB Host:            localhost
    DB Port:            3306
    
  5. Vous pouvez laisser les File Permissionparamètres à leurs valeurs par défaut, ou vous pouvez les ajuster si vous comprenez les implications.

  6. Vous pouvez entrer les futurs noms d'hôte de votre site dans la section appropriée, ou vous pouvez modifier le site/config.phpfichier plus tard si vous préférez.

  7. Cliquez sur Continuepour configurer la base de données et installer les fichiers CMS ProcessWire.

  8. Ensuite, sélectionnez votre préférence Admin Theme.

  9. Vous pouvez modifier le Admin URLsi vous préférez, ou vous pouvez simplement le laisser à la valeur par défaut.

  10. Entrez votre Admin Login Detailscomme indiqué ci-dessous:

    User (a-z 0-9):     <admin username>
    Password:           <admin password>
    Password (again):   <same admin password>
    Email Address:      <admin email address>
    
  11. Une fois que tous les détails appropriés ont été saisis, vous pouvez cliquer Continuepour finaliser l'installation de ProcessWire.

  12. Une fois l'installation terminée, cliquez simplement sur le Login to Adminbouton pour vous connecter à la section Admin.

Vous pouvez voir un avertissement disant quelque chose comme:

Warning: your server locale is undefined and may cause issues. Please add this to /site/config.php file (adjust en_US.UTF-8†as needed): setlocale(LC_ALL,'en_US.UTF-8');

Vous pouvez corriger cette erreur en modifiant le site/config.phpfichier:

sudo vi site/config.php

Ajoutez la valeur appropriée à la fin du fichier:

setlocale(LC_ALL,'en_GB.utf8');

Si vous ne pouvez pas déterminer la valeur à utiliser, vous pouvez trouver une liste de valeurs appropriées pour votre instance de serveur particulière en exécutant la localecommande:

locale -a

N'oubliez pas d'enregistrer et de quitter le site/config.phpfichier lorsque vous avez terminé la modification.

Pour des raisons de sécurité, assurez-vous de modifier les autorisations sur le site/config.phpfichier:

sudo chmod 400 site/config.php

Redémarrez Apache.

sudo service apache24 restart

Vous êtes prêt à commencer à ajouter votre contenu et à configurer l'apparence de votre site. Assurez-vous de consulter l'excellente documentation ProcessWire CMS pour plus d'informations sur la création et la configuration de votre site.



Leave a Comment

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

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 : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

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.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

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+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

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.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

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 dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

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

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

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 danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1

Limpact de lintelligence artificielle dans les soins de santé 2021

Limpact de lintelligence artificielle dans les soins de santé 2021

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.