Astuces

Astuce : Installer WordPress de A à Z sur un serveur dédié – vHost + MySQL

wordpressPetit article bien sympa qui va vous expliquer comment installer WordPress de A à Z sur un serveur dédié, c’est à dire un serveur dont vous avez l’accès root et donc que vous administrez.
A travers cette article, nous n’allons pas seulement voir comment mettre en place l’applicatif (le blog), mais nous allons également aborder comment créer de la base de données MySQL ainsi que de la mise en place de la vHost.

Prérequis

Dans notre exemple, nous partirons sur le principe que notre serveur tourne sous CentOs (Red Hat) et que toute la partie DNS est déjà créée (création d’un enregistrement de type A : votre nom de domaine vers l’IP).
Le nom de domaine utilisé dans l’exemple sera alexblog.fr.

Apache, PHP5 et MySQL doivent déjà être installés au minimum (et démarrés bien évidement). Le service FTP est un plus avec par exemple le paquet vsftpd.

 yum install httpd
yum install php5
yum install mysql mysql-server 

Pour savoir quelle version de WordPress utilisée, je vous invite à livre cet article.

Mise en place de l’environnement

Téléchargez votre version de WordPress dans /var/www/html/.

 cd /var/www/html
wget http://fr.wordpress.org/wordpress-3.6.1-fr_FR.tar.gz 

Dé zippez ensuite cette archive et supprimez la :

 tar -xzvf wordpress-3.6.1-fr_FR.tar.gz
rm wordpress-3.6.1-fr_FR.tar.gz

Votre répertoire de votre blog WordPress sera alors /var/www/html/wordpress/.
Vous pouvez si vous le désirez renommer ce dernier répertoire

 mv wordpress/ MON_NOM/

Mise en place de la vHost

La création va se dérouler en deux temps :

  • Configuration de la vHost
  • Création du répertoire des logs

Allez dans le répertoire de configuration d’apache et créez un nouveau fichier de configuration :

cd /etc/httpd/conf.d/
vim alex_blog.fr.conf

Voici un exemple de fichier de configuration :

<VirtualHost *:80>
ServerName alexblog.fr
DocumentRoot /var/www/html/wordpress
       
#Blog
<Directory "/var/www/html/wordpress/">
AllowOverride All
 Options -Indexes +FollowSymLinks
</Directory>

#Interface d'administration
<Directory "/var/www/html/wordpress/wp-admin/">
Order deny,allow
Deny from all
Allow from MON IP
</Directory>

#Logs
ErrorLog /var/log/httpd/wordpress/error_log
CustomLog /var/log/httpd/wordpress/access_log common
</VirtualHost>

Rapide explication des différentes directives :

  •  AllowOverride All         : Indique que les fichiers .htaccess seront interprétés
  • Options
    • -Indexes : Empêche le listage des répertoires si aucun fichier index n’existe
    • +FollowSymLinks :  Permet de suivre les liens symboliques placés dans le répertoire

Une partie importante dans ce fichier  concerne la restriction d’accès à /var/www/html/wordpress/wp-admin/ avec Order deny,allow.
Vous allez devoir indiquer votre ou vos IPs dans le Allow from.

Si vous avez une IP dynamique, oubliez cette partie « #Interface d’administration » et supprimez la de la vHost.

N’oubliez pas ensuite de créer le répertoire qui va accueillir vos journaux (logs) :

mkdir /var/log/httpd/wordpress/

Rechargement d’apache

Nous allons relancer le service apache afin de prendre en compte notre nouvelle vHost.

Testez toute d’abord la configuration d’apache (vous devriez avoir un Syntax Ok).

apachectl -t

Rechargez donc ensuite apache :

service httpd reload

Création de la base de données

Tout va se dérouler en 4 étapes.

Connectez vous en admin à votre base de données.

mysql -u root -p

Créez la base de données qui va contenir WordPress.

CREATE DATABASE wordpress_database;

Créez un utilisateur SQL qui aura uniquement les droits sur cette base de données.

GRANT ALL PRIVILEGES ON wordpress_database.* TO adminWP_sql@localhost identified by 'PASSWORD';
  • wordpress_database : nom de la basse de donées
  • adminWP_sql : nom de votre utilisateur sql

Appliquez les modifications.

FLUSH PRIVILEGES;

Modification du fichier de configuration wp-config.php

Retournez dans le répertoire ou se trouve le répertoire de blog, ici /var/www/html/wordpress/.

Renommez le fichier wp-config-sample.php en wp-config.php et éditez le.

mv wp-config-sample.php wp-config.php
vim wp-config.php

Modifiez les paramètres suivants :

/** Nom de la base de donnees de WordPress. */
define('DB_NAME', 'votre_nom_de_bdd');

/** Utilisateur de la base de données MySQL. */
define('DB_USER', 'votre_utilisateur_de_bdd');

/** Mot de passe de la base de données MySQL. */
define('DB_PASSWORD', 'votre_mdp_de_bdd');

Dans notre exemple, nous aurons :

/** Nom de la base de donnees de WordPress. */
define('DB_NAME', 'wordpress_database');

/** Utilisateur de la base de données MySQL. */
define('DB_USER', 'adminWP_sql');

/** Mot de passe de la base de données MySQL. */
define('DB_PASSWORD', 'PASSWORD');

Création d’un utilisateur FTP

Pour pouvoir par la suite, mettre à votre jour blog, déposez des nouveaux thèmes ou extensions, nous allons mettre en place un utilisateur FTP, nous le nommerons wordpress_ftp.

useradd wordpress_ftp -s /sbin/nologin -d /var/www/html/wordpress

/var/www/html/wordpress étant le répertoire où est installé WordPress.

Attribuez ensuite un mot de passe à votre utilisateur.

passwd wordpress_ftp

Nous allons maintenant modifier les droits de votre installation.

chown -R wordpress_ftp.apache /var/www/html/wordpress/

Tous les fichiers et répertoires présents dans /var/www/html/wordpress/ auront comme propriétaire votre utilisateur ftp (wordpress_ftp) et comme groupe apache.

Déploiement de l’environnement WordPress

La dernière partie reste la finalisation de l’installation de WordPress.

Pour se refaire, rendez-vous sur l’URL de votre site web, ici : https://alexblog.fr/wp-admin/install.php et répondez aux quelques questions.

wordpress_install1

wordpress_install2

Voilà, votre blog est maintenant installé et fonctionnel !

Montrez plus

@lex

Créateur de ce blog, je suis un passionné par tout ce qui touche à l'informatique et à la photographie.

Articles Liés

4 commentaires

  1. T’est serieux tu fait une install en HTTTP !

    il manque un bout

    il faut plus faire d’install en http, il faut passer en https !!!!

  2. Merci Alex pour cette article qui m’a beaucoup aidé dans l’installation de mon serveur Centos.

    Je pense que l’on peut également rajouté l’execution du script « mysql_secure_installation » afin de sécuriser un peux mieux la base de donné.

    Cordialement.

  3. Bonjour Michael,
    Merci pour votre commentaire.
    C’est exact mais le tarif n’est pas du tout le même et n’est pas à la portée de toutes les bourses.

  4. Certains hébergeurs internet comme http://www.metahoster.com/ vendent également des serveurs dédiés infogérés, cela permet d’avoir son propre serveur dédié mais de laisser l’administration de celui-ci à la charge de l’hébergeur.

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Bouton retour en haut de la page