Usando Apache como servidor web, si por alguna necesidad no queremos que se ejecute código PHP en un directorio de nuestro servidor debemos añadir la siguiente directiva al fichero .htaccess del directorio:
php_value engine off
Usando Apache como servidor web, si por alguna necesidad no queremos que se ejecute código PHP en un directorio de nuestro servidor debemos añadir la siguiente directiva al fichero .htaccess del directorio:
php_value engine off
Si queremos que no se puedan subir (upload) un tipo (o varios tipos) de ficheros a nuestro servidor o a un directorio específico, tenemos que crear (o modificar) el archivo .htaccess (el principal o el de un directorio en particular).
Por ejemplo, imaginad que solo queremos que se puedan subir archivos jpg:
AddType image/jpeg .jpg
Si ahora solo queremos subir ficheros de tipo htm y/o html:
AddType text/plain .htm .html
Cuando solicitamos un determinado fichero a un servidor Apache desde un navegador web, en caso de que el servidor no lo encuentre, automáticamente (y por defecto) nos mostrará un listado del directorio (carpeta), y nos permitirá navegar por dicho directorio y/o acceder a los ficheros que contenga.
Este comportamiento no es muy seguro, porque estamos permitiendo ver nuestra estructura de directorio y su contenido a cualquiera, es por lo que es muy recomendable deshabilitarlo.
Esto se consigue añadiendo la siguiente directiva al fichero .htaccess de nuestro directorio que queremos proteger:
Options -Indexes
Podemos denegar el servicio, desde nuestro servidor Apache, a una dirección IP o aun rango de ellas, o bien permitirlo.
Para ello modificaremos el fichero .htaccess del directorio al que queremos denegar (o permitir) el servicio por IP.
Ejemplo de permitir el acceso a todas las IP, excepto a la IP 1.2.3.4:
order allow, deny
deny from 1.2.3.4
allow from all
Con el siguiente ejemplo negamos el servicio al rango de IPs 1.2.*.*, y lo permitimos al resto:
order allow, deny
deny from 1.2.
allow from all
En este ejemplo denegaremos el servicio a todo lo que venga del dominio www.dominio.es:
order allow, deny
deny from www.dominio.es
allow from all
En los tres ejemplos siguientes haremos justamente lo contrario, denegarlo a todos y permitirlo solo en los casos que queramos:
order deny, allow
allow from 1.2.3.4
deny from all
order deny, allow
allow from 1.2.
deny from all
order deny, allow
allow from www.dominio.es
deny from all
Es posible aplicar diversas normas:
order allow, deny
deny from 1.2.3.4
deny from 1.2.3.5
deny from 1.2.4.
deny from www.dominio.es
allow from all