Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Coupe WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Comment désactiver l’exécution de PHP dans certains répertoires de WordPress

La protection de votre site WordPress contre les pirates informatiques est une priorité absolue. Un moyen efficace d’améliorer la sécurité de nos sites consiste à désactiver l’exécution de PHP dans certains dossiers.

Les pirates tentent parfois de téléverser des fichiers nuisibles écrits en code PHP. Si ces fichiers parviennent à s’exécuter, ils peuvent compromettre la sécurité de votre site.

En ne permettant pas au code PHP de s’exécuter dans certains répertoires, vous pouvez empêcher ces fichiers nuisibles de causer des dommages, même s’ils sont téléversés sur votre serveur.

Cet article vous montrera comment désactiver l’exécution de PHP dans WordPress. Nous vous expliquerons comment utiliser le fichier .htaccess pour activer cette mesure de sécurité et protéger votre site contre d’éventuelles attaques.

How to Disable PHP Execution in Certain WordPress Directories

Pourquoi désactiver l’exécution de PHP dans certains répertoires de WordPress ?

Par défaut, WordPress rend certains répertoires accessibles en écriture afin que vous et d’autres utilisateurs/autrices autorisés sur votre site puissiez facilement téléverser des thèmes par défaut, des extensions, des images et des vidéos sur votre site.

Cependant, cette permissions peut être abusée si elle tombe entre de mauvaises mains, comme les pirates informatiques qui peuvent l’utiliser pour téléverser des fichiers d’accès à des portes dérobées ou des logiciels malveillants sur votre site WordPress.

Ces fichiers malveillants sont souvent déguisés en fichiers du cœur de WordPress. Ils sont pour la plupart écrits en PHP et peuvent s’exécuter en arrière-plan pour accéder à tous les aspects de votre site.

Cela semble effrayant, n’est-ce pas ?

Ne vous inquiétez pas. Il existe un correctif facile à mettre en œuvre. Il suffit de désactiver l’exécution de PHP dans certains répertoires où vous n’en avez pas besoin. Aucun fichier PHP ne sera exécuté dans ces répertoires.

Voyons comment améliorer la sécurité de WordPress en désactivant l’exécution de PHP à l’aide du fichier .htaccess.

Désactiver l’exécution de PHP dans certains répertoires de WordPress à l’aide du fichier .htaccess

La plupart des sites WordPress disposent d’un fichier .htaccess dans le dossier racine.

Ce puissant fichier de configuration permet de protéger la zone d’administration par un mot de passe, de désactiver la navigation dans les répertoires, de générer une structure d’URL favorable au référencement, etc.

Par défaut, le fichier .htaccess est situé dans le dossier racine de votre site WordPress, mais vous pouvez également créer et utiliser des fichiers .htaccess supplémentaires dans vos répertoires internes de WordPress.

Pour protéger votre site web contre les fichiers à accès dérobé, vous devez créer un fichier .htaccess et le télécharger dans les répertoires /wp-includes et /wp-content/uploads de votre site.

Créez simplement un nouveau fichier sur votre ordinateur à l’aide d’un éditeur de texte tel que Notepad sous Windows ou TextEdit sous Mac. Enregistrez le fichier sous le nom .htaccess et collez-y l’extrait de code suivant :

<Files *.php>
deny from all
</Files>

Enregistrez ensuite le fichier sur votre ordinateur.

Ensuite, vous devez télécharger ce fichier dans les dossiers /wp-includes et /wp-content/uploads sur votre serveur d’hébergement WordPress.

Vous pouvez le téléverser à l’aide d’un client FTP ou de l’application Gestionnaire de fichiers du tableau de bord cPanel de votre compte hébergeur.

Clicking the Upload button in Bluehost file manager

Une fois que le fichier .htaccess contenant le code ci-dessus est ajouté, il empêchera tout script PHP de s’exécuter dans ces répertoires.

