Introduction à WordPress
sous Nginx
Maxime Jobin
WordCamp Montréal 2014
@maximejobinWordCamp Montréal 2014 - #wcmtl
Votre situation actuelle
• Votre site plante à cause du nombre de requêtes ?
•...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Maxime Jobin
www.maximejobin.com
m@ximejobin.com
@maximejobin
Utilisateur, Adm...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Nginx (Engine X)
Nginx est un serveur web
servant à la gestion de sites
web à ...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Origine
C10k: Gestion simultanée de 10 000
connexions
Créé en 2002 par Igor Sy...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Nginx vs Apache
Nginx
Event-driven
Empreinte faible
Apache
Process-based
MPM (...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Benchmark: Apache vs Nginx
La différence est claire au niveau de la performanc...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Utilisateurs de Nginx
@maximejobinWordCamp Montréal 2014 - #wcmtl
Utilisateurs de Nginx
WordPress.com
Mensuellement
14 milliards de pages vues
4...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Objectifs
• Installation Nginx
• Installation de PHP
• Installation de PHP-FPM...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Preparation
Achat de « monsite.com » et redirection
vers l’adresse IP du serve...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Installation de Nginx
> apt-get install nginx
Répertoires pour Nginx
/etc/ngin...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Commandes pour Nginx
> service nginx start  Démarre Nginx
> service nginx sto...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Creation MonSite.com
> useradd -d /home/monsite -m monsite
> su monsite
> mkdi...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Configuration pour Nginx
À placer dans /etc/nginx/sites-available/monsite.com
...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Tester Nginx pour monsite.com
> /usr/sbin/nginx -t
> service nginx reload
http...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Installation de PHP et MySQL
> apt-get install php5-cli
> apt-get install mysq...
@maximejobinWordCamp Montréal 2014 - #wcmtl
PHP-FPM
PHP-FPM sert d’intermédiaire pour que la requête
reçue par Nginx soit ...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Configuration de PHP-FPM
Créer un fichier monsite.conf dans /etc/php5/fpm/pool...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Configuration pour Nginx (suite!)
À placer dans /etc/nginx/sites-available/mon...
@maximejobinWordCamp Montréal 2014 - #wcmtl
On repart le tout…
> service php-fpm restart
> service nginx restart
Ajout d’u...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Base de données MySQL
> mysql -u root -p
> CREATE DATABASE monsite;
> CREATE U...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Installons WordPress !!
> su monsite
> cd ~/www
> wget http://wordpress.org/la...
@maximejobinWordCamp Montréal 2014 - #wcmtl
Pour plus d’informations
http://www.maximejobin.com/wcmtl-2014
@maximejobinWordCamp Montréal 2014 - #wcmtl
Fin
Des questions ?
Prochain SlideShare
Chargement dans…5
×

Introduction à WordPress sous Nginx

6 537 vues

Publié le

Nginx est un serveur web puissant utilisé notamment par WordPress.com. Mieux adapté aux sites à haut trafic qu’Apache, Nginx peut non seulement augmenter la vitesse de votre site, mais également supporter un nombre plus élevé de visiteurs simultanément sans équipement additionnel. Apprenez-en davantage sur l’installation et la configuration d’un serveur Nginx pour rendre votre site avec WordPress encore plus efficace.

Pour un tutoriel complet afin de créer une installation de WordPress sous Nginx:
http://www.maximejobin.com/wordpress/introduction-nginx-wordpress/

Publié dans : Technologie
0 commentaire
3 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
6 537
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4 535
Actions
Partages
0
Téléchargements
22
Commentaires
0
J’aime
3
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Introduction à WordPress sous Nginx

  1. 1. Introduction à WordPress sous Nginx Maxime Jobin WordCamp Montréal 2014
  2. 2. @maximejobinWordCamp Montréal 2014 - #wcmtl Votre situation actuelle • Votre site plante à cause du nombre de requêtes ? • Votre site accueille plus de 5000 visiteurs par jour ? • Vous souhaitez augmenter l’efficacité de votre site ? • Vous souhaitez quitter le combo cPanel / Apache ? • Vous êtes curieux par rapport à Nginx ? • Vous vous êtes trompés de salle ?
  3. 3. @maximejobinWordCamp Montréal 2014 - #wcmtl Maxime Jobin www.maximejobin.com m@ximejobin.com @maximejobin Utilisateur, Administrateur, Développeur et Formateur
  4. 4. @maximejobinWordCamp Montréal 2014 - #wcmtl Nginx (Engine X) Nginx est un serveur web servant à la gestion de sites web à haut trafic. nginx.org vs nginx.com
  5. 5. @maximejobinWordCamp Montréal 2014 - #wcmtl Origine C10k: Gestion simultanée de 10 000 connexions Créé en 2002 par Igor Sysoev, la première version a été lancée en 2004.
  6. 6. @maximejobinWordCamp Montréal 2014 - #wcmtl Nginx vs Apache Nginx Event-driven Empreinte faible Apache Process-based MPM (Multi-processing module) .htaccess Nginx & Apache Fichiers statiques, supporte SSL/TLS, Virtual hosts, Reverse proxying, Load balancing, Compression, Contrôles d’accès, URL rewriting, Custom logging, scripts Server-side, FLV streaming, FastCGI, etc.
  7. 7. @maximejobinWordCamp Montréal 2014 - #wcmtl Benchmark: Apache vs Nginx La différence est claire au niveau de la performance. ;-)
  8. 8. @maximejobinWordCamp Montréal 2014 - #wcmtl Utilisateurs de Nginx
  9. 9. @maximejobinWordCamp Montréal 2014 - #wcmtl Utilisateurs de Nginx WordPress.com Mensuellement 14 milliards de pages vues 42 millions de nouveaux articles 51 millions de nouveaux commentaires Chaque jour, des dizaines de milliers de nouveaux sites y sont créés. Source: WordPress.com
  10. 10. @maximejobinWordCamp Montréal 2014 - #wcmtl Objectifs • Installation Nginx • Installation de PHP • Installation de PHP-FPM • Installation de MySQL • Installation de WordPress Environnement utilisé: Ubuntu 14.04 via DigitalOcean.com
  11. 11. @maximejobinWordCamp Montréal 2014 - #wcmtl Preparation Achat de « monsite.com » et redirection vers l’adresse IP du serveur. > apt-get update > apt-get upgrade
  12. 12. @maximejobinWordCamp Montréal 2014 - #wcmtl Installation de Nginx > apt-get install nginx Répertoires pour Nginx /etc/nginx nginx.conf /etc/nginx/sites-available /etc/nginx/sites-enabled Validation via adresse IP: http://66.77.88.99
  13. 13. @maximejobinWordCamp Montréal 2014 - #wcmtl Commandes pour Nginx > service nginx start  Démarre Nginx > service nginx stop  Arrête Nginx > service nginx restart  Relance Nginx > service nginx reload  Recharge config > /usr/sbin/nginx -t  Test config
  14. 14. @maximejobinWordCamp Montréal 2014 - #wcmtl Creation MonSite.com > useradd -d /home/monsite -m monsite > su monsite > mkdir –p ~/www > echo "Mon site!" > ~/www/index.html > exit
  15. 15. @maximejobinWordCamp Montréal 2014 - #wcmtl Configuration pour Nginx À placer dans /etc/nginx/sites-available/monsite.com server { listen 80; server_name www.monsite.com; root /home/monsite/www; index index.html index.php; } ifs are ev
  16. 16. @maximejobinWordCamp Montréal 2014 - #wcmtl Tester Nginx pour monsite.com > /usr/sbin/nginx -t > service nginx reload http://www.monsite.com
  17. 17. @maximejobinWordCamp Montréal 2014 - #wcmtl Installation de PHP et MySQL > apt-get install php5-cli > apt-get install mysql-server mysql- client php5-mysql
  18. 18. @maximejobinWordCamp Montréal 2014 - #wcmtl PHP-FPM PHP-FPM sert d’intermédiaire pour que la requête reçue par Nginx soit interprétée par PHP. > apt-get install php5-fpm /etc/php5/fpm/php.ini
  19. 19. @maximejobinWordCamp Montréal 2014 - #wcmtl Configuration de PHP-FPM Créer un fichier monsite.conf dans /etc/php5/fpm/pool.d/ : [monsite] user = monsite group = monsite listen = /var/run/php5-fpm.monsite.sock listen.owner = www-data listen.group = www-data pm = dynamic pm.max_children = 75 pm.start_servers = 10 pm.min_spare_servers = 5 pm.max_spare_servers = 20 pm.max_requests = 500
  20. 20. @maximejobinWordCamp Montréal 2014 - #wcmtl Configuration pour Nginx (suite!) À placer dans /etc/nginx/sites-available/monsite.com à l’intérieur de server { … } # Gestion des fichiers PHP (envoi vers PHP-FPM) location ~ .php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.monsite.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
  21. 21. @maximejobinWordCamp Montréal 2014 - #wcmtl On repart le tout… > service php-fpm restart > service nginx restart Ajout d’un fichier pi.php dans /home/monsite/www <?php phpinfo(); ?> Test: http://www.monsite.com/pi.php
  22. 22. @maximejobinWordCamp Montréal 2014 - #wcmtl Base de données MySQL > mysql -u root -p > CREATE DATABASE monsite; > CREATE USER 'umonsite'@'localhost' IDENTIFIED BY 'abcd'; > GRANT ALL PRIVILEGES ON monsite.* TO 'umonsite'@'localhost'; > FLUSH PRIVILEGES; > quit
  23. 23. @maximejobinWordCamp Montréal 2014 - #wcmtl Installons WordPress !! > su monsite > cd ~/www > wget http://wordpress.org/latest.zip > unzip latest.zip > cd wordpress > mv * ../ > cd .. > rm –Rf wordpress latest.zip http://www.monsite.com
  24. 24. @maximejobinWordCamp Montréal 2014 - #wcmtl Pour plus d’informations http://www.maximejobin.com/wcmtl-2014
  25. 25. @maximejobinWordCamp Montréal 2014 - #wcmtl Fin Des questions ?

×