Difference between revisions of "Hebergement WordPress Administration"

From Documentation Opteos
(Sites web WordPress hébergés : mise à jour des sites web)
(Sites web WordPress hébergés : Mise à jour de la liste des sites hébergés)
 
Line 24: Line 24:
 
* ''desmotsdeslignes.fr'' : site de Matthieu Marsan-Bacheré, thème Twenty Seventeen
 
* ''desmotsdeslignes.fr'' : site de Matthieu Marsan-Bacheré, thème Twenty Seventeen
 
* ''laureduchaud.fr'' : site de Laure Duchaud (Sarazin), thème Divi
 
* ''laureduchaud.fr'' : site de Laure Duchaud (Sarazin), thème Divi
 +
* ''christophe-barron.opteos.fr'' : site de Christophe Barron, thème Divi
 
* ''coach-professionnelle.com'' : site pour Laurène Cabaret, thème Divi
 
* ''coach-professionnelle.com'' : site pour Laurène Cabaret, thème Divi
 
* ''emiliebouviergissot.opteos.fr'' : site d’Émilie Bouvier Gissot, thème Twenty Seventeen
 
* ''emiliebouviergissot.opteos.fr'' : site d’Émilie Bouvier Gissot, thème Twenty Seventeen

Latest revision as of 14:30, 15 January 2020

Informations techniques sur l’installation WordPress utilisée pour l’hébergement des site web des entrepreneurs sur le Serveur d’Optéos.

Liste des (super-)administrateurs :


Informations sur la plate-forme[edit | edit source]

  • Application web WordPress en mode multisite
  • Installée le 23 mars 2018 : 4.9.4
  • Mise à jour (automatique) le 15 octobre 2019 : 5.2.4
  • Extensions mises à jour le 7 septembre 2019 : EWWW Image Optimizer 4.9.2, Maintenance 3.7.1, W3 Total Cache 0.10.0, WooCommerce 3.7.0, Yoast SEO 12.0
  • Optimisée avec W3 Total Cache et APCu

Coût de la plate-forme[edit | edit source]

  • Serveur Optéos : 3,59 € TTC /mois (chez OVH)
  • Infogérance serveur : 50 € HT /mois (par Benjamin)
  • Maintenance WordPress : 50 € HT /mois (par Benjamin)

Sites web WordPress hébergés[edit | edit source]

  • www.opteos.fr : site de Optéos, thème Divi
  • carinemandere.opteos.fr : site de Carine Mandère, thème Twenty Seventeen + Divi Builder
  • desmotsdeslignes.fr : site de Matthieu Marsan-Bacheré, thème Twenty Seventeen
  • laureduchaud.fr : site de Laure Duchaud (Sarazin), thème Divi
  • christophe-barron.opteos.fr : site de Christophe Barron, thème Divi
  • coach-professionnelle.com : site pour Laurène Cabaret, thème Divi
  • emiliebouviergissot.opteos.fr : site d’Émilie Bouvier Gissot, thème Twenty Seventeen
  • florianegaschy.opteos.fr : site de Floriane Gaschy, thème Divi, pas (encore) utilisé
  • kpacite.initiative.place : Responsable : Simon Sarazin - 25 €
  • ccommuneidee.fr : site de la marque ouverte, thème Divi. Responsable : Simon Sarazin
  • christiandupuy.wordpress.opteos.fr : site de Christian Dupuy, en cours de développement
  • cooperativebaraka.fr : Responsable Simon Sarazin - 25 €
  • atelier-hwo.wordpress.opteos.fr : site de présentation de l’offre interne d’hébergement de site WordPress, thème Divi, en cours de développement
  • hoppyurbanbrew.com : site de Sébastien Verbeke, thème Divi
  • wordpress.opteos.fr : nom de domaine de la ferme de sites WordPress, thème Divi, non référencé par les robots
  • rudypatard.opteos.fr : site de Rudy Patard, thème Twenty Sixteen
  • grenzaboka.opteos.fr : site de Christèle Rosinet, thème Divi
  • marionrousseaux.fr : site de Marion Rousseaux, thème Divi
  • christele-rosinet.opteos.fr : autre de site de Christèle Rosinet ? pas (encore) utilisé
  • gyroscop.opteos.fr : ?
  • begalain.opteos.fr : site de Alain Béguin

URL par défaut des nouveaux sites web : *.wordpress.opteos.fr à modifier en prenomnom.opteos.fr ou marquecommerciale.opteos.fr

