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

Cómo desactivar la ejecución de PHP en determinados directorios de WordPress

Proteger su sitio web WordPress de los hackers es una prioridad absoluta. Una forma eficaz de mejorar la seguridad de nuestros sitios web es deshabilitar la ejecución de PHP en determinadas carpetas.

Los piratas informáticos a veces intentan cargar archivos dañinos escritos en código PHP. Si estos archivos son capaces de ejecutarse, pueden comprometer la seguridad de su sitio web.

Al no permitir que el código PHP se ejecute en ciertos directorios, puede evitar que estos archivos dañinos causen daños, incluso si se cargan en su servidor.

Este artículo le mostrará cómo desactivar la ejecución de PHP en WordPress. Explicaremos cómo utilizar el archivo .htaccess para habilitar esta medida de seguridad y proteger tu sitio de posibles ataques.

How to Disable PHP Execution in Certain WordPress Directories

¿Por qué desactivar la ejecución de PHP en determinados directorios de WordPress?

Por defecto, WordPress hace que ciertos directorios sean de escritura para que usted y otros usuarios autorizados de su sitio web puedan subir fácilmente temas, plugins, imágenes y vídeos a su sitio web.

Sin embargo, se puede abusar de esta capacidad si cae en las manos equivocadas, como los hackers que pueden utilizarla para subir archivos de acceso de puerta trasera o malware a su sitio web WordPress.

Estos archivos malintencionados suelen camuflarse como archivos del núcleo de WordPress. En su mayoría están escritos en PHP y pueden ejecutarse en segundo plano para obtener acceso completo a todos los aspectos de su sitio web.

Da miedo, ¿verdad?

No se preocupe. Hay una corrección fácil para eso. Simplemente desactive la ejecución de PHP en ciertos directorios donde no lo necesite. Al hacerlo, ningún archivo PHP se ejecutará dentro de esos directorios.

Veamos cómo mejorar la seguridad de WordPress desactivando la ejecución de PHP mediante el archivo .htaccess.

Desactivando la ejecución de PHP en ciertos directorios de WordPress usando el archivo .htaccess

La mayoría de los sitios WordPress tienen un archivo .htaccess en la carpeta raíz.

Este potente archivo de configuración se utiliza para proteger con contraseña el área de administrador, desactivar la navegación por directorios, generar una estructura de URL amigable para SEO y mucho más.

Por defecto, el archivo .htaccess se encuentra en la carpeta raíz de su sitio web WordPress, pero también puede crear y utilizar archivos .htaccess adicionales dentro de sus directorios internos de WordPress.

Para proteger su sitio web de archivos de acceso de puerta trasera, debe crear un archivo .htaccess y subirlo a los directorios /wp-includes y /wp-content/uploads de su sitio.

Simplemente cree un nuevo archivo en su ordenador utilizando un editor de texto como Notepad en Windows o TextEdit en Mac. Guarde el archivo como .htaccess y pegue el siguiente fragmento de código en su interior:

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

Ahora, guarda el archivo en tu ordenador.

A continuación, debe subir este archivo a las carpetas /wp-includes y /wp-content/uploads de su servidor de alojamiento de WordPress.

Puede subirlo utilizando un cliente FTP o la aplicación Administrador de archivos del panel de control de cPanel de su cuenta de alojamiento.

Clicking the Upload button in Bluehost file manager

Una vez añadido el archivo .htaccess con el código anterior, impedirá que se ejecute cualquier script PHP en estos directorios.

Marcar / comprobar puertas traseras en WordPress usando Sucuri

Usar este truco .htaccess le ayuda a reforzar la seguridad de su WordPress, pero no corregirá un sitio WordPress que ya ha sido hackeado.

Las puertas traseras se disfrazan con astucia y ya pueden ocultarse a plena vista.

Si quiere comprobar posibles puertas traseras en su sitio web, entonces necesita activar Sucuri en su sitio web.

Sucuri

Sucuri es el mejor plugin de seguridad para WordPress del mercado. Explora tu sitio web en busca de posibles amenazas, código sospechoso, malware y vulnerabilidades.

También bloquea eficazmente la mayoría de los intentos de pirateo, impidiendo incluso que lleguen a su sitio web al añadir un cortafuegos entre su sitio y el tráfico sospechoso.

Y lo más importante, si tu sitio WordPress es hackeado, lo limpiará por ti. Para obtener más información, puedes leer nuestra reseña / valoración de Sucuri porque hemos estado utilizando su servicio durante años.

Puede obtener más información en nuestra guía sobre cómo encontrar y corregir puertas traseras en un sitio WordPress hackeado.

Guías de expertos sobre cómo mejorar la seguridad de WordPress

Esperamos que este artículo te haya ayudado a aprender cómo deshabilitar la ejecución de PHP en ciertos directorios de WordPress para reforzar la seguridad de tu sitio web. Puede que también quieras aprender otras técnicas de seguridad. Aquí tienes algunas de nuestras mejores guías para mejorar la seguridad de WordPress:

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Descargo: Nuestro contenido está apoyado por los lectores. Esto significa que si hace clic en algunos de nuestros enlaces, podemos ganar una comisión. Vea cómo se financia WPBeginner , por qué es importante, y cómo puede apoyarnos. Aquí está nuestro proceso editorial .

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.

El último kit de herramientas de WordPress

Obtenga acceso GRATUITO a nuestro kit de herramientas - una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!

Reader Interactions

37 comentariosDeja una respuesta

  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 :)

      Administrador

  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.

      Administrador

    • WPBeginner Support

      You’re welcome :)

      Administrador

    • WPBeginner Support

      You’re welcome :)

      Administrador

  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 :)

      Administrador

  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.

      Administrador

  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.

      Administrador

  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.

      Administrador

      • 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?

Deja tu comentario

Gracias por elegir dejar un comentario. Tenga en cuenta que todos los comentarios son moderados de acuerdo con nuestros política de comentarios, y su dirección de correo electrónico NO será publicada. Por favor, NO utilice palabras clave en el campo de nombre. Tengamos una conversación personal y significativa.