Recherche de portes dérobées dans WordPress avec Sucuri

L’utilisation de cette astuce .htaccess vous aide à renforcer la sécurité de WordPress, mais elle ne corrigera pas un site WordPress qui a déjà été piraté.

Les portes dérobées sont habilement déguisées et peuvent déjà être masquées à la vue de tous.

Si vous souhaitez vérifier la présence d’éventuelles portes dérobées sur votre site, vous devez activer Sucuri sur votre site.

Sucuri

Sucuri est la meilleure extension de sécurité WordPress sur le marché. Il scanne votre site à la recherche d’éventuelles menaces, de codes suspects, de logiciels malveillants et de vulnérabilités.

Il empêche aussi efficacement la plupart des tentatives de piratage d’atteindre votre site en ajoutant un pare-feu entre votre site et le trafic suspect.

Plus important encore, si votre site WordPress est piraté, il le nettoiera pour vous. Pour en savoir plus, vous pouvez lire notre Avis Sucuri car nous utilisons leur service depuis des années.

Vous pouvez en savoir plus dans notre guide pour trouver et corriger les portes dérobées d’un site WordPress piraté.

Guides d’experts sur la manière d’améliorer la sécurité de WordPress

Nous espérons que cet article vous a aidé à apprendre comment désactiver l’exécution de PHP dans certains répertoires WordPress afin de renforcer la sécurité de votre site. Vous voudrez peut-être aussi apprendre d’autres techniques de sécurité. Voici quelques-uns de nos meilleurs guides sur l’amélioration de la sécurité de WordPress :

Si vous avez aimé cet article, veuillez alors vous abonner à notre chaîne YouTube pour obtenir des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.

Divulgation : Notre contenu est soutenu par les lecteurs. Cela signifie que si vous cliquez sur certains de nos liens, nous pouvons gagner une commission. Consultez comment WPBeginner est financé, pourquoi cela compte et comment vous pouvez nous soutenir. Voici notre processus éditorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

L'ultime WordPress Toolkit

Accédez GRATUITEMENT à notre boîte à outils - une collection de produits et de ressources liés à WordPress que tous les professionnels devraient avoir !

Reader Interactions

