Files
ALPHA-TRAIN2/services/rusgram/static/static.py
T
2026-08-26 12:53:27 +03:00

37 lines
829 B
Python
Executable File

#!/usr/bin/python3
from flask import Flask, send_file, abort
import os
app = Flask(__name__)
static_node_port = 5001
def safe_name(name):
# <name> normally has no slashes, but %2f / .. still show up decoded.
if not name or name != os.path.basename(name) or ".." in name or "\x00" in name:
abort(404)
return name
@app.route('/img/<name>')
def img(name):
return send_file(f'files/static/img/{safe_name(name)}')
@app.route('/css/<name>')
def css(name):
return send_file(f'files/static/css/{safe_name(name)}')
@app.route('/fonts/<name>')
def fonts(name):
return send_file(f'files/static/fonts/{safe_name(name)}')
@app.route('/js/<name>')
def js(name):
return send_file(f'files/static/js/{safe_name(name)}')
if __name__ == '__main__':
app.run(host="0.0.0.0", port=static_node_port)