Extensions WordPress[edit | edit source]

  • Akismet Anti-Spam
  • Better Search Replace : pour utiliser le remplacement du guid seulement avant la publication (rendre publique) du site (*.opteos.fr)
  • Contact Form 7
  • Contact Form 7 Honeypot : pour éviter le spam de formulaire par des robots
  • Debug Bar
  • Debug Bar Actions and Filters Addon
  • Debug Bar Constants
  • Debug Bar List Script & Style Dependencies
  • Debug Bar Localization
  • Debug Bar Post Types
  • Debug Bar Shortcodes
  • Debug Bar Slow actions
  • Debug Bar Taxonomies
  • Debug Bar Transcients
  • Disable Blogging : pour désactiver toutes les fonctionnalités du blog et des articles désactivé par défaut, à tester
  • Divi Builder
  • Emoji Settings : pour désactiver les emojis si ils ne sont pas utilisés (améliore les performances web)
  • EWWW Image Optimizer
  • Matomo tracking, by Sergio Santos (pas encore installé) en attendant la mise à jour de WP-Matomo
  • Multisite Enhancements
  • Query Monitor
  • Search & Replace : pour afficher la différence des modifications
  • Theme Check
  • W3 Total Cache activée sur le réseau et configurée
  • WordPress Importer
  • WP Cerber Security, Antispam & Malware Scan activée sur le réseau et configurée
  • WP-Piwik
  • Yoast SEO

Thèmes WordPress[edit | edit source]

  • Divi
  • Twenty Fifteen
  • Twenty Nineteen
  • Twenty Seventeen
  • Twenty Sixteen

Accès aux fichiers de WordPress sur le serveur[edit | edit source]

Le serveur est accessible via le protocole SSH/SFTP. Il est préférable de manipuler les fichiers en se connectant avec SSH à l’utilisateur wpmu afin de conserver les permissions :

$ ssh bdanon@s.opteos.fr
bdanon@s ~ $ su - wpmu
wpmu@s ~ $ cd wordpress.opteos.fr/www/
wpmu@s www $ ls -l
wpmu@s www $ wp config list

WP-CLI est disponible sur le serveur.

Les fichiers des logs des requêtes HTTP pour chaque domaine sont disponibles dans le répertoire /home/wpmu/wordpress.opteos.fr/log/http/.

Mettre à jour WordPress et ses extensions[edit | edit source]

La mise à jour de WordPress et de ses extensions est autorisé via l’interface web d’administration. WP-CLI est aussi disponible sur le serveur pour mettre à jour WordPress et ses extensions :

$ ssh bdanon@s.opteos.fr
bdanon@s ~ $ su - wpmu
wpmu@s ~ $ cd wordpress.opteos.fr/www/
wpmu@s www $ wp core update
wpmu@s www $ wp core update-db --network
wpmu@s www $ wp plugin update --all
wpmu@s www $ wp plugin update divi-builder
wpmu@s www $ wp theme update --all
wpmu@s www $ wp language core update
wpmu@s www $ wp language plugin update --all
wpmu@s www $ wp language theme update --all

Après ces manipulations, il est préférable de corriger les permissions de fichiers et de répertoires avec les commandes indiquées en bas de page.

Fichier wp-config.php[edit | edit source]

// ** Préfixe de cache pour W3 Total Cache ** //
define('W3TC_INSTANCE_ID', '1550489575'); // Must be unique (use a timestamp)

// ** Mode Debug ** //
//define('WP_DEBUG', true);
//define('WP_DEBUG_LOG', true);
//define('WP_DEBUG_DISPLAY', true);

// ** Mode Multisite ** //
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'wordpress.opteos.fr');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 15);
define('BLOG_ID_CURRENT_SITE', 15);
define('NOBLOGREDIRECT', 'https://wordpress.opteos.fr');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '/');
define('SITECOOKIEPATH', '/');
define('ADMIN_COOKIE_PATH', '/wp-admin');

/** Forcer WordPress à modifier le système de fichiers depuis PHP */
define('FS_METHOD', 'direct');

/** Limiter la conservation des révisions */
define('WP_POST_REVISIONS', 5);

/** Désactiver le cron automatique de WordPress pour utiliser celui du serveur */
define('DISABLE_WP_CRON', true);

Tâche cron[edit | edit source]

Tâche cron automatique de WordPress désactivée. Tâche cron du serveur activée avec WP-CLI :

PATH=/usr/local/bin:/usr/bin:/bin
# Tâche cron pour WordPress (fonctionne en mode Multisite)
12 9-20 * * * /home/wpmu/wordpress.opteos.fr/bin/run-wp-cron.sh
12 22,0,7 * * * /home/wpmu/wordpress.opteos.fr/bin/run-wp-cron.sh

Certificat SSL[edit | edit source]

Un seul certificat SSL wildcard est généré avec le service Let’s Encrypt, l’outil certbot et l’API OVH pour tous les sous-domaines *.wordpress.opteos.fr et *.opteos.fr. Il est renouvelé automatiquement tous les deux mois.

Utilisation du plugin `certbot-plugin-ovh` avec l’API OVH :

