Herramientas de usuario

Herramientas del sitio


informatica:software:aplicaciones_web:tiny_file_manager

¡Esta es una revisión vieja del documento!


Tiny File Manager

Aplicación web para la gestión de archivos programada en PHP. En un único fichero y compatible desde PHP 5.5.

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 le 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 Bootstrap)
  • Traducido a más de 32 idiomas

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:

Para poder usarlo en una versión anterior:

  • random_compat: compatibilidad PHP 5.x para las funciones random_bytes() y random_int()
  • password_compact: compatibilidad PHP 5.3.7 para las funciones password_*()

Y la creación de la función hash_equals:

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;
    }
  }
}

Estructura:

tinyfilemanager.php
lib/random.php
lib/password.php
lib/hash.php

Configuración

La configuración se hace desde el propio script o a través de un fichero de configuración con las opciones más comunes.

Usuarios

Para generar el hash de la contraseña, podemos usar una aplicación web desarrollada por la misma gente de Tiny File Manager: PHP5 PASSWORD HASH GENERATOR.

En el script de Tiny File Manager añadiríamos el usuario y el hash:

$auth_users = array(
    'pepito' => '$2y$10$Fg6Dz8oH9fPoZ2jJan5tZuv6Z4Kp7avtQ9bDfrdRntXtPeiMAZyGO'
);

Otra opción sería guardar la contraseña en claro:

$auth_users = array(
    'pepito' => password_hash('12345', PASSWORD_DEFAULT)
);

Idioma

La descarga de Tiny File Manager incluye un fichero llamado translation.json. Si situamos dicho fichero en el mismo directorio que Tiny File Manager, podremos seleccionar el idioma desde el propio Tiny File Manager.

Instalación

Docker

Ejemplo de docker-compose.yml para emplear con Docker Compose:

---
version: '3.3'
services:
    tinyfilemanager:
        image: 'tinyfilemanager/tinyfilemanager:master'    
        container_name: tinyfilemanager    
        ports:
            - '80:80'
        volumes:
            - './data:/var/www/html/data'
        restart: always
informatica/software/aplicaciones_web/tiny_file_manager.1692015461.txt.gz · Última modificación: por tempwin