37 commentairesLaisser une réponse

  1. Jiří Vaněk

    Thanks for these safety tips. I have created an htaccess file and will upload it to FTP. I have a website on my own server, so the question of security is entirely up to me. Thanks for the next step in making my WordPress a little more secure again.

  2. Unarine Leo Netshifhefhe

    I also have this alert on my Updraft plugin where backups are not happening can this be due to htaccess?

    « Backup directory could not be created…

    The folder exists, but your webserver does not have permission to write to it. You will need to consult with your web hosting provider to find out how to set permissions for a WordPress plugin to write to the directory. (wp-content/updraft) »

  3. Brian Prom

    FYI: you have a typo in your code snippet for the .htaccess snippet.

    Using your code snippet as is (without the closing /) breaks image loading.

    • WPBeginner Support

      Thank you for pointing that out, our code should be fixed :)

      Administrateur

  4. Vitor Gonçlaves

    I’ve found some .php files in the uploads folder created by plugins. Can I assume this won’t cause a problem, or do I have to analyse each plugin individually?

    • WPBeginner Support

      If you reach out to your plugins they can let you know the specifics for those files.

      Administrateur

    • WPBeginner Support

      You’re welcome :)

      Administrateur

    • WPBeginner Support

      You’re welcome :)

      Administrateur

  5. Suman Samanta

    Great writing! You have a flair for informational writing. Your content has impressed me beyond words. I have a lot of admiration for your writing. Thank you for all your valuable input on this topic.

    • WPBeginner Support

      Thank you, glad you enjoy our writing :)

      Administrateur

  6. Thato

    Guys i think i have messed up my htaccess file, my website is completely not displaying images

    • WPBeginner Support

      Hey Thato,

      You can download your .htaccess file to your computer as a backup and then delete it from your website. Go to WordPress admin area Settings » Permalinks and click on the save changes button. This should regenerate your .htaccess file.

      Administrateur

  7. Shawn Rebelo

    Do not do wp-content.
    Do wp-content/uploads.

    And this:

    order allow,deny
    deny from all

    May very on servers.

  8. Hardik

    Does it affect the uploads file to upload on webpages?
    I found that after uploading this htaccess file to the folder many of images from many posts are not displaying.

  9. Chuck Cochems

    Yeah, denying access to php files in the includes directory breaks the site because including actually obeys .htaccess restrictions.

    But the restriction on the uploads directory is very smart, and this should be there .BY DEFAULT in the uploads directory, and there’s no good reason for it not to be present.

  10. Stan

    What’s the method for IIS servers?
    Thanks,

  11. KOnnie

    ZOMG! can’t you just disable write access to /wp-includes folder?
    Why fight with consequences when you can prevent the cause?

    • Jonathan Hodgson

      Wouldn’t this stop wordpresss being able to update the files in core updates?

  12. Jeff Wigal

    You can also put this in your Apache virtualhost, which will accomplish the same thing:

    Order allow,deny
    Deny from all

  13. anton

    how to implement this code if we have combination of lower case and upper case on file extention for example on.php on my website its work but it s not working if the file named with.PHp ,.PHP .PhP or combination of them,the backdoor script still executed

    Thank you

    • Timothée Moulin

      You can put this in your .htaccess file

      Order Deny,Allow
      Deny from All

  14. Shams

    Hi Syed,
    Thanks for such an informative post and in fact it provides a great solution for saving WordPress from hackers.

  15. Vladimir

    Hi!

    I followed all your instructions in this article, but Its not working…

    Thanks

  16. Aurélien Debord

    A so useful post with such good and quick tips.

    Thanks

  17. Ramon

    I created an .htaccess file in the wp-includes folder. Site looked oke but my WYSIWYG editor in the admin pages wasn’t working. Had to remove the .htaccess file again. (WP 3.9.1)

  18. Wes

    I also found my wp-includes folder full of php files and I can’t see how using that .htaccess file in there wouldn’t break something. I did use it in the uploads dir.

    • Editorial Staff

      It does break it sometimes (depending on the plugin you are using), but not all the time.

      Administrateur

  19. Red

    forgive my bad english…
    i followed all your instructions in this article, but when i go my dashboard to add a newpost, my post section was messed up. … i suspect the .htaccess was the problem.
    when i deleted it, the post was fine.

  20. Chris

    I added the .htaccess file to my wp-includes and didn’t have any problems. Thanks a lot of the tips.

  21. Brad

    I tried this in my /wp-includes/ directory, which is full of php files. Of course I could no longer access the site. Did you really mean to include the includes directory for use with the .htaccess file?

    Did you maybe mean /wp-includes/images ?

    • Editorial Staff

      Nope. We meant /wp-includes/ folder. We have this on our wp-includes folder. If for some reason it is breaking your site, then delete the .htaccess file from your wp-includes folder.

      Administrateur

      • Brad

        Strange, my wp-includes folder has over 90 php files in it. And it does break the site. I took it back out immediately.

        But I did put it in the /wp-content/uploads/ folder and its works just fine there. Thanks for responding

        • Alfred

          Putting an htaccess file denying access to php files in a directory full of php files does seem rather odd. I assume it’s because these files are normally only included, not executed directly. If that’s true, wouldn’t it be better to just deny access to the entire directory?

Laisser une réponse

Merci d'avoir choisi de laisser un commentaire. Veuillez garder à l'esprit que tous les commentaires sont modérés selon notre politique de commentaires, et votre adresse e-mail ne sera PAS publiée. Veuillez NE PAS utiliser de mots-clés dans le champ du nom. Ayons une conversation personnelle et significative.