Installer WordPress sur un Nas Synology

Ce billet explique comment installer WordPress afin d'héberger votre blog sur votre Synology.

Le nom de domaine

Pour obtenir un nom de domaine, il faut choisir un registrar généralement payant (ex : gandi), ou utiliser celui que peut vous proposer gratuitement votre fournisseur d'accès. Chez Free, il faut passer par l'interface de gestion, aller dans Internet, puis cliquer sur Personnaliser mon reverse DNS (il faut avoir une IP Fixe). En fait, si le Photo Station de votre Synology est déjà actif et accessible de l'extérieur, c'est que vous avez votre nom de domaine. Dans la suite du billet, nous ferons référence à ce nom de domaine de la manière suivante : mon.nom.de.domaine

Activation du serveur Web

Dans l'interface d'administration du Synology, se rendre dans : Panneau de configuration → Service Web et cochez Activer Web Station pour mettre en place le service web et cocher Activer MySQL pour mettre en place le SGBD MySQL.
Un partage réseau nommé web (/volume1/web) vient juste d'être créé sur le NAS.

Activer et paramétrer le service FTP

Cette étape n'est pas indispensable mais sera très utile pour faciliter la configuration votre blog WordPress, comme télécharger des thèmes, des extensions ou des outils par exemple.

Nous allons commencer par créer un utilisateur spécifique. Dans l'interface d'administration du Synology, se rendre dans : Panneau de configuration → Utilisateur → Créer, puis remplir les champs de l'onglet Information utilisateur (ftpwpuser pour le Nom et ftpwppasswp pour le Mot de passe dans la suite du billet). Dans l'onglet Groupes utilisateur conserver le groupe par défaut (users). Dans l’onglet Configuration des privilèges, cocher Pas d’accès pour tous les dossiers excepté web où il faut bien entendu donner les droits en Lexture/écriture. Enfin, dans l'onglet Privilèges d'application, ne cocher que l'application FTP.

Il faut ensuite activer et configurer le service FTP. Dans l'interface d'administration du Synology, se rendre dans : Panneau de configuration → FTP, puis cocher Activer le service FTP. Éventuellement, dans l'onglet Limites de connexion cocher Permettre la connexion SSL/TLS uniquement.

Il faut enfin effectuer la redirection de port associée sur votre routeur (copie d'écran de l'interface de gestion locale de la FreeBox Révolution) :

Ainsi, lorsque WordPress vous demandera une connexion FTP pour accéder à votre serveur web, vous devrez remplir les champs de la manière suivante :
Nom de l'Hôte : mon.nom.de.domaine
(ou mon.nom.de.domaine:xxx si vous avez choisi le port xxx plutôt que le port par défaut 21 lors de la configuration du service FTP sur le Synology)
Identifiant FTP : ftpwpuser
Mot de passe FTP : ftpwppasswp

Pour le type de connexion, il faut cocher FTPS (SSL) si vous avez coché Permettre la connexion SSL/TLS uniquement lors de la configuration du service FTP sur le Synology.

Créer La base de données dédiée à WordPress

