import os
from flask import Flask, render_template_string, send_from_directory
app = Flask(__name__)
# Directorio base donde se encuentran los archivos
base_directory = "/home/app/"
@app.route('/')
def index():
# Lista de archivos en el directorio base
files = os.listdir(base_directory)
# HTML para mostrar los archivos como enlaces
html = """
Archivos disponibles
Archivos disponibles:
"""
# Agrega un elemento de lista (- ) con un enlace para cada archivo
for file_name in files:
# Agrega un elemento de lista con un enlace
html += f'
- {file_name}
'
# Cierra la lista y el documento HTML
html += """
"""
return render_template_string(html)
@app.route('/download/')
def download_file(filename):
"""Sirve el archivo desde el directorio base."""
# Verifica si el archivo existe
file_path = os.path.join(base_directory, filename)
if os.path.exists(file_path):
return send_from_directory(base_directory, filename, as_attachment=True)
else:
return "Archivo no encontrado", 404
if __name__ == '__main__':
# Ejecuta el servidor en el puerto 7860 y escucha desde todas las interfaces de red.
app.run(host='0.0.0.0', port=7860)