Installation

De Wiki de Jordan LE NUFF
Sauter à la navigation Sauter à la recherche
(Page créée avec « == Présentation == Cette page a pour objet de montrer comment installer WordPress. == Déploiement des sources == Télécharger la dernière version de WordPress depuis… »)
 
 
Ligne 2 : Ligne 2 :
 
Cette page a pour objet de montrer comment installer WordPress.
 
Cette page a pour objet de montrer comment installer WordPress.
  
== Déploiement des sources ==
+
==Mode interactif==
 +
=== Déploiement des sources ===
 
Télécharger la dernière version de WordPress depuis le [https://wordpress.org/ site officel] :
 
Télécharger la dernière version de WordPress depuis le [https://wordpress.org/ site officel] :
 
  wget -O ~/downloads/wordpress-5.2.3-fr_FR.tar.gz https://fr.wordpress.org/latest-fr_FR.tar.gz
 
  wget -O ~/downloads/wordpress-5.2.3-fr_FR.tar.gz https://fr.wordpress.org/latest-fr_FR.tar.gz
Ligne 12 : Ligne 13 :
 
  chown -R www:www /data/www/monsite.fr
 
  chown -R www:www /data/www/monsite.fr
  
==Création base de données==
+
===Création base de données===
 
Se connecter à la base de données MySQL avec l'utilisateur ''root'' :
 
Se connecter à la base de données MySQL avec l'utilisateur ''root'' :
 
  mysql -uroot -p
 
  mysql -uroot -p
Ligne 48 : Ligne 49 :
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==Assistant d'installation==
+
===Assistant d'installation===
 
Une fois les sources déployées et la base de données créée, se rendre sur la page d'accueil http://monsite.fr/ :
 
Une fois les sources déployées et la base de données créée, se rendre sur la page d'accueil http://monsite.fr/ :
 
:[[Fichier:ClipCapIt-201009-104401.PNG|none|thumb|300px|WordPress - Accueil installation]]
 
:[[Fichier:ClipCapIt-201009-104401.PNG|none|thumb|300px|WordPress - Accueil installation]]
Ligne 74 : Ligne 75 :
 
Cliquer sur ''Se connecter'' pour commencer à utiliser le site WordPress
 
Cliquer sur ''Se connecter'' pour commencer à utiliser le site WordPress
  
==Sauvegarde du compte admin==
+
===Sauvegarde du compte admin===
 
En cas de réinitialisation malencontreuse du compte admin (par un autre compte administrateur par exemple), penser à récupérer les valeurs correspondant à l'ID '''1''' dans la base de données ''wp_monsite_db'', dans la table ''wp_users'' et les sauvegarder dans un endroit approprié.
 
En cas de réinitialisation malencontreuse du compte admin (par un autre compte administrateur par exemple), penser à récupérer les valeurs correspondant à l'ID '''1''' dans la base de données ''wp_monsite_db'', dans la table ''wp_users'' et les sauvegarder dans un endroit approprié.
  
Ligne 116 : Ligne 117 :
  
 
La valeur '''user_pass''' est cryptée. Il faudra la ré-importer telle quelle pour redéfinir le mot à son état d'origine.
 
La valeur '''user_pass''' est cryptée. Il faudra la ré-importer telle quelle pour redéfinir le mot à son état d'origine.
 +
 +
==Mode ligne de commande==
 +
===Installation de l'outil wp-cli===
 +
En tant qu'utilisateur '''root''', télécharger l'outil <code>wp-cli</code> :
 +
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
 +
 +
Lui donner les droits d'exécution :
 +
chmod 755 wp-cli.phar
 +
 +
Le renommer et le déployer dans <code>/usr/local/bin/wp-cli</code> :
 +
mv wp-cli.phar /usr/local/bin/wp
 +
 +
'''Attention !''' Pour les serveurs exécutant plusieurs versions de PHP, il faut s'assurer de disposer du binaire PHP approprié dans le <code>PATH</code> du serveur pour pouvoir utiliser la commande <code>wp</code>.
 +
 +
Pour vérifier que la commande <code>wp</code> fonctionne comme attendu, lancer la commande :
 +
wp --info
 +
 +
Exemple de retour :
 +
{{terminal|text=
 +
[root@myserver ~{{!}}PHP 7.4.7]# wp --info
 +
OS:    Linux 3.10.0-1160.6.1.el7.x86_64 #1 SMP Tue Nov 17 13:59:11 UTC 2020 x86_64
 +
Shell:  /bin/bash
 +
PHP binary:    /opt/php/php-7.4.7/bin/php
 +
PHP version:    7.4.7
 +
php.ini used:  /opt/php/php-7.4.7/php.ini
 +
MySQL binary:
 +
MySQL version:
 +
SQL modes:
 +
WP-CLI root dir:        phar://wp-cli.phar/vendor/wp-cli/wp-cli
 +
WP-CLI vendor dir:      phar://wp-cli.phar/vendor
 +
WP_CLI phar path:      /root
 +
WP-CLI packages dir:
 +
WP-CLI global config:
 +
WP-CLI project config:
 +
WP-CLI version: 2.5.0
 +
}}
 +
 +
Ajout de la complétion :
 +
wget -O ~/wp-completion.bash https://raw.githubusercontent.com/wp-cli/wp-cli/master/utils/wp-completion.bash
 +
echo "source wp-completion.bash" >> ~/.bash_profile
 +
 +
===Prérequis===
 +
Pour le serveur web, créer le pool PHP et le vhost Apache.
 +
 +
Créer ensuite l'arborescence de dossiers dans laquelle se trouvera l'installation de WordPress à publier au travers d'Apache. Exemple :
 +
mkdir -p /data/www/my_site/my_site_20210908
 +
cd /data/www/my_site
 +
ln -s my_site_20210908 CURRENT
 +
 +
Pour la base données, créer une base de données ainsi qu'un utilisateur associé :
 +
<syntaxhighlight lang="sql">
 +
CREATE DATABASE my_database_name;
 +
CREATE USER 'my_database_user'@'192.168.0.33' IDENTIFIED WITH mysql_native_password BY 'xxxxxxxxxxxxxxxxx';
 +
GRANT ALL PRIVILEGES ON my_database_name.* TO 'my_database_user'@'192.168.0.33' WITH GRANT OPTION;
 +
</syntaxhighlight>
 +
 +
===Mise en œuvre===
 +
Se rendre dans le dossier qui sera publié par Apache :
 +
cd /data/www/my_site/CURRENT
 +
 +
Charger les binaires PHP dans le PATH :
 +
set_php_version 7.4.7
 +
 +
Télécharger la dernière version de WordPress en français :
 +
wp core download --locale=fr_FR
 +
 +
Créer le fichier de configuration <code>wp-config.php</code> :
 +
wp config create --dbname=my_database_name --dbuser=my_database_user --dbpass=my_password --dbhost=my_database_server --dbcharset=utf8mb4 --extra-php="define( 'FS_METHOD' , 'direct' );" --skip-check
 +
 +
'''NB''' : l'option <code>--extra-php="define( 'FS_METHOD' , 'direct' );"</code> définit une constante dans la configuration de WordPress qui permet de [https://codex.wordpress.org/fr:Modifier_wp-config.php#Les_Constantes_des_Mises_.C3.80_Jour_WordPress corriger le problème d'installation/mise à jour qui réclame un compte FTP pour s'exécuter].
 +
 +
'''NB 2''' : l'option <code>--skip-check</code> désactive la vérification de la connexion à la base de données, cette option s'appuyant sur le client ''mysql'' qui n'est pas installé sur le serveur web.
 +
 +
Lancer l'installation de WordPress compte tenu des paramètres présent dans le fichier <code>wp-config.php</code> précédemment créé :
 +
wp core install --url="https://my.great.url" --title="My Great Title" --admin_user="my_admin_user" --admin_password="my_admin_password" --admin_email="my@great.email"
 +
 +
'''NB''' : la connexion à la base de données se fait, cette fois-ci, avec le client mysql embarqué dans les binaires PHP.
 +
 +
Création d'un seconde compte administrateur :
 +
wp user create another-admin another@user.email --role=administrator --user_pass=another_password --send-email
  
 
==Se connecter==
 
==Se connecter==

Version actuelle datée du 12 janvier 2022 à 16:35

Présentation

Cette page a pour objet de montrer comment installer WordPress.

Mode interactif

Déploiement des sources

Télécharger la dernière version de WordPress depuis le site officel :

wget -O ~/downloads/wordpress-5.2.3-fr_FR.tar.gz https://fr.wordpress.org/latest-fr_FR.tar.gz

Décompresser l'archive en excluant le répertoire parent wordpress :

tar -zxvf ~/downloads/wordpress-5.2.3-fr_FR.tar.gz -C /data/www/monsite.fr --strip 1

Attribuer les droits d'accès à l'utilisateur Apache :

chown -R www:www /data/www/monsite.fr

Création base de données

Se connecter à la base de données MySQL avec l'utilisateur root :

mysql -uroot -p

Renseigner le mot de passe comme demandé :

Enter password:

Le prompt suivant s'affiche confirmant la bonne connexion à la BDD :

Putty icon.png Console SSH

Créer la base de données wp_monsite_db (nom au choix) :

create database wp_monsite_db;

Exemple de retour sans erreur :

Query OK, 1 row affected (0.032 sec)

Créer l'utilisateur wp_monsite_user, lui donner tous les droits sur la base wp_monsite_db et quitter :

grant all privileges on wp_monsite_db.* to wp_monsite_user@localhost identified by 'xxxxxxxxxxxxxxxx';
quit;

Assistant d'installation

Une fois les sources déployées et la base de données créée, se rendre sur la page d'accueil http://monsite.fr/ :

WordPress - Accueil installation

Cliquer sur C'est parti !.

Dans l'écran suivant, renseigner les champs avec les informations de la base de données précédemment créée :

Installation - Informations BDD

Cliquer sur Envoyer.

L'écran confirme la bonne communication avec la base de données :

Installation - Prêt pour l'installation

Cliquer sur Lancer l'installation.

Renseigner les informations suivantes :

[[Fichier:ClipCapIt-201009-104603.PNG]|none|thumb|300px|Installation - Paramètres]]

Cliquer sur Installer WordPress.

Une fois l'installation terminée, la page suivante s'affiche :

Installation terminée

Cliquer sur Se connecter pour commencer à utiliser le site WordPress

Sauvegarde du compte admin

En cas de réinitialisation malencontreuse du compte admin (par un autre compte administrateur par exemple), penser à récupérer les valeurs correspondant à l'ID 1 dans la base de données wp_monsite_db, dans la table wp_users et les sauvegarder dans un endroit approprié.

Cela permettra de recréer ou réinitialiser le compte admin à son état d'origine (mot de passe défini lors de l'installation).

Pour se faire, se connecter à la base de données MySQL avec l'utilisateur root :

mysql -uroot -p

Renseigner le mot de passe comme demandé :

Enter password:

Le prompt suivant s'affiche confirmant la bonne connexion à la BDD :

Putty icon.png Console SSH

Lancer la requête suivante pour récupérer les informations :

select * from wp_monsite_db.wp_users where wp_monsite_db.wp_users.ID = '1';

Exemple de retour sans erreur :

Putty icon.png Console SSH

La valeur user_pass est cryptée. Il faudra la ré-importer telle quelle pour redéfinir le mot à son état d'origine.

Mode ligne de commande

Installation de l'outil wp-cli

En tant qu'utilisateur root, télécharger l'outil wp-cli :

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Lui donner les droits d'exécution :

chmod 755 wp-cli.phar

Le renommer et le déployer dans /usr/local/bin/wp-cli :

mv wp-cli.phar /usr/local/bin/wp

Attention ! Pour les serveurs exécutant plusieurs versions de PHP, il faut s'assurer de disposer du binaire PHP approprié dans le PATH du serveur pour pouvoir utiliser la commande wp.

Pour vérifier que la commande wp fonctionne comme attendu, lancer la commande :

wp --info

Exemple de retour :

Putty icon.png Console SSH

Ajout de la complétion :

wget -O ~/wp-completion.bash https://raw.githubusercontent.com/wp-cli/wp-cli/master/utils/wp-completion.bash
echo "source wp-completion.bash" >> ~/.bash_profile

Prérequis

Pour le serveur web, créer le pool PHP et le vhost Apache.

Créer ensuite l'arborescence de dossiers dans laquelle se trouvera l'installation de WordPress à publier au travers d'Apache. Exemple :

mkdir -p /data/www/my_site/my_site_20210908
cd /data/www/my_site
ln -s my_site_20210908 CURRENT

Pour la base données, créer une base de données ainsi qu'un utilisateur associé :

CREATE DATABASE my_database_name;
CREATE USER 'my_database_user'@'192.168.0.33' IDENTIFIED WITH mysql_native_password BY 'xxxxxxxxxxxxxxxxx';
GRANT ALL PRIVILEGES ON my_database_name.* TO 'my_database_user'@'192.168.0.33' WITH GRANT OPTION;

Mise en œuvre

Se rendre dans le dossier qui sera publié par Apache :

cd /data/www/my_site/CURRENT

Charger les binaires PHP dans le PATH :

set_php_version 7.4.7

Télécharger la dernière version de WordPress en français :

wp core download --locale=fr_FR

Créer le fichier de configuration wp-config.php :

wp config create --dbname=my_database_name --dbuser=my_database_user --dbpass=my_password --dbhost=my_database_server --dbcharset=utf8mb4 --extra-php="define( 'FS_METHOD' , 'direct' );" --skip-check

NB : l'option --extra-php="define( 'FS_METHOD' , 'direct' );" définit une constante dans la configuration de WordPress qui permet de corriger le problème d'installation/mise à jour qui réclame un compte FTP pour s'exécuter.

NB 2 : l'option --skip-check désactive la vérification de la connexion à la base de données, cette option s'appuyant sur le client mysql qui n'est pas installé sur le serveur web.

Lancer l'installation de WordPress compte tenu des paramètres présent dans le fichier wp-config.php précédemment créé :

wp core install --url="https://my.great.url" --title="My Great Title" --admin_user="my_admin_user" --admin_password="my_admin_password" --admin_email="my@great.email"

NB : la connexion à la base de données se fait, cette fois-ci, avec le client mysql embarqué dans les binaires PHP.

Création d'un seconde compte administrateur :

wp user create another-admin another@user.email --role=administrator --user_pass=another_password --send-email

Se connecter

Une fois le site WordPress fraîchement installé, se rendre sur la page http://monsite.fr/wp-login.php :

WordPress - Connexion

Renseigner les identifiants définis lors de l'installation et cliquer sur Se connecter.