OVH Community, your new community space.

Prevenir ejecución de .php en un directorio


Ferny
06/06/2008, 13:26
La segunda solución no me valía porque el directorio sí debe ser accesible vía http, pero con la primera funciona perfectamente, añadiendo además las extensiones .php4 y .php5. Que se vea el código (efectivamente es así) no es realmente importante para lo que quería, así que tema solucionado.

¡Un saludo y gracias!

wancho
06/06/2008, 10:35
Buenas,

Se me ocurre quizás poniendo esta línea en el .htaccess :

RemoveHandler .php

Con esto le estás diciendo que no interprete el php, pero lo que creo que te puede pasar es que no lo interprete y te escupa todo el contenido del archivo 'tal cual' o sea como si lo vieras en un editor de texto, pero bueno, la cuestión es probarlo.

Otra opción podría ser la de proteger el directorio (ponerlo también en el .htaccess:


Order Deny,Allow
Deny from All


De esta manera, no podrán acceder directamente por url al contenido de la carpeta, con lo que no podrán ejecutar ningún fichero en php, solamente los podrá ejecutar el apache si se lo indicas en algún archivo que tengas en php, que por ejemplo cargara un archivo de ese directorio mediante un 'include' o 'require'.

Espero te sirva de algo o te de alguna idea mas.

Un saludo.

Ferny
02/06/2008, 19:05
Negativo... no da el internal server error, pero los php siguen funcionando en el directorio :-(

De todas formas gracias por la ayuda :-)

AxT22
02/06/2008, 18:20
prueba poniendo un .htaccess en la carpeta en la que deseas que no se ejecuten los .php(se aplicara a subdirectorios tambien) con lo siguiente:

Código:
RemoveType application/x-httpd-php .php .php3

Ferny
01/06/2008, 21:52
Hola de nuevo

No conseguí que funcionara. Con tu método logré que me tomara el php.ini (visto a través de un phpinfo), después lo edité y puse el "engine" en off, pero seguía interpretando los php. Es más, cambiando el "engine" a off en el php.ini principal, también seguía interpretando los php. En conclusión, no sé si para deshabilitar php basta con poner el "engine" en off o hace falta algo más

Un saludo

wancho
30/05/2008, 16:54
La verdad es que no lo he probado, pero en teoría(je, je) debería de funcionar ya que al estar en .htaccess se supone que cuando entra en ese directorio, carga en la variable la nueva ruta del archivo php.ini.

Ya nos comentarás.

Saludos.

Ferny
30/05/2008, 13:12
Gracias por el enlace, lo intentaré probar esta tarde o mañana. Una cosa que no sé si habrás probado, si el .htaccess lo meto en una subcarpeta en vez de en la raiz del dominio, ¿funciona sólo en la carpeta? Ya que mi intención es prevenir el php en un subdirectorio, pero en el resto de directorios del mismo dominio sí debe funcionar.

Un saludo

wancho
30/05/2008, 12:10
Cita Publicado inicialmente por Ferny
Hola a todos

Tengo un dedicado con la Release 2 de 64 bits. Me gustaría saber cómo puedo prevenir la ejecución de archivos .php en un directorio concreto. En otro hosting que tenía usaba un .htaccess con php_flag engine off, pero en el dedicado eso mismo da un "Internal server error". ¿Cómo sería entonces?

Un saludo y gracias de antemano
Hola Ferny,

mírate este hilo : http://foros.ovh.es/showthread.php?t=1943

Yo es la única solución que he encontrado para poder modificar variables de php, ya que tal y como esta montado el sistema apache2, con php en modo cgi, no permite el cambio de variables de ese tipo, de ahí tu error en el servidor.

Espero te sirva.

Saludos.

Ferny
29/05/2008, 23:03
Hola a todos

Tengo un dedicado con la Release 2 de 64 bits. Me gustaría saber cómo puedo prevenir la ejecución de archivos .php en un directorio concreto. En otro hosting que tenía usaba un .htaccess con php_flag engine off, pero en el dedicado eso mismo da un "Internal server error". ¿Cómo sería entonces?

Un saludo y gracias de antemano