Herramientas de usuario

Herramientas del sitio


informatica:software:aplicaciones_web:tiny_file_manager

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:software:aplicaciones_web:tiny_file_manager [2023/08/14 14:14] – borrado - editor externo (Fecha desconocida) 127.0.0.1informatica:software:aplicaciones_web:tiny_file_manager [2025/09/08 10:30] (actual) tempwin
Línea 1: Línea 1:
 +====== Tiny File Manager ======
 +
 +[[..:aplicaciones_web|Aplicación web]] para la gestión de archivos programada en [[informatica:programacion:php|PHP]]. En un único fichero y compatible desde [[informatica:programacion:php|PHP]] 5.5.
 +
 +  * [[https://tinyfilemanager.github.io/|Web]]
 +  * [[https://github.com/prasathmani/tinyfilemanager|Repositorio de código]]
 +  * [[https://tinyfilemanager.github.io/demo/|Demo]]
 +
 +{{ https://tinyfilemanager.github.io/img/bg-showcase-1.jpg |}}
 +===== Características =====
 +
 +  * Open source
 +  * Ligero
 +  * Sin dependencias
 +  * Creación, edición, copia, renombrar y descargar ficheros de manera sencilla.
 +  * Soporte de resaltado de sintaxis para la edición de código fuente.
 +  * Subida múltiple de ficheros
 +  * Gestión de cuentas de usuario. Cada usuario puede tener su propio directorio y permisos de accesos.
 +  * Buscador por nombre, tipo, extensión...
 +  * Creación de ficheros comprimidos.
 +  * Extracción online de ficheros comprimidos
 +  * Diseño adaptable (basado en [[informatica:diseno_web:css:bootstrap|Bootstrap]])
 +  * Traducido a más de 32 idiomas
 +
 +===== Instalación =====
 +
 +
 +==== Manual ====
 +
 +Colocar el fichero ''tinyfilemanager.php'' en cualquier directorio que sirva el servidor web.
 +
 +==== Docker ====
 +
 +Ejemplo de fichero ''docker-compose.yml'' para emplear con [[informatica:sistemas_operativos:virtualizacion:docker:docker_compose|Docker Compose]]:
 +
 +<code yaml>
 +---
 +version: '3.3'
 +services:
 +  tinyfilemanager:
 +    image: 'tinyfilemanager/tinyfilemanager:master'    
 +    container_name: tinyfilemanager    
 +    ports:
 +      - '80:80'
 +    volumes:
 +      - './data:/var/www/html/data'
 +    restart: always
 +</code>
 +
 +===== Adaptación para PHP 5.4 =====
 +
 +Tiny File Manager hace uso de las siguientes funciones que no aparecieron hasta la versión 5.5 de PHP:
 +
 +  * [[https://www.php.net/manual/en/function.random-bytes.php|random_bytes]]
 +  * [[https://www.php.net/manual/en/function.password-verify|password_verify]]
 +  * [[https://www.php.net/manual/en/function.password-hash|password_hash]]
 +  * [[https://www.php.net/manual/en/function.hash-equals|hash_equals]]
 +
 +Para poder usarlo en una versión anterior:
 +
 +  * [[https://github.com/paragonie/random_compat|random_compat]]: compatibilidad PHP 5.x para las funciones ''random_bytes()'' y ''random_int()''
 +  * [[https://github.com/ircmaxell/password_compat|password_compact]]: compatibilidad PHP 5.3.7 para las funciones ''password_*()''
 +
 +Y la creación de la función ''hash_equals'':
 +
 +<code php>
 +if(!function_exists('hash_equals')) {
 +  function hash_equals($str1, $str2) {
 +    if(strlen($str1) != strlen($str2)) {
 +      return false;
 +    } else {
 +      $res = $str1 ^ $str2;
 +      $ret = 0;
 +      for($i = strlen($res) - 1; $i >= 0; $i--) $ret |= ord($res[$i]);
 +      return !$ret;
 +    }
 +  }
 +}
 +</code>
 +
 +Estructura:
 +
 +<code>
 +tinyfilemanager.php
 +lib/random.php
 +lib/password.php
 +lib/hash.php
 +</code>
 +
 +===== Configuración =====
 +
 +La configuración se hace desde el propio script o a través de un [[https://tinyfilemanager.github.io/config-sample.txt|fichero de configuración]] con las opciones más comunes.
 +
 +==== Usuarios ====
 +
 +<WRAP center round info 60%>
 +Por defecto, vienen creados dos usuarios: **admin** y **user**. Las contraseñas son ''admin@123'' y ''12345'' respectivamente.
 +</WRAP>
 +
 +
 +
 +Para generar el hash de la contraseña, podemos usar una aplicación web desarrollada por la misma gente de Tiny File Manager: [[https://tinyfilemanager.github.io/docs/pwd.html|PHP5 PASSWORD HASH GENERATOR]].
 +
 +En el script de Tiny File Manager añadiríamos el usuario y el hash:
 +
 +<code php>
 +$auth_users = array(
 +    'pepito' => '$2y$10$Fg6Dz8oH9fPoZ2jJan5tZuv6Z4Kp7avtQ9bDfrdRntXtPeiMAZyGO'
 +);
 +</code>
 +
 +Otra opción sería guardar la contraseña en claro:
 +
 +<code php>
 +$auth_users = array(
 +    'pepito' => password_hash('12345', PASSWORD_DEFAULT)
 +);
 +</code>
 +==== Idioma ====
 +
 +La descarga de Tiny File Manager incluye un fichero llamado ''translation.json'' (también accesible desde [[https://github.com/prasathmani/tinyfilemanager/blob/master/translation.json|aquí]]). Si situamos dicho fichero en el mismo directorio que Tiny File Manager, podremos seleccionar el idioma desde el propio Tiny File Manager.
 +