La première étape consiste, dans l'interface d'administration du Synology, à installer le paquet phpMyAdmin depuis Centre de packages → Disponible → phpMyAdmin.
Il faut ensuite cliquer sur Lancer pour l'activer. Connectez vous ensuite à l'interface d'administration phpMyAdmin en cliquant sur l'icône associé dans l'interface d'administration du Synology (par défaut, l'identifiant est root sans mot de passe). Dans l'onglet Bases de données, créez la base de données de votre blog (ex : blog_db).
Nous allons maintenant créer un utilisateur pour cette base de données. Dans le bandeau de gauche, vérifier que la base de données créée est bien sélectionnée, ou la sélectionner le cas échéant (en haut, vous devez avoir quelque chose du genre : Serveur: localhost – Base de données: blog_db). Dans l'onglet Privilèges, cliquer sur Ajouter un utilisateur.
Puis remplissez les champs de la manière suivante :
Nom d'utilisateur : blogadmin (ou le nom de votre choix)
Serveur : localhost
Mot de passe : adminpwd (ou le mot de passe de votre choix)

Vérifier que dans le cadre Base de données pour cet utilisateur, l'item Donner tous les privilèges sur la base de données « blog_db » est bien sélectionné, puis cliquer sur Exécuter en bas à droite.

Installer WordPress

Commencer par télécharger WordPress, puis décompresser l'archive obtenue. Il faut ensuite copier le contenu du dossier wordpress à la racine de votre site web. Personnellement, je copie ce contenu dans un dossier portant le nom du blog dans le répertoire web du Synology (ex : /volume1/web/monblog). Pour ne pas rencontrer des problèmes de droits sur ce répertoire, faire dans un terminal ssh (ou automatiser dans un script) :
chown -R ftpwpuser:users monblog
find monblog -type d -exec chmod 755 {} \;
find monblog -type f -exec chmod 644 {} \;
find monblog/wp-content/themes -type d -exec chmod 775 {} \;
find monblog/wp-content/themes -type f -exec chmod 664 {} \;

Il faut maintenant créer le fichier de configuration de WordPress. Pour cela, se connecter dans un navigateur à son blog : http://mon.nom.de.domaine ou http://mon.nom.de.domaine/monblog suivant où vous avez copié le contenu de wordpress dans le répertoire web. Cliquer sur Créer le fichier de configuration → Allons-y !. Remplir correctement tous les champs puis cliquer sur Valider puis sur Lancer l’installation !. A vous maintenant de configurer et sécuriser votre blog.

Cette entrée a été publiée dans WordPress, Synology. Placez un signet sur le permalien.

19 Responses to Installer WordPress sur un Nas Synology

  1. pamart

    Bonjour,
    pour commencer un grand merci pour ce tuto qui m’a aidé à résoudre une partie des soucis que j’avais avec mon serveur.
    Par contre, je pensais avoir réussi mon installation de blog jusqu’à se que ca me dise qu’il ne me restait plus qu’à me connecter, la je clique et ca me mets ce message :

    Warning: call_user_func_array() expects parameter 1 to be a valid callback, function ‘wp_maybe_load_embeds’ not found or invalid function name in /volume1/web/monsite/wp-includes/plugin.php on line 405 Fatal error: Call to undefined function set_post_thumbnail_size() in /volume1/web/monsite/wp-content/themes/twentyeleven/functions.php on line 128

    avez vous une idée de ce que je dois faire pour compléter mon installation ?
    Merci encore pour votre aide

    Reply
      • pamart

        Ok bah merci quand même, je vais continuer à chercher,
        au pire je retente une install de zéro ce soir et je passerai dire ce qu’il en est suite à ça …

        Reply
      • pamart

        J’ai résolu le soucis en reprenant tout à zéro, j’ai refait un database et réinstaller un WordPress dl sur le site américain et tout est rentré dans l’ordre, je ne sais pas donc pas d’ou venait le pb mais au moins il n’est plus la.

        Reply
  2. Laurent Post author

    Se problème n’est pas lié à l’utilisation d’un NAS Synology, mais plutôt lié à votre fournisseur d’accès où à l’achat et l’utilisation d’un nom de domaine.

    Reply
  3. aurélien

    Bonjour,

    Je suis en train de suivre votre tuto, et à l’endroit ou je doit me connecter via un terminal pour definir les droits d’accès au dossier « monblog » dans le dossier web, je bloque.

    Lorsque que je tape la première ligne de votre méthode à savoir « chown -R ftpwpuser:users monblog »

    Je reçois une réponse qu’il ne connais pas l’utilisateur ou le groupe, hors je tape bien le nom d’utilisateur que j’ai créé spécifiquement pour le ftp. Avez-vous une idée ?

    Je précise que j’ai tapé cette commande via le logiciel putty et au moment ou je me trouvais dans le dossier web »

    D’avance merci

    Reply
    • Laurent Post author

      Avez vous bien créé l’utilisateur « ftpwpuser » comme indiqué au début de la section « Activer et paramétrer le service FTP » ?

      Reply
  4. alex

    Bonjour,

    Et merci encore pour ces infos.

    Je rencontre un pb pour me connecter à ma console admin de word press en WAN (hors de mon réseau local)

    Lorsque je me connecte en LAN (réseau local) dans ma console admin wordpress :
    Reglages
    General

    on trouve deux champs :
    Adresse web de WordPress (URL)
    Adresse web du site

    Acuellement ces 2 champs sont renseigné avec l’adress ip de mon nas en local
    http://192.168 ../wordpress
    Si je remplace mon adresse ip de mon nas en local par mon adresse DYNDNS de type nom-de-mon-site.dyndns.info cela ne fonctionne pas en WAN
    > ce qui est renseigné : nom-de-mon-site.dyndns.info/wordpress

    Aucune difficulté pour me connecter à l’admin du nas en WAN avec nom-de-mon-site.dyndns.info:5000

    Auriez vous une explication car pour l’instant je suis contraints à travailler uniquement en LAN sur mon site

    En vous remerciant,
    Alexandre

    Reply
  5. Benoit Mathieu

    Bonjour,

    Très bon blog, que j’ai plaisir à découvrir. Grâce à analytics je me suis rendu compte que tu faisais un lien pour référencer tes sources, je t’en remercie. Sache que toute la partie domotique m’interresse fortement, je pense que je viendrais te visiter régulièrement.

    Reply
  6. Fluke

    Salut,

    J’ai reproduit « strictement » ton tutoriel (beau travail au passage), mais les gens vont avoir des problèmes après avec leur WordPress. Sur tes changements de user et permissions, on ne peux plus faire de mise à jour de plugins, ni même du moteur wordpress. Ca s’installera de zéro sans problème, mais les MAJ par contre.

    Reply
    • Fluke

      J’ai fait des recherches et ça va mieux. Je te propose quelques corrections suivantes :

      > chmod -R noboby:noboby monblog (pas besoin de mettre le user ftp comme propriétaire du blog, il faut que ce soit le même user qu’il fait tourner Apache sur le NAS)
      > chmod -R 777 monblog/wp-content/upgrade
      > chmod -R 777 monblog/wp-content/uploads

      Reply
      • Laurent Post author

        Le problème de cette solution est que le blog devient plus vulnérable à des malveillances externes.
        En fait je me suis fait deux petits scripts bash (DroitsOpen.sh et DroitsRestaure.sh). Le premier permet d’ouvrir les droits manuellement (quand on l’appel) pour autoriser les mises-à-jour, le second permet de reverrouiller les droits pour que le blog redeviennent moins vulnérable.

        Reply
  7. José Paseka

    Bonjour,
    J’ai installé mon site wordpress sur mon synology sans problème.
    Comment faire pour le rendre public? Quand j’essaie d’aller sur la page depuis l’extérieur il me dit que la page est introuvable.

    Reply
    • Laurent Post author

      Il y a deux choses à faire :
      1) Au niveau de votre fournisseur d’accès (ex : Free), configurer une IP Fixe et un nom de domaine.
      2) Effectuer la redirection de port adéquat sur votre routeur (ex. Freebox Serveur)

      Reply
  8. Jerome

    Bonjour,

    Superbe tutoriel mais je bute lorsque WordPress me demande une connexion FTP pour accéder au serveur web, j’ai toujours un message d’erreur. L’erreur doit venir de mon.nom.de.domaine que j’ai remplacé par mon adresse IP en vain.
    J’ai essayé de configurer dans WordPress dans Réglages> Adresse web du site (URL) mon mon.nom.de.domaine ou mon adresse IP mais cela ne change rien.

    Dois-je me résoudre à ajouter le code à la fin du fichier wp-config.php ?
    define(‘FE_METHOD’,’direct’);

    Cela installera-t-il les mises à jour automatiquement ?

    Merci

    Reply
  9. Louiss

    Bonjour,

    Je rencontre des problème lorsque j’essaie d’accéder à mon site depuis un réseau externe.
    pourtant tout est ok avec la redirection du port 80 car mon ancien site (non wordpress) était accessible.
    mon.adresse.ip.externe/wordpress est innacessible

    Faut-il faire quelque chose que j’ai peu-être oublié ?

    Merci

    Reply
  10. Pingback : Installer WordPress sur un Nas Synology (DSM 6) – Club Informatique de Boersch

Répondre à Laurent Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *