Installer Wordpress sur la Raspberry Pi

Installer WordPress sur une Raspberry Pi (avec Nginx).

Mis à jour le 23 janvier 2020 - 87 Commentaires - , , , , ,

Aujourd’hui, nous allons vous parler de wordpress, le CMS le plus populaire du monde (sans parler du fait qu’il fait tourner Raspbian France) et voir comment l’installer sur la Raspberry Pi.
La compatibilité Raspberry / WordPress existe depuis le début, néanmoins, les performances sur les premières Raspberry Pi n’étaient pas incroyables !
Aujourd’hui, avec la Raspberry pi 3 et la Raspberry Pi 2, c’est de l’histoire ancienne ! Leurs processeurs et la RAM montée à 1Go nous offre la possibilité de faire tourner de manière plus que correcte un site wordpress sous Raspbian !

Installer le serveur sur votre Raspberry Pi

Outre les classiques commandes de mises à jour qui devraient être exécutées avant toute installation, nous allons devoir installer un serveur web ainsi que PHP et MySQL sur la Raspberry Pi.
Ici nous choisissons d’installer Nginx. En effet, si il est un peu plus compliqué à configurer qu’Apache, il est également nettement plus rapide, ce qui sera un réel avantage sur une Raspberry Pi.

sudo apt-get update upgrade
sudo apt-get install -y nginx php php-fpm mariadb-server php-mysql

Avec cette commande, tous les dépôts nécessaires vont s’installer, à savoir Ngnix, PHP et enfin MySQL qui est la base de données utilisée par WordPress.
Lors de l’installation, il va vous être demandé quelques informations, notamment le nom et le mot de passe du compte MySQL, mémorisez bien les informations données, elles seront utiles par la suite !
Une fois l’installation terminée, vous allez devoir configurer Nginx. Pour cela, reportez-vous à la partie « Configurer Nginx » de notre tutoriel Installer Nginx Raspbian, et accélérez votre serveur web Raspberry.

Création d’une base de données pour WordPress sur la Raspberry Pi

Suite à cette installation nous allons devoir créer une base de données pour le futur site WordPress hébergé sur la Raspberry Pi. Nous allons être un poil barbu (poil, barbu ! Non ? Bon tant pis…) l’espace d’un instant.

sudo mysql --user=root

Expliquons rapidement la ligne de commande. « sudo » permet de demander l’exécution de la commande en tant qu’administrateur. « mysql » demande une connexion au serveur de base de données, « -u » permet de signaler le nom du compte MySQL à utiliser (ici le compte root).

Nous allons maintenant définir le mot de passe de MySQL. Pour cela, une fois connecté à MySQL, tapez la commande suivante :

DROP USER 'root'@'localhost';
CREATE USER 'root'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

Ces lignes vont en fait supprimer l’utilisateur MySQL de base (qui ne possède pas de mot de passe), pour en créer un nouveau avec le mot de passe de notre choix. Remplacez password par le mot de passe que vous souhaitez utiliser pour l’administrateur MySQL.

Création de la base pour WordPress

Une fois ceci fait, re-connectez vous à MySQL (vous devriez voir apparaître en début de ligne « mysql> ») avec la commande suivante :

sudo mysql -u root -ppassword

Nous allons maintenant créer une base pour WordPress. Pour cela, utilisez la commande suivante :

create database wordpress;

Ici, « wordpress » est le nom de la base de données qui sera utilisée, vous pouvez mettre un autre nom si vous le désirez, mais vous devrez alors prendre en compte cette différence dans la suite du tutoriel.

Création d’un utilisateur dédié à cette base

Une bonne habitude à prendre quand vous utilisez une base de données est de bien séparer les différentes bases de données entre plusieurs utilisateurs dédiés.
Cela permet d’augmenter la sécurité ! En effet, si une personne réussi à prendre le contrôle de votre site à cause d’une faille de sécurité (ça peut toujours arriver), deux situations sont possibles.

  1. Vous utilisez un seul utilisateur MySQL, root, avec tous les droits sur toutes les tables. L’attaquant pourra donc récupérer non seulement les données du site attaqué, mais également les données de tous les autre sites.
  2. Vous utilisez un utilisateur MySQL par site qui ne posséde de droits que sur la base de ce site. L’attaquant ne pourra récupérer que les données de ce site !

Ici, nous allons donc créer un utilisateur dédié à votre site WordPress.
Pour cela, il vous suffit d’exécuter la commande suivante :

GRANT ALL PRIVILEGES ON wordpress.* TO "nom_utilisateur"@"localhost" IDENTIFIED BY 'mot_de_passe' WITH GRANT OPTION;

Dans cette commande, « wordpress » est le nom de la base, « nom_utilisateur » le nom de l’utilisateur que vous voulez créer et « mot_de_passe » le mot de passe de l’utilisateur ! À vous donc d’adapter selon vos préférences !
Vous pouvez maintenant quitter MySQL en faisant Ctrl+d.

Télécharger WordPress sur Raspberry Pi

Maintenant que notre base de données est prête et que notre serveur Nginx est installé, nous allons pouvoir télécharger WordPress !
Tout d’abord, nous allons nous rendre à la racine du serveur, qui est, si vous avez suivi notre tutoriel sur Ngnix, situé dans /var/www/html, puis nous allons télécharger la dernière version de WordPress. Pour cela, lancez les lignes de commandes suivantes :

cd /var/www/html
sudo wget http://wordpress.org/latest.tar.gz

Ensuite, nous allons extraire le contenu via la commande « tar ».

sudo tar xzf latest.tar.gz
sudo rm -rf latest.tar.gz

Un nouveau dossier va être créé lors de l’extraction, le dossier « wordpress ». Nous avons au passage supprimé l’archive, celle-ci nous étant maintenant inutile.

Nous allons nous assurer que Nginx ai les droits d’accès au dossier. Pour cela, lancez la commande suivante :

sudo chown -R www-data /var/www/html/wordpress

Configurer Nginx pour rediriger les requêtes vers WordPress

Pour que votre site soit accessible depuis internet avec l’adresse URL de votre choix, et pour que les requêtes soient toutes traitées par WordPress, vous allez devoir modifier un peu la configuration de Nginx.

Pour cela, nous allons commencer par écrire le fichier « /etc/nginx/sites-available/wordpress ». Ce fichier devra contenir le code suivant :

server {
 listen 80;
 root /var/www/html/wordpress;
 index index.php;
 server_name <nom_de_votre_site> www.<nom_de_votre_site>;
 access_log /var/log/nginx/<nom_de_votre_site>.access_log;
 error_log /var/log/nginx/<nom_de_votre_site>.error_log
 notice;
 location / {
  try_files $uri $uri/ /index.php?$args;
 }
 location ~ \.php$
 {
  include snippets/fastcgi-php.conf;
  fastcgi_pass unix:/var/run/php/php-<version_php>-fpm.sock;
 }
}

Bien entendu, remplacez <nom_de_votre_site> et <version_php> par les valeurs adaptées. Si vous ne possédez pas de nom de domaine, vous pouvez le remplacer par l’adresse IP de votre Raspberry Pi pour le champ server_name. Pour trouver le bon fichier .sock pour PHP-FPM, utilisez la commande :

ls -a /var/run/php | grep sock

Une fois le fichier enregistré, vous allez faire un lien symbolique pour activer le réglage. Pour cela, il vous suffit d’utiliser la ligne de commande suivante :

ln -s /etc/nginx/sites-available/<nom_de_votre_site> /etc/nginx/sites-enabled/<nom_de_votre_site>

Vous n’avez plus qu’à redémarrer le serveur Nginx avec la commande suivante :

/etc/init.d/nginx restart

Première connexion au WordPress sur votre Raspberry Pi

Nous allons maintenant nous connecter pour la première fois au WordPress pour finaliser l’installation.
Dans le navigateur, nous allons taper l’ip de la Raspberry Pi (vous pouvez trouvez l’IP dans la configuration de votre box).
Dans notre cas par exemple, cela donne « http://192.168.1.24« 
Vous devriez alors arriver sur la page suivante.

Page de démarrage de wordpress
Au premier démarrage de WordPress vous vous retrouvez sur la page d’installation

Vous n’avez plus qu’à suivre les étapes les unes après les autres afin de terminer l’installation de WordPress sur la Raspberry Pi.


Vous ne savez pas trop comment prendre WordPress en main ? Découvrez le cours de notre partenaire Éléphorm pour apprendre à créer votre site avec WordPress !


Conclusion

Vous avez maintenant un super site WordPress sur votre Raspberry Pi qui est accessible en local !
Il ne vous reste plus qu’à faire un tour sur notre tutoriel sur le port fowarding et le dydns, pour voir comment le rendre accessible depuis internet !
Les performances de la Raspberry Pi 3 devraient grandement améliorer celles du site comparé aux versions précédentes, et pour une Raspberry Pi en bonne santé, allez donc faire un tour sur nos choix d’accessoires !

