Aller au contenu

WordPress

Installer WordPress:

Télécharger Wordpress
cd /volume1/web
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
Régler les permissions
sudo chown -R http:http wordpress
sudo chmod -R 755 /volume1/web/wordpress/
sudo find /volume1/web/wordpress/ -type d -exec chmod 755 {} \;
sudo find /volume1/web/wordpress/ -type f -exec chmod 644 {} \;

Créer un Virtual Host:

  • Aller dans Web Station -> Portail de services Web -> Créer -> Créer un portail de service
  • Sélectionner Virtual Host
  • Configurer un hôte virtuel: -Nom d'hôte: -Port: cocher 80/443 -Racine du document: web/wordpress -Paramètres HTTPS: cocher HSTS -Serveur principal HTTP: Nginx -PHP: PHP 7.4

DSM ajustera les permissions pour les fichiers WordPress.

Créer une base MariaDB:

Se connecter à MySQL
sudo mysql -u root -p
Créer une base
# Supprimer une ancienne base:
# DROP DATABASE wordpress;

MariaDB > CREATE DATABASE wordpress;

# Créer un utilisateur autorisé à se connecter uniquement depuis le NAS 
MariaDB > CREATE USER 'adm_wp'@'localhost' IDENTIFIED BY 'DB_password';

# Créer un utilisateur autorisé à se connecter uniquement depuis une IP fixe (interne/externe) 
# CREATE USER 'adm_wp'@'192.168.1.123' IDENTIFIED BY 'DB_password';
# Créer un utilisateur autorisé à se connecter uniquement depuis le réseau local 
# CREATE USER 'adm_wp'@'192.168.1.%' IDENTIFIED BY 'DB_password';
# Créer un utilisateur autorisé à se connecter uniquement depuis ln'importe où
# CREATE USER 'adm_wp'@'%' IDENTIFIED BY 'DB_password';

# Donner tousles droits à l'utilisateur admin_wp sur la base wordpress depuis le NAS
MariaDB > GRANT ALL PRIVILEGES ON wordpress . * TO 'adm_wp'@'localhost';

# On peut regrouper les 2 dernières commandes
# GRANT ALL ON wordpress.* TO 'adm_wp'@'localhost' IDENTIFIED BY 'Kpm!65YU$q';

MariaDB > FLUSH PRIVILEGES;
Vérifier la base créée
 MariaDB > SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| admin_gitea        |
| information_schema |
| mysql              |
| nextcloud          |
| performance_schema |
| wordpress          |
+--------------------+

MariaDB > SELECT User, Host FROM mysql.user;
+-----------------+-----------+
| User            | Host      |
+-----------------+-----------+
| adm_gitea       | %         |
| admin_nextcloud | %         |
| root            | 127.0.0.1 |
| root            | ::1       |
| adm_wp          | localhost |
| root            | localhost |
+-----------------+-----------+

Finaliser l'installation:

Aller à https://clicclac.synology.me/wordpress dans Firefox.

Permaliens:

# Note : avec DSM7, le chemin d'accès du fichier server.ReverseProxy.conf a changé
#         DSM6.2  = /etc/nginx/app.d/server.ReverseProxy.conf
#         DSM7    = /etc/nginx/sites-enabled/server.ReverseProxy.conf

Identification du dossier réceptacle:

sudo nano /usr/local/etc/nginx/sites-enabled/server.webstation-vhost.conf
...

include /usr/local/etc/nginx/conf.d/2bbf5ec3-353e-48c2-8564-f5ad432bb05e/user.conf*;

...

Création du fichier:

cd /usr/local/etc/nginx/conf.d/2bbf5ec3-353e-48c2-8564-f5ad432bb05e/

# Créer un fichier de configuration nginx pour gérer les permaliens
sudo nano user.conf.wordpress-permalink
location /{
  try_files $uri $uri/ /index.php?$args;
}
Tester la configuration
sudo nginx -t
Recharger nginx
sudo systemctl reload nginx

Mises-à-jour

Configurer le fichier config.php comme suit:

define( 'FS_METHOD', 'ftpext' );
define( 'FTP_PASS', 'nas_password' );
define( 'FTP_USER', 'bruno' );
define( 'FTP_HOST', 'clicclac.synology.me:21' );

ou plus simplement:

define( 'FS_METHOD', 'direct' );

Liens:

Installer WordPress sur Debian / nginx


Dernière mise à jour: March 4, 2022