Estoy cargando mis archivos (pdf, doc, flv, etc.) en un búfer y les sirvo a mis usuarios con un script. Necesito mi script para poder acceder al archivo pero no permitir el acceso directo a él. ¿Cuál es la mejor manera de lograr esto? ¿Debo hacer algo con mis permisos o bloquear el directorio con .htaccess?Bloquee el acceso directo a un archivo a través de http, pero permita el acceso de script php
Respuesta
La manera más segura es guardar los archivos que desea guardar fuera del directorio raíz de la web, como sugirió Damien. Esto funciona porque el servidor web sigue los privilegios del sistema de archivos local, no sus propios privilegios.
Sin embargo, hay muchas empresas de hosting que solo le dan acceso a la raíz web. Para evitar aún las solicitudes HTTP a los archivos, colóquelos en un directorio por sí mismos con un archivo .htaccess que bloquee todas las comunicaciones. Por ejemplo,
Order deny,allow
Deny from all
Su servidor web, y por lo tanto el lenguaje del lado del servidor, todavía será capaz de leerlos porque los permisos locales del directorio permiten al servidor web para leer y ejecutar los archivos.
Saludos.
he usado esta carpeta de audio interna pero está deteniendo mi reproductor de audio para reproducir audio.Estoy usando el administrador de sonido 2 para reproducir audio. ¿Hay algún trabajo para permitir que solo el administrador de sonido reproduzca ese archivo de audio pero detenga cualquier otro acceso directo? – sonill
@sonill - Puede listar ciertas direcciones IP para poder acceder a estos directorios. Por ejemplo, agregar una nueva línea con 'Permitir desde 127.0.0.1' permitirá a su servidor, incluido cualquier código del lado del servidor, acceder a los archivos en ese directorio. Más documentación sobre estos bits está disponible en http://httpd.apache.org/docs/2.4/mod/mod_access_compat.html#allow –
"Sin embargo, hay una gran cantidad de empresas de alojamiento que sólo le dan acceso a la raíz del servidor web. " ¿Por qué no pueden esas empresas poner la raíz web un nivel más bajo que la raíz FTP? ¿Tienen cero conocimiento de cómo funciona PHP (o más bien es un descuido que es más probable) o solo se preocupan por su propia seguridad y dinero? Ah, bueno, elija una compañía a la que le importe realmente la seguridad de su sitio web. – FluorescentGreen5
¿Los archivos están en el mismo servidor que el script PHP? De ser así, simplemente mantenga los archivos fuera de la raíz web y asegúrese de que su script PHP tenga permisos de lectura para donde estén almacenados.
Así es como evité el acceso directo desde la URL a mis archivos ini. Pegue el siguiente código en el archivo .htaccess
en la raíz. (Sin necesidad de crear carpeta adicional)
<Files ~ "\.ini$">
Order allow,deny
Deny from all
</Files>
mi archivo settings.ini
está en la raíz, y sin este código es accesible www.mydomain.com/settings.ini
Si usted tiene acceso a usted httpd. conf file (en ubuntu está en el directorio/etc/apache2), debe agregar las mismas líneas que al archivo .htaccess
en el directorio específico. Es decir (por ejemplo):
ServerName YOURSERVERNAMEHERE
<Directory /var/www/>
AllowOverride None
order deny,allow
Options -Indexes FollowSymLinks
</Directory>
hacer esto para cada directorio que se desea controlar la información, y usted tendrá un archivo en un solo lugar para gestionar todos los accesos. En el ejemplo anterior, lo hice para el directorio raíz,/var/www.
Esta opción puede no estar disponible para alojamiento externo, especialmente alojamiento compartido. Pero es una mejor opción que agregar muchos archivos .htaccess
.
en httpd.conf para bloquear el navegador & wget acceso para incluir archivos especialmente db.inc o config.inc. Tenga en cuenta que no puede encadenar tipos de archivo en la directiva en su lugar crear varias directivas de archivos.
<Files ~ "\.inc$">
Order allow,deny
Deny from all
</Files>
para probar su configuración antes de reiniciar Apache
service httpd configtest
entonces (grácil reiniciar)
service httpd graceful
- 1. Restringir Acceso Directo a archivo llamado por el Ajax Función
- 2. Proteger archivo PHP de acceso directo
- 3. (htaccess) ¿Cómo prevenir un archivo de ACCESO DIRECTO a URL?
- 4. Impedir el acceso directo a una página PHP
- 5. ¿Cómo protegerse contra el acceso directo a las imágenes?
- 6. Acceso puerto serie a través de php
- 7. Propiedades del archivo de acceso a través de PHP
- 8. Restringir el acceso directo a las páginas de error
- 9. Acceso a JMX a través de alternativas HTTP
- 10. ¿Xcode tiene un acceso directo a archivo/clase?
- 11. mod_rewrite: permitir redirección, pero evitar el acceso directo
- 12. Denegando el acceso directo a las páginas jsp
- 13. Localizar en solución acceso directo a ReSharper
- 14. Restringir el acceso a archivos a usuarios autorizados de php
- 15. Mercurial: rendimiento de acceso a través de ssh y http
- 16. Restringir el acceso a los archivos - solo leer a través de PHP
- 17. denegar el acceso directo a presentar en S3
- 18. Ejecutar un script R utilizando un acceso directo de Windows
- 19. Acceso directo a una variable de instancia vs. Uso de un método de acceso
- 20. Acceso directo a linux framebuffer - copyarea
- 21. Acceso directo a memoria en Linux
- 22. Extraiga el icono del archivo .lnk (acceso directo) de Windows
- 23. Acceso directo a los problemas JNLP
- 24. Acceso de cliente directo SimpleDB
- 25. Crear acceso directo en el escritorio C#
- 26. Acceso directo para abrir el archivo en Vim
- 27. ¿Cómo doy acceso de escritura de PHP a un directorio?
- 28. Acceso a archivo denegado
- 29. Asignar tecla de acceso directo a un botón en WPF
- 30. script de PowerShell de acceso directo para cambiar de escritorio
de mayo que echar un vistazo a [esta] [1] [1] : http://stackoverflow.com/q/43951871/2441637 –