3.2/5 - (12 votes)
Partager
Newsletter
Auteur :
Raspberry Pi FR
Rejoignez la communauté Raspberry Pi
Un ordinateur à 35€ déjà vendu à 10 millions d'exemplaires
ACHETEZ LA NOUVELLE RASPBERRY PI 4
Tutoriels en rapport
Installer un media-center avec OSMC sur votre Raspberry Pi ! RaspiSMS 2.0, envoyer des SMS par internet avec la Raspberry Pi Installer un serveur web sur votre Raspberry (Apache + PHP + MySQL) Bien choisir vos accessoires pour les Raspberry Pi 3 et 2 Installer un serveur Minecraft sur votre Raspberry Pi !
87 commentaires
Besoin d'aide ? Vous la trouverez plus vite sur notre forum.

  1. Yan dit :

    Bonjour et merci beaucoup pour ces tuto.

    Tout fonctionne a marveille en local mais je rencontre quelque diffuclté quand j’utilise l’ip public de mon routeur :

    Je saisi l’adresse ip public de mon routeur depuis une connexion externe (4g par exemple)
    –> J’arrive bien sur mon site (grace au Port Forwarding)
    —> Cependant, certains elements, comme le fichier css notamment, ne sont pas chargés car pour eux, ça pointe toujours sur l’ip local du raspberry.
    J’ai fouillé dans les differents fichiers wordpress et nginx, je ne vois pas où j’ai laissé cet ip local…

    Exemple :
    Je lance le site via l’ip public et dans la console du navigateur je vois pour le css
    « http://192.168.1.2/wp-content/themes/radiate/style.css?ver=5.4.1 »
    à la place de
    « http://my-public-ip-adress/wp-content/themes/radiate/style.css?ver=5.4.1 »

    Voici mes configurations :
    […]

    1. Salut, je te conseils d’aller sur le forum et de demander de l’aide tu en trouveras sûrement 🙂

  2. Bob dit :

    Bonsoir
    J’ai bien suivi tout le tuto, tout a bien fonctionné !..

    Aucune erreur retournée par les commandes tapées. 🙂

    Seul problème, quand je tape 192.168.100.10 dans mon navigateur.

    Je tombe sur ngnix. jusque là d’anormal.

    Par-contre, quand je tape:

    192.168.100.10/wordpress
    192.168.100.10/wp-admin

    Je tombe sur ngnix not found 😫😫😫

    Je ne sais plus quoi faire !. J’aurai besoin d’un peu d’aide. S’il vous plait !. Help !

    Merci de votre aide

    Mon fichier config en dessous:

    server {
    listen 80;
    root /var/www/html/wordpress;
    index index.php;
    server_name www.;
    access_log /var/log/nginx/.access_log;
    error_log /var/log/nginx/.error_log
    notice;
    location / {
    try_files $uri $uri/ /index.php?$args;
    }
    location ~ \.php$
    {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    }

    1. Salut, c’est normal que tu tombes sur une 404 en demandant /wordpress parce que tu es déjà dans le dossier /wordpress. En revanche il manque un peu partout le nom de ton site ou l’IP de la Raspberry Pi. Si tu as besoin d’aide tu devrais aller demander sur le forum où ce sera plus simple pour les gens de t’aider.

  3. Fabien dit :

    Bonjour,
    j’ai suivi le tutoriel pour installer Nginx & WordPress sur RaspberryPI,
    2 remarques sur le tuto :
    1) remplacer « sudo mysql -u root -ppassword » par « sudo mysql -u root -p » puis taper le mot de passe
    2) pour évitier l’erreur 502 bad gateway, dans le fichier de config de nginx, vérifier le chemin et la version du fichier .sock avec « ls /var/run/php/ »
    dans mon cas c’était « /var/run/php/php7.3-fpm.sock » au lieu de « /var/run/php5-fpm.sock »

    Fabien.

    1. Yep, merci j’ai corrigé ça effectivement ça a changé avec les dernières versions.

  4. Jonathan dit :

    Merci pour votre réponse.

  5. Jonathan dit :

    Bonjour à toute la communauté et merci pour ce super tutoriel.

    Suite à cette installation de WordPress, je me demandais s’il est possible ensuite de configurer un Point d’Accès Wifi (ex: SSID : WordPress-Wifi) et de pouvoir se connecter ensuite au site avec une URL personnalisée (ex: wordpressraspberry.local) et/ou avec un portail captif.

    L’idée serait d’avoir une sorte de site « mobile » auquel on pourrait accéder sans avoir internet (puisque tout serait stocké sur le rapsberry) – Juste le brancher, se connecter au Réseau Wifi généré par le Rapsberry Pi (avec un Smartphone, PC, …) et naviguer.

    J’espère que mon message ne sera pas trop confus. Merci à tous pour votre aide 😉

    1. Salut, il faudrait alors faire un point d’accès avec hostapd, tu peux jeter un coup d’oeil à notre tuto.

  6. Paulin dit :

    Bonjour, la commande « sudo apt-get install -y nginx php php-fpm mysql-server php-mysql » m’indique le message suivant:

    Aucune version du paquet mysql-server n’est disponible, mais il existe dans la base
    de données. Cela signifie en général que le paquet est manquant, qu’il est devenu obsolète
    ou qu’il n’est disponible que sur une autre source
    Cependant les paquets suivants le remplacent :
    mariadb-server-10.0

    E: Le paquet « mysql-server » n’a pas de version susceptible d’être installée

    1. Salut, ça a été corrigé.

  7. Jean-Marc dit :

    Excellent tuto !

    Il y a une petite coquille cependant :
    « Une bonne habitude à prendre quand vous utilisez une base de données est de bien séparer les différentes tables entre plusieurs utilisateurs dédiés. »
    Je pense qu’il s’agit de « bases de données » et non de « tables ».

    1. Merci de le faire remonter, effectivement je corrige ça.

  8. Raphael dit :

    Dans le 3e encadré, à la 3e ligne, il faut plutôt ceci :

    « GRANT ALL PRIVILEGES ON *.* TO ‘root’@’localhost’ WITH GRANT OPTION; »

    Vous avez oublié le « GRANT OPTION »

  9. Rougerie Leo dit :

    Bonjour, en effectuant la commande GRANT ALL PRIVILEGES ON wordpress.* TO « nom_utilisateur »@ »localhost » IDENTIFIED BY ‘mot_de_passe’; (en remplaçant bien évidement nom_utilisateur et mot_de_passe), on m’indique une erreur; la voici:
    ERROR 1044 (42000): Access denied for user ‘leo’@’localhost’ to database ‘wordpress’

    1. Salut, il faut que tu fasses cette commande depuis le compte root de mysql.

  10. bonjour, je n’arrive pas a voir mon site depuis internet. j’ai bien suivis les deux tuto , recommencé plusieurs fois les commande et pourtant j’ai toujours l’erreur 404
    merci de votre aide

    1. Salut, as-tu bien fais la mise en ligne avec DynDNS ?

  11. diouf dit :

    Merci pour ce tuto!
    Lorsque j’envoie la commande
    sudo apt-get install -y nginx php5 php5-fpm mysql-server php5-mysql
    j’obtiens cette réponse :

    Les paquets suivants contiennent des dépendances non satisfaites :
    php5-mysql : Dépend: libmysqlclient18 mais il n’est pas installable
    E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l’état ».

    Comment « déverrouiller » les paquets concernés et les supprimer?

    je précise que je suis sur une installation toute neuve… c’est le premier truc que je fais après apt-get update upgrade

    Merci de votre aide

    1. Salut, essaye peut-être avec php7 plutôt que 5.

  12. Gérard dit :

    Attention toutefois au thème utilisé. Les performances peuvent sérieusement se dégrader selon le thème et cela même avec un système de cache (j’utilise W3 Total Cache).
    J’en ai fait l’expérience en voulant passer de weblizar (4sec pour charger une page avec un débit de 1Mo/s en sortie) à Cardinal (10 sec pour charger la même page avec le même débit!)

  13. Antoine dit :

    Lors de la création de la base pour WordPress, quand j’entre la commande « create database wordpress; » ça me met : -bash: create : commande introuvable …….

    1. Antoine dit :

      pi@raspberrypi_antoine:~ $ sudo /etc/init.d/nginx restart
      [….] Restarting nginx (via systemctl): nginx.serviceJob for nginx.service failed. See ‘systemctl status nginx.service’ and ‘journalctl -xn’ for details.

      pi@raspberrypi_antoine:~ $ systemctl status nginx.service
      ● nginx.service – A high performance web server and a reverse proxy server
      Loaded: loaded (/lib/systemd/system/nginx.service; enabled)
      Active: failed (Result: exit-code) since jeu. 2017-08-03 00:17:02 CEST; 27s ago
      Process: 1287 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)

    2. Salut, cette commande est à effectuer depuis une console MySQL, pas directement dans le terminal Linux.

  14. Andrew dit :

    Bonjour,
    j’ai un problème. Quand je veux redémarrer Nginx il me dit :
    [….] Restarting nginx (via systemctl): nginx.serviceJob for nginx.service failed. See ‘systemctl status nginx.service’ and ‘journalctl -xn’ for details.
    failed!
    quelqu’un a une solution ?
    merci d’avance
    Ak

    1. Bonjour,
      Que te dis la commande « ‘journalctl -xn » ?

  15. asakura dit :

    Hello,

    WordPress (et accessoirement Google) ont décidé de forcer les utilisateurs à passer en https sous peine d’avertir les internautes que le site n’est pas sécurisé ou de ne plus être référencé.

    Allez vous passé en https, si oui, petite maj du tuto, non ?

    1. Bonjour,
      C’est en effet sur notre To-Do list 🙂
      Nous mettrons bien entendu l’article à jour.
      je dirais Mars/Avril, même si rien n’est encore planifié.

  16. hamdyeaa dit :

    Est-ce que quelqu’un à tester avec un pi zero ou un raspberry pi1 overclocké ?

  17. Wako dit :

    Bonjour,

    Merci pour ce tuto. ça fonctionne niquel.

    Perso j’avais aussi ce genre d’erreur « …Job for nginx.service failed. See ‘systemctl status nginx.service’ and ‘journalctl -xn’ for details…. » du coup je suis resté sur le profil Default de nginx en l’adaptant avec le tuto (n’oubliez pas de faire un backup) et ça fonctionne.

    Pour ceux qui ont aussi des erreurs lors de l’installation plugins/themes (si on vous demande vos infos FTP) vérifiez les permissions et changez-les si besoin (sudo chown -R www-data /var/www/html/wordpress).

  18. asakura dit :

    Bonjour,
    merci pour le tuto, tout est installé.
    Je n’ai pas encore rendu mon blog accessible via le net, il fonctionne en local uniquement par le biais de mon adresse IP.
    Ce que je ne comprends pas c’est qu’il m’est impossible d’accéder à mes pages/article créer, j’obtiens l’erreur 404 « Not Found ».
    Contrairement à ma page d’accueille qui est bien accessible…
    Que dois je faire ?_?

    1. Bonjour,

      Est-il possible d’avoir plus d’informations sur ton problème stp ? Le format des url est-il toujours le même ?

    2. babsz dit :

      Est ce que tu a trouvé une solution ?

  19. Yann dit :

    je n’arrive pas a installer les thèmes, la connexion FTP fonctionne mais j’ai un message d’erreur

    1. Salut,
      tu peux nous donner le message d’erreur ?

  20. Timothée dit :

    Merci beaucoup pour ce tutoriel !
    j’avais passé une éternité à suivre plein de sites différents puis une fois l’opération finie je suis tombé ici… 😉

    J’ai simplement une question : est-il possible d’installer plusieurs sites (plusieurs bases de données – plusieurs utilisateurs) ?

    Merci encore !

    1. Bonjour,

      Il est tout a fait possible de créer plusieurs site, il suffit de suivre le même tutoriel pour l’installation du deuxième site avec le nom du dossier wordpress différent et ajuster les fichiers de conf nginx avec les informations du nouveau site. On peut avoir autant de site que l’on souhaite sur la raspberry tant que la capacité de stockage n’est pas dépassé bien-sur !

  21. link dit :

    Bonjour! je tenais à vous remercier pour vos super tuto qui ne m’ont posés aucun problème jusqu’à maintenant !

    J’ai cependant un problème pour lancer wordpress : j’ai suivit tous votre tutoriel (avec nginx, php, mysql) mais à la fin, lorsque je regarde la page à l’adresse IP du raspberry sur mon navigateur, c’est la page du phpinfo() qui s’affiche.

    Y’a t’il un fichier à supprimer/changer ou une manip à faire ? je débute dans le développement web.

    1. Salut,
      Où se trouve le dossier wordpress ? dans /var/wwww/html/wordpress ? Si c’est le cas url doit ressemble à htttp://adresseIp/wordpress

  22. Lanvin dit :

    Bonjour, j’ai exécuté toutes les commandes mais lors du test sur un navigateur : http://,
    il n’y a que la fenêtre de Nginx qui apparaît …
    est-ce que il y a un moyen de vérifier quelque chose dans cette situation ?!
    merci d’avance pour vos informations 🙂

    1. Bonjour,

      Êtes-vous sûr d’avoir bien configuré nginx (url, chemin du wordpress et modification de tous les ) et que vous testez sur la bonne url renseigné dans ces fichiers ?

  23. Thomas dit :

    Bonjour, j’ai un petit soucis j’arrive a avoir mon site en ligne si je fais l’installation de wordpress en ligne par contre pas moyen de lire le site en local, et si j’installe wordpress en local dans ce cas c’est l’inverse pas possible d’accéder au site depuis l’extérieur.

    1. Salut,
      cela viens probablement de la façon dont WordPress gère ses URLs.
      Tu trouveras peut-être des gens pour t’aider en postant sur notre forum !

  24. Mathias dit :

    Bonjour, j’ai un léger soucis, je ne peux pas redemarrer nginx, lorsque je tente de le redemarrer, j’ai un message d’erreur qui me dit : « Job for nginx.service failed. See « systemctl status nginx.service » and « jounalctl -xn » for details. »

    Que faire ? Merci de vos réponses 🙂

    1. Salut,
      en lançant la commande proposée jounalctl -xn tu trouveras peut-être ce qui fait planter Nginx.

      1. Adrien dit :

        Bonsoir,

        J’ai le même problème ([….] Restarting nginx (via systemctl): nginx.serviceJob for nginx.service failed. See ‘systemctl status nginx.service’ and ‘journalctl -xn’ for details.
        failed!) lors de la dernière étapes le redémarrage de nginx ! Avez vous une solution ?

        Merci

        1. Salut,
          tu peux peut-être trouver des infos sur ce qui provoque ce problème avec la commande journalctl -xn

  25. bibi595 dit :

    Bonsoir,

    J’ai du mal avec la partie « Configurer Nginx pour rediriger les requêtes vers WordPress »

    J’ai créé le fichier « wordpress » dans /etc/nginx/sites-available, il contient :

    server {
    listen 80;
    root /var/www/html/wordpress;

    index index.php;

    server_name www.;

    access_log /var/log/nginx/.access_log;

    error_log /var/log/nginx/.error_log
    notice;

    location / {
    try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$
    {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
    }

    et quand je veux rentrer la ligne : ln -s /etc/nginx/sites-available/ /etc/nginx/sites-enabled/

    j’ai cette erreur : bash: syntax error near unexpected token `newline’

    j’ai essayé en mettant wordpress dans nom du site et par avec la ligne ln -s /etc/nginx/sites-available/ /etc/nginx/sites-enabled/ et j’ai la même erreur..

    Avez-vous une idée ?

    Merci,

    Bonsoir

    1. bibi595 dit :

      la copie a bug, je met l’ip local du raspberry 192.168.1.19

    2. Salut,
      comme dit dans le tutoriel, server_name devrait être l’adresse IP de la Raspberry Pi.

      Par ailleurs, la commande devrait être « ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress »

  26. sylvain dit :

    Bonjour, vers la fin du tuto avant d’aller sur la page de wordpress, quand je fait la commande /etc/init.d/nginx restart pour redémarrer le serveur j’ai une erreure et sa m’affiche : [….] Restarting nginx (via systemctl): nginx.serviceJob for nginx.service failed. See ‘systemctl status nginx.service’ and ‘journalctl -xn’ for details.
    failed!

    une idée ?
    merci

    1. sylvain dit :

      rebonjour, j’ai résolu mon problème tout le tutoriel ce passe sans souci jusqu’à la premier connexion a wordpress .
      Mais quand je tape l ip de la framboise dans mon navigateur mais je tombe sur la page :

      Welcome to nginx on Debian!

      If you see this page, the nginx web server is successfully installed and working on Debian. Further configuration is required……..

      et je suis bloqué, j’ai tenté un lien symbolique inspirer de commentaire de remimini mais sans résultat.
      une piste ?
      merci =)

      1. Salut,
        tu as bien modifié le fichier de configuration du site dans « /etc/nginx/site-available » ?

        1. sylvain dit :

          Merci, mon erreurs était dut à un conflit avec un reste de confi d’un serveur mail, qui tournait sur la même raspberry .
          ps: Merci pour les tutoriel c’est super pour avancer rapidement, vous faites du bon boulot =)

    2. Salut,
      tu as bien mis « sudo » avant ta commande ?

    3. Inuya dit :

      Hey ! Geoffrey j’ai eu le m^eme problème que toi=le redemarrage du service nginx ou j’avais eu la m^eme erreur, pourrais tu m’envoyer la solution, sachant que quand je tape « journal -xn » j’ai « No journal file were found. Merci de ton aide.

  27. jm dit :

    bonjour,

    mon problème est le suivant: je suis au bout du tuto, tout a bien fonctionner mais quand il faut accédé à l’installation de wordpress via mon adresse ip, j’obtiens une page blanche avec « Index of / … » marqué en haut à gauche.

    mon dossier wordpress se trouve dans /var/www/. j’ai essayé de le mettre dans /var/www/html/ mais toujours rien.

    merci d’avance.

    1. Salut,
      si tu créer un fichier « index.html » dans le répertoire /var/www et que tu accède à ton IP, que ce passe-t-il ?

  28. Noé dit :

    Je suis sur de mdp

    1. juste pour vérifier, tu as bien modifié passwd par ton mot de passe ?

  29. noé dit :

    quand je me la commande mysql -u root -ppasswd il me mette ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
    merci

    1. Salut,
      question un peu bête, mais t’es sûr de ton password ?

    2. Maxime dit :

      Je crois que si tu fais « mysql -p » ça marche. Enfin c’est ce que j’avais finalement fait moi.

      Bon après j’ai eu d’autres soucis plus tard (hors tuto), faut que je reprenne tout ça de zéro je crois.

      1. Maxime dit :

        J’ai dis une bêtise, j’avais plutôt fait juste
        mysql -u root -p
        puis j’ai entré mon mdp

  30. Florian dit :

    Bonsoir, l’emplacement du site correspond a /var/www/ ou bien il peut être /home/pi/site/ ?

    Merci😊

    1. Salut,
      normalement c’est /var/www/.

  31. Rémimini dit :

    Bonjour,
    tout d’abord merci pour ce très bon tuto.
    j’aurais une petite question à vous soumettre. je pense avoir suivi à la lettre votre tuto mais quand je tape l’adresse ip dans un navigateur c’est l’index nginx qui apparaît, pas celui de WP.
    auriez vous une idée ?
    Merci d’avance

    1. Rémimini dit :

      petite précision , c’est le fichier usr/share/nginx/html/index.html qui est appelé plutot que mon wp-index.php

      1. Salut,
        il faudrait que tu modifies la configuration de Nginx pour allez chercher dans le dossier /var/www à la place de /usr/share/nginx.
        Sinon, tu peux faire un lien symbolique (ln -s) de /usr/share/nginx/html/ vers /var/www/

  32. Eric dit :

    En lisant vos différents article liés au web, je me suis posé la question « et la sécurité? ».
    Vous y faites allusion dans cet article, mais je n’ ai rien vu qui puisse me faire penser qu’ une fois connecté au web, le serveur soit sécurisé vis à vis d’ une attaque.
    D’ accord, Raspbery est plus un « jouet » qu’ un outil de travail, mais je serais curieux de savoir si le système est suffisamment sécurisé que pour en faire un serveur de démo pour des conférences ou autres utilisations (je prépare tranquillement mes données chez moi, branche le raspbery sur internet et je n’ ai plus qu’ à me connecter au site pour avoir les éléments de ma conférence ou accéder à un wp de démo chez un client.D’ accord un Mamp le fait aussi, mais un site « pour de vrai » est bien plus convaincant).

    1. Bonjour,
      la Raspberry Pi n’est ni plus ni moins sécurisé qu’un autre serveur à priori. La sécurité en développement web est super intéressante (et crois moi parmi l’équipe de Raspbian France certains on un peu creusé le sujet) mais il s’agit d’une discipline à part entière que nous n’avons pas vraiment l’occasion d’aborder ici.
      Si tu gères bien les droits de tes dossiers, que tu fais bien tes mises à jour et que tu n’utilises pas de composants possédant des failles connues, tu ne devrais pas trop avoir de problèmes !

  33. flo dit :

    Bonsoir,
    Pareil que précédent je ne comprends pas la partie Configurer Nginx. Comment faut il écrire le fichier? avec la commande nano?
    puis pour le « nom de votre site » si on fait « Toto » c’est bon? Ou il faut que ça soit toto.com?

    Car après dans le lien symbolique, il ne connait pas la commande lt, (commande introuvable)
    et ln => le fichier existe.

    Voilà si vous pouvez m’éclaircir. (je suis désolé je débute!)

    Merci !

    1. Salut,
      le tuto été mal passé dans wordpress, c’est corrigé !

  34. Bidouille dit :

    Bonjour,
    après l’édition de /etc/nginx/sites-available/,
    j’active le lien symbolique et reçoit ce message :

    ln -s /etc/nginx/sites-available/<LectureOKLM> /etc/nginx/sites-enabled/<LectureOKLM>

    [3] 10029
    -bash: lt: command not found
    [4] 10031
    ln: failed to create symbolic link `./sites-available’: Permission denied
    -bash: gt: command not found
    -bash: LectureOKLM: command not found
    [3] Exit 1 ln -s /etc/nginx/sites-available/
    [5] 10033
    -bash: /etc/nginx/sites-enabled/: Is a directory
    -bash: lt: command not found
    [4] Exit 127 LectureOKLM
    [5] Exit 126 /etc/nginx/sites-enabled/
    [3] 10035
    -bash: LectureOKLM: command not found
    -bash: gt: command not found
    [3] Exit 127 LectureOKLM

    Je suis un peu perdu

    1. Un problème de transcription du tuto, corrigé, essayes la version modifiée 🙂

  35. Dalet dit :

    Bonjour,
    la commande suivante ne passe pas:
    ln -s /etc/nginx/sites-available/<Dalet> /etc/nginx/sites-enabled/<Dalet>
    J’ai le message suivant:

    [1] 1831
    bash: lt: command not found
    [2] 1833
    bash: Dalet: command not found
    bash: gt: command not found
    [2]+ Exit 127 Dalet
    [2] 1835
    bash: /etc/nginx/sites-enabled/: Is a directory
    bash: lt: command not found
    [1] Done ln -s /etc/nginx/sites-available/
    [2]+ Exit 126 /etc/nginx/sites-enabled/
    [1] 1837
    bash: Dalet: command not found
    bash: gt: command not found
    [1]+ Exit 127 Dalet

    Pouvez-vous m’en dire un peu plus?
    merci d’avance

    1. Salut,
      le tutoriel avait été mal interprété par wordpress et certains caractères avait sauté, problème réglé, tu peux retenter avec le tutoriel corrigé 😉

  36. codjo dit :

    Bonjour,
    Je ne comprend pas la dernière partie « configurer nginx pour rediriger … ».
    Nous allons commencer par écrire le fichier « /etc/nginx/sites-available/ ». De quel fichier s’agit-il ?
    J’ai créé dans le répertoire sites-available un fichier nommé du nom de mon site (servfich) avec le code indiqué.
    Puis exécuté le lien symbolique.
    Au redémarrage de nginx, j’ai une erreur :
    Restarting nginx: nginx: [emerg] open() « /etc/nginx/snippets/fastcgi-php.conf » failed (2:no such file or directory ) in /etc/nginx/sites/enabled/servfich:19
    nginx: configuration file /etc/nginx/nginx.conf test failed
    Pouvez-vous me dire ce qui se passe ?
    Merci
    PS : tout ce qui précède cette dernière partie a bien fonctionné.

    1. Bonjour,
      la ligne « /etc/nginx/sites-available/ » avait été mal prise lors de l’enregistrement de l’article, nous avons corrigé.
      Concernant l’erreur, as-tu PHP-FPM (et bien FPM) d’installé sur ton serveur ?

      1. codjo dit :

        Bonsoir,
        Ok pour la correction : j’avais effectivement mis le nom de mon site comme nom du fichier.
        J’ai php5-fpm d’installé comme demandé au début du tuto (mais pas de fpm ou php-fpm)
        Par contre, je n’ai pas de répertoire /etc/nginx/snippets dans lequel devrait se trouver le fichier fastcgi-php.conf. Pourquoi ?
        Merci

        1. Bonjour,
          c’est un problème que nous n’avons jamais rencontré. Si quelqu’un a des infos…

  37. Professeur dit :

    Bonsoir,

    Et merci pour tous ces tutos qui me font avancer à grand pas dans Linux et le pi.

    Sauf ce message, quand je redémarre nginx :

    Restarting nginx: nginx: [emerg] open() « /etc/nginx/snippets/fastcgi-php.conf » failed (2: No such file or directory) in /etc/nginx/sites-enabled/:20
    nginx: configuration file /etc/nginx/nginx.conf test failed

    Il me semble pourtant avoir tout bien suivi..?

    Dans l’attente de vous lire

    Bien à vous

    1. Professeur dit :

      C’est bon !

      J’avais ajouté un « / » en trop dans le chemin d’accès root..

      Bien à vous

    2. Salut,
      as-tu installé PHP-FPM ?

  38. Geoffrey dit :

    Bonjour,

    WordPress fonctionne bien ? Même avec quelques plugins ? :O

    1. Salut,
      Oui, avec quelques plugin tout va bien. Par contre, l’utilisation massive de plugin peut conduire à une baisse de performance.

Partager
Inscription à la Newsletter
Inscrivez-vous à la Newsletter.
Vous avez aimé cet article ?
Inscrivez-vous et restez informé !