Buenos días:
Estoy intentando bloquear el acceso a todos los archivo JSON, pero por alguna razón no funciona esta directiva que incluyo en el .htaccess:
<FilesMatch ".(json|html)$">
Order allow,deny
Deny from all
</FilesMatch>
Lo curioso es que si funciona con archivos .html 😣
¿Sabéis por qué puede estar pasando? He probado ese mismo código en un Apache local y bloquea los archivos JSON
¡Un saludo!
Contenido solo visible a usuarios registrados
Este enlace debería devolver 403
Este enlace funciona, devuelve 403
Hola Pedro.
Prueba a denegar el acceso a ese archivo:
<files data.json> order allow,deny deny from all </files>
Un saludo
@pepesoler Hola Pepe. Nada, he borrado el contenido del .htaccess y he añadido solamente la directiva que me pasas y sigue visible el archivo desde el navegador.
Hola Pedro Jose,
Prueba si el siguiente código te permite bloquear el acceso que deseas
<Files "*.json">
Order Deny,Allow
Deny from all
</Files>
De igual forma si es posible envíanos una captura donde añades el archivo, de esta forma podemos verificarlos con mayor detalle
Un Saludo
@karen Hola Karen. Nada, lo mismo que con la directiva de @pepe. Sigo pudiendo acceder al JSON desde el navegador.
Lo curioso es que si cambio la extension de la directiva que me pasas a HTML si que funciona y bloquea el acceso.
Hola Pedro jose.
Pues no hay más directiva para proteger archivos.
Puedes probar con algunas de estas:
<FilesMatch "\.(htaccess|htpasswd|ini|php|log|json|txt)$"> Order Allow,Deny Deny from all </FilesMatch>
<files CONFIG.json>
order deny,allow
deny from all
</files>
<files DATA.json>
order deny,allow
deny from all
</files>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(CONFIG|DATA).json$ - [NC,F,L]
Revisa esta entrada del blog donde se trata el tema:
Un saludo
Buenos días Pepe.
He probado todas las directivas que me comentas y continúa sin funcionar. ¿Puede ser por alguna configuración del servidor? Es extraño que funcione con los archivos .html y no con archivos .JSON. Tampoco funciona con los archivos .txt:
Mi .htaccess actual:
<FilesMatch "\.(htaccess|html|htpasswd|ini|php|log|json|txt)$">
Order Allow,Deny
Deny from all
order deny,allow
deny from all
order deny,allow
deny from all
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(CONFIG|DATA).json$ - [NC,F,L]
Hola Pedro Jose.
¿Puede ser por alguna configuración del servidor?
No creo pero de todas formas puedes consultarlo desde tickets a soporte para que revisen la configuración que tienes.
Un saludo