# certbot certonly --agree-tos --email admin@ficusnode.com --dns-ovh --dns-ovh-credentials ~/.ovhapi --dns-ovh-propagation-seconds 60 --cert-name opteos.fr -d "opteos.fr" -d "*.opteos.fr" -d "*.wordpress.opteos.fr"

Ne fonctionne pas sans la nouvelle version de certbot :


Solution temporaire (19/01/2019) :

# certbot certonly --agree-tos --email admin@ficusnode.com --manual --preferred-challenges dns --cert-name opteos.fr -d "opteos.fr" -d "*.opteos.fr" -d "*.wordpress.opteos.fr"

Configuration d’un nouveau nom de domaine[edit | edit source]

Aucune configuration supplémentaire n’est nécessaire pour les sous-domaines *.wordpress.opteos.fr et *.opteos.fr. Pour utiliser un nom de domaine différent, il est préférable de créer un nouveau fichier de configuration dans le répertoire /home/wpmu/wordpress.opteos.fr/config/ ainsi qu’un nouveau certificat SSL dédié (faire pointer le ndd préalablement) :

bdanon@s ~ $ sudo su
root@s bdanon # nano /home/wpmu/wordpress.opteos.fr/config/domaine.fr.nginx.conf (commenter le certificat SSL inexistant)
root@s bdanon # ln -s /home/wpmu/wordpress.opteos.fr/config/domaine.fr.nginx.conf /etc/nginx/sites-enabled/
root@s bdanon # service nginx reload
root@s bdanon # certbot certonly --agree-tos --email admin@ficusnode.com --webroot -w /etc/letsencrypt/public --cert-name domaine.fr -d domaine.fr,www.domaine.fr
root@s bdanon # nano /home/wpmu/wordpress.opteos.fr/config/domaine.fr.nginx.conf (dé-commenter le certificat SSL)
root@s bdanon # service nginx reload

Création d’un nouveau site web sur WordPress[edit | edit source]

Via l’interface web d’administration de WordPress :

  • Admin du réseau > Utilisateurs > Ajouter
  • Admin du réseau > Sites > Ajouter : en utilisant l’adresse de courriel de l’utilisateur créé précédement
  • Modifier l’URL en remplaçant http:// par https:// si le certificat SSL est en place

Configuration du serveur web nginx[edit | edit source]

Fichiers /home/wpmu/wordpress.opteos.fr/config/*.nginx.conf:

  • Taille maximale des données (client_max_body_size) : 40 Mo

Configuration du serveur d’application PHP-FPM pour PHP[edit | edit source]

Les processus PHP utilisés pour tous les sites web du WordPress Multisite s’exécutent avec l’utilisateur www-wpmu et la configuration du fichier /etc/php/7.0/fpm/pool.d/www-wpmu.conf :

  • Nombre de processus PHP maximum : 25
  • Taille maximale de la mémoire allouée aux processus PHP (memory_limit) : 128 Mo
  • Taille maximale de téléversement (post_max_size) : 40 Mo
  • Taille maximale de téléversement par fichier (upload_max_filesize) : 20 Mo
  • Adresse de courriel par défaut pour l’envoi des messages (sendmail_path) : contact [at] opteos.fr
  • Niveau du rapport d’erreurs de PHP (error_reporting) : E_ALL & ~E_DEPRECATED & ~E_STRICT
  • Fichier de log des erreurs PHP (errorlog) : /var/log/php7.0-fpm/www-wpmu.error.log
  • Fichier de log des exécutions lentes de PHP (slowlog) : /var/log/php7.0-fpm/www-wpmu.slow.log

Configuration des permissions du répertoire du site web[edit | edit source]

Autorisation d’écriture permissive pour l’utilisateur www-wpmu qui exécute PHP, afin de pouvoir mettre à jour le WordPress via l’interface web :

drwxrwsr-x root www-wpmu www/ :
  drw-rw-r-- www-wpmu www-wpmu …
  drwxrwsr-x www-wpmu www-wpmu wp-content/ :
    drw-rw-r-- www-wpmu www-wpmu …

Commandes :

# cd wordpress.opteos.fr/
# chown www-wpmu:www-wpmu -R www/
# find www/ -type d -print0 | xargs -0 chmod 2775
# find www/ -type f -print0 | xargs -0 chmod 664
# chmod +x www/wp-content/ewww/*
# chown root:www-wpmu www/

Sauvegarde des données[edit | edit source]

Toutes les données (fichiers et base de données) du WordPress Multisite sont sauvegardées quotidiennement, la nuit, en même temps que toutes les données du serveur, par un serveur distant ax.ficusnode.com. Une interface est disponible pour consulter et restaurer les données https://ax.ficusnode.com/backuppc/ accessible par Benjamin et Simon.

Il n’y a pas (encore) de solution en place pour sauvegarder spécifiquement chaque site séparément.