Chaque image d’une page Web envoie une demande HTTP distincte au serveur, ce qui réduit la vitesse de réponse si toutes les images et tous les fichiers multimédias sont stockés sous le même domaine. Par conséquent, il est recommandé d’héberger vos images sur un sous-domaine distinct afin qu’elles soient chargées sous forme de requêtes parallèles lors du chargement de la page. Dans cet article, nous expliquons Comment déplacer le dossier médias de WordPress vers un sous-domaine.
Déplacer le dossier médias de WordPress vers un sous-domaine
1. Création d’un sous-domaine
Connectez-vous à cPanel de votre hébergement ou à tout compte équivalent et créez un sous-domaine avec le nom que vous voulez.
Accédez à « domaines> sous-domaines » dans votre cPanel. Saisissez le nom du sous-domaine et cliquez sur le bouton créer. Par exemple, nous avons créé un sous-domaine img.wpcours.com ; vous pouvez utiliser n’importe quel nom comme media.votredomaine.com .
2. Vérifiez les paramètres DNS
Une fois le sous-domaine créé, assurez-vous que les enregistrements A correspondants sont créés dans votre DNS. Dans Bluehost, vous pouvez vérifier cela sous « domaines> éditeur de zone ».
3. Migration d’images vers un sous-domaine
Cette étape n’est requise que pour ceux qui ont déjà des images stockées sur leur site dans différents répertoires comme « / wp-content / uploads / ». Si vous avez un nouveau site sans images existantes, cette étape n’est pas requise.
Lancez votre client FTP et téléchargez le dossier entier où les images sont stockées sur votre ordinateur local. envoyez ensuite toutes les images dans le dossier du sous-domaine nouvellement créé.
Maintenant que vous avez dupliqué toutes les images dans le sous-domaine, la prochaine étape consiste à configurer votre installation WordPress sur le domaine principal pour utiliser le sous-domaine comme dossier de stockage (upload) pour les fichiers multimédias.
Voir aussi : optimiser vos images sous WordPress
4. Changer le dossier de stockage de Médias en sous-domaine
Il est recommandé de sauvegarder votre base de données avant d’effectuer cette étape.
Connectez-vous à votre compte d’hébergement et lancez la section «phpMyAdmin» sous cPanel pour ouvrir la base de données de votre domaine principal. Sélectionnez le tableau «wp-options» et remplacez les deux paramètres suivants et ensuite enregistrez vos paramètres.
upload_path | répertoire racine de pour votre sous-domaine |
upload_url_path | chemin URL réel pour votre sous-domaine |
Par exemple:
upload_path | /home/server_root/publich_html/img |
upload_url_path | http://img.yourdomain.com |
Server_root est le répertoire racine de votre serveur, c’est le nom du compte d’hébergement dans le cas de Bluehost. Si vous ne trouvez pas la racine du serveur, ajoutez le code ci-dessous dans l’un de vos modèles PHP WordPress et copiez le message qui s’affiche.
<?php echo $_SERVER; ?>
Jusqu’à cette étape, il n’y aura aucun impact sur votre site en direct car le dossier de stockage de médias existant n’est pas modifié. Toute nouvelle image que vous téléchargez désormais sera stockée sous le sous-domaine que vous avez entré dans le tableau « wp-options ». Vous pouvez vérifier cela en téléchargeant une image de test et vérifier l’URL.
Une fois que vous avez modifié le chemin de téléchargement dans le tableau «wp-options», vous pouvez voir que les options de chemin de stockage sont activées dans l’interface d’administration de WordPress sous « Réglages> Média ». Désormais, vous pouvez mettre à jour le chemin du dossiers de stockage directement ici.
Méthode automatique en utilisant un plugin
Si vous avez peur de tout gâcher lors de l’édition de wp-config.php , vous pouvez installer ce plugin appelé Upload URL and Path Enabler par Gregory Viguier, qui ramènera l’option dans la page Réglages> Media .
Notez que bien que ce plugin n’ait pas été mis à jour depuis plus de 5 ans, le plugin fonctionne toujours bien dans la dernière version de WordPress car il n’y a pas beaucoup de changement dans ce domaine dans WordPress. Une fois installé, vous trouverez 2 champs de saisie, comme indiqué ci-dessous:
Définissez le nom du dossier dans le champ «Stocker les téléchargements dans ce dossier» et le sous-domaine dans le champ «Chemin URL complet vers les fichiers».
Votre fichier devrait maintenant être livré via le sous-domaine.
5. Modification des URL d’images en ligne
Cette étape n’est pas obligatoire si vous n’avez aucune image existante sur votre site. Pour ceux qui ont déjà des images sur leur site, vous devez changer le pointeur du dossier actuel vers le chemin du sous-domaine nouvellement créé. Pour ce faire, ouvrez «phpMyAdmin» et sélectionnez la base de données de votre domaine principal. Sous l’onglet SQL, ensuite exécutez la requête ci-dessous:
UPDATE wp_posts SET post_content = REPLACE(post_content,'URL du dossier média actuel','URL du dossier media nouvel')
URL du dossier média actuel – http://www.votredomaine.com/wp-content/uploads
URL du nouveau dossier média – http://img.votredomain.com
Cela modifiera toutes les URL d’images existantes pour pointer vers le nouveau sous-domaine. C’est ça!!! Vous avez terminé et n’oubliez pas de vérifier que votre site se charge avec les images du sous-domaine en vérifiant l’URL d’une image sur le site en direct.
6. Supprimer ou modifier l’ancien dossier de média
Une fois les images chargées à partir du sous-domaine, vous pouvez supprimer toutes les images de l’ancien dossier multimédia ( / wp-content / uploads / ). Vous pouvez également changer le nom du dossier (comme / uploads_old / ) pour conserver les images sur le domaine principal comme une mesure de sécurité.
7. Redirection des images déjà indexées
Toutes les images existantes peuvent avoir été indexées par les moteurs de recherche avec d’anciennes URL, ce qui entraînera désormais des erreurs 404 puisque vous avez modifié / supprimé l’ancien dossier et déplacé vos images vers un nouveau sous-domaine.
Ici, vous devez configurer une redirection 301 permanente comme ci-dessous dans le fichier .htaccess de votre domaine principal.
RewriteCond %{HTTP_HOST} ^votredomaine\.com$ RewriteCond %{HTTP_HOST} ^www\.votredomaine\.com$ RewriteRule ^wp\-content\/uploads\/?(.*)$ "http\:\/\/sousomaine\.yourdomain\.com\/$1"
Remplacez sous-domaine et votre domaine par vos propres valeurs.
Cela garantira que toutes les URL d’images sont redirigées vers le nouveau sous-domaine et que vous ne perdez aucun trafic de la recherche d’images du moteur de recherche.
8. Création d’une page d’accueil pour un sous-domaine
Nous recommandons une dernière étape: l’ajout d’une page d’accueil pour votre sous-domaine. À ce stade, lorsque vous essayez d’atteindre votre sous-domaine (comme img.wpcours.com), il affichera une erreur 403 d’accès interdit qui peut ne pas sembler professionnelle.
1. Vous pouvez également utiliser des dossiers supplémentaires dans des sous-domaines comme « img.wpcours.com/fichiers/» .
2. Si vous souhaitez que vos images soient classées dans des dossiers mensuels, cochez la case sous » Réglages> Média> Organiser mes téléchargements dans des dossiers mensuels et annuels « . Ensuite, l’URL de l’image ressemblera à « img.wpcours.com/2020/06/nom-image.jpg ».
Cedric
Bonjour,
Est ce qu’en affectant le sous domaine au répertoire actuel d’upload, on obtiendrait le même résultat ? Ainsi pas besoin d’avoir un autre serveur et de déménager les images, par contre cela permettrait de réaliser des requêtes parallèles pour le contenu et les images, non ?
Laurène
Bonjour, dans ma table wp-options il n’y a ni « upload_path », ni « upload_url_path »… et dans WordPress, il y a bien la case à décocher mais pas la possibilité d’indiquer un répertoire !
Ma version de WordPress est 5.7.1
Cette option a-t-elle disparue ?
Comment faire alors ?
Merci d’avance pour votre aide
wpcours
@Laurène : On a met à jours le tutoriel merci d’essayer la méthode automatique (utilisation du plugin) et n’oubliez pas de faire une sauvegarde de votre site avant toute manipulation.