fix
This commit is contained in:
parent
96fedf1d3b
commit
b200f61868
4 changed files with 303 additions and 4 deletions
34
Start.py
34
Start.py
|
|
@ -48,7 +48,7 @@ def mi_ip(request):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
UPLOAD_FOLDER = put + 'png/'
|
UPLOAD_FOLDER = put + 'wg_data/'
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
|
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
|
||||||
print(UPLOAD_FOLDER)
|
print(UPLOAD_FOLDER)
|
||||||
|
|
@ -57,7 +57,22 @@ print("SAS")
|
||||||
if not os.path.isdir(UPLOAD_FOLDER):
|
if not os.path.isdir(UPLOAD_FOLDER):
|
||||||
os.mkdir(UPLOAD_FOLDER)
|
os.mkdir(UPLOAD_FOLDER)
|
||||||
|
|
||||||
|
def get_short_token(req):
|
||||||
|
# 1) стандартный вариант
|
||||||
|
auth = req.headers.get("Authorization", "")
|
||||||
|
if auth:
|
||||||
|
parts = auth.split(None, 1) # разделить по пробелам 1 раз
|
||||||
|
if len(parts) == 2 and parts[0].lower() == "bearer":
|
||||||
|
tok = parts[1].strip()
|
||||||
|
if tok:
|
||||||
|
return tok
|
||||||
|
|
||||||
|
# 2) совместимость со старым заголовком
|
||||||
|
tok = req.headers.get("short_token")
|
||||||
|
if tok:
|
||||||
|
return tok.strip()
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
@app.route('/login/', methods=['GET', 'POST'])
|
@app.route('/login/', methods=['GET', 'POST'])
|
||||||
def login():
|
def login():
|
||||||
|
|
@ -91,9 +106,9 @@ def login():
|
||||||
@app.route('/ls/', methods=['GET', 'POST'])
|
@app.route('/ls/', methods=['GET', 'POST'])
|
||||||
def ls():
|
def ls():
|
||||||
print("ls")
|
print("ls")
|
||||||
print(request.headers)
|
token = get_short_token(request)
|
||||||
print(request.headers['short_token'])
|
print(token)
|
||||||
uid = authentication(request.headers['short_token'])
|
uid = authentication(token)
|
||||||
print(uid)
|
print(uid)
|
||||||
if uid == None:
|
if uid == None:
|
||||||
print("/ls/' - 403")
|
print("/ls/' - 403")
|
||||||
|
|
@ -451,6 +466,17 @@ def ls_item_icon():
|
||||||
return "Нет изображения", 404
|
return "Нет изображения", 404
|
||||||
return "Нет такого предмета", 404
|
return "Нет такого предмета", 404
|
||||||
|
|
||||||
|
@app.route("/download_conf/<int:item_id>", methods=["GET", "POST"])
|
||||||
|
def download_conf(item_id):
|
||||||
|
directory = app.config["UPLOAD_FOLDER"]
|
||||||
|
download_filename = f"conf_{item_id}.conf" # как будет называться при скачивании
|
||||||
|
|
||||||
|
return send_from_directory(
|
||||||
|
directory=directory,
|
||||||
|
path=str(item_id),
|
||||||
|
as_attachment=True,
|
||||||
|
download_name=download_filename
|
||||||
|
)
|
||||||
|
|
||||||
@app.route('/ls_avatar_icon/', methods=['GET', 'POST'])
|
@app.route('/ls_avatar_icon/', methods=['GET', 'POST'])
|
||||||
def ls_avatar_icon():
|
def ls_avatar_icon():
|
||||||
|
|
|
||||||
264
server.log
264
server.log
|
|
@ -1200,3 +1200,267 @@ Traceback (most recent call last):
|
||||||
~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
KeyError: 'HTTP_SHORT_TOKEN'
|
KeyError: 'HTTP_SHORT_TOKEN'
|
||||||
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:09:57] "[35m[1mGET /ls/ HTTP/1.0[0m" 500 -
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:09:57] "[35m[1mGET /ls/ HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
ERROR:Start:Exception on /ls/ [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 95, in ls
|
||||||
|
print(request.headers['short_token'])
|
||||||
|
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/datastructures/headers.py", line 628, in __getitem__
|
||||||
|
return self._get_key(key)
|
||||||
|
~~~~~~~~~~~~~^^^^^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/datastructures/headers.py", line 639, in _get_key
|
||||||
|
return self.environ[f"HTTP_{key}"] # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
|
KeyError: 'HTTP_SHORT_TOKEN'
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:28:09] "[35m[1mGET /ls/ HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
ERROR:Start:Exception on /ls/ [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 96, in ls
|
||||||
|
print(request.headers['short_token'])
|
||||||
|
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/datastructures/headers.py", line 628, in __getitem__
|
||||||
|
return self._get_key(key)
|
||||||
|
~~~~~~~~~~~~~^^^^^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/datastructures/headers.py", line 639, in _get_key
|
||||||
|
return self.environ[f"HTTP_{key}"] # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
|
KeyError: 'HTTP_SHORT_TOKEN'
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:29:31] "[35m[1mGET /ls/ HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
ERROR:Start:Exception on /ls/ [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 96, in ls
|
||||||
|
print(request.headers['short_token'])
|
||||||
|
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/datastructures/headers.py", line 628, in __getitem__
|
||||||
|
return self._get_key(key)
|
||||||
|
~~~~~~~~~~~~~^^^^^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/datastructures/headers.py", line 639, in _get_key
|
||||||
|
return self.environ[f"HTTP_{key}"] # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^
|
||||||
|
KeyError: 'HTTP_SHORT_TOKEN'
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:30:00] "[35m[1mGET /ls/ HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:33:13] "[31m[1mGET /ls/ HTTP/1.0[0m" 426 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:33:13] "GET /renew/ HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:33:13] "GET /ls/ HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:33:23] "[33mGET /download_conf/1 HTTP/1.0[0m" 404 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:38:22] "[33mGET /download_conf/1 HTTP/1.0[0m" 404 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
ERROR:Start:Exception on /download_conf/1 [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 471, in download_conf
|
||||||
|
return send_from_directory(directory=directory+"wg_data", path=str(item_id))
|
||||||
|
^^^^^^^^^
|
||||||
|
NameError: name 'directory' is not defined
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:40:30] "[35m[1mGET /download_conf/1 HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:41:26] "[33mGET /download_conf/1 HTTP/1.0[0m" 404 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
ERROR:Start:Exception on /download_conf/1 [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 472, in download_conf
|
||||||
|
return send_from_directory(directory=directory+"wg_data", path=str(item_id+".conf"))
|
||||||
|
~~~~~~~^~~~~~~~
|
||||||
|
TypeError: unsupported operand type(s) for +: 'int' and 'str'
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:41:56] "[35m[1mGET /download_conf/1 HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:42:25] "[33mGET /download_conf/1 HTTP/1.0[0m" 404 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:42:26] "[33mGET /download_conf/1 HTTP/1.0[0m" 404 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:42:26] "[33mGET /download_conf/1 HTTP/1.0[0m" 404 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:45:22] "GET /download_conf/1 HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:49:06] "GET /ls/ HTTP/1.0" 200 -
|
||||||
|
ERROR:Start:Exception on /download_conf/1 [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 474, in download_conf
|
||||||
|
return send_from_directory(
|
||||||
|
directory=directory,
|
||||||
|
...<2 lines>...
|
||||||
|
download_name=download_filename,
|
||||||
|
)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/helpers.py", line 572, in send_from_directory
|
||||||
|
return werkzeug.utils.send_from_directory( # type: ignore[return-value]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
directory, path, **_prepare_send_file_kwargs(**kwargs)
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
)
|
||||||
|
^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/utils.py", line 557, in send_from_directory
|
||||||
|
path_str = safe_join(os.fspath(directory), os.fspath(path))
|
||||||
|
~~~~~~~~~^^^^^^
|
||||||
|
TypeError: expected str, bytes or os.PathLike object, not int
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:49:09] "[35m[1mGET /download_conf/1 HTTP/1.0[0m" 500 -
|
||||||
|
ERROR:Start:Exception on /download_conf/1 [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 474, in download_conf
|
||||||
|
return send_from_directory(
|
||||||
|
directory=directory,
|
||||||
|
...<2 lines>...
|
||||||
|
download_name=download_filename,
|
||||||
|
)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/helpers.py", line 572, in send_from_directory
|
||||||
|
return werkzeug.utils.send_from_directory( # type: ignore[return-value]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
directory, path, **_prepare_send_file_kwargs(**kwargs)
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
)
|
||||||
|
^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/utils.py", line 557, in send_from_directory
|
||||||
|
path_str = safe_join(os.fspath(directory), os.fspath(path))
|
||||||
|
~~~~~~~~~^^^^^^
|
||||||
|
TypeError: expected str, bytes or os.PathLike object, not int
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:49:19] "[35m[1mGET /download_conf/1 HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
ERROR:Start:Exception on /download_conf/1 [GET]
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 1511, in wsgi_app
|
||||||
|
response = self.full_dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 919, in full_dispatch_request
|
||||||
|
rv = self.handle_user_exception(e)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 917, in full_dispatch_request
|
||||||
|
rv = self.dispatch_request()
|
||||||
|
File "/usr/lib/python3/site-packages/flask/app.py", line 902, in dispatch_request
|
||||||
|
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
|
||||||
|
File "/home/romenskiy2012/Документы/web/wg_2/Start.py", line 474, in download_conf
|
||||||
|
return send_from_directory(
|
||||||
|
directory=directory,
|
||||||
|
...<2 lines>...
|
||||||
|
download_name=download_filename
|
||||||
|
)
|
||||||
|
File "/usr/lib/python3/site-packages/flask/helpers.py", line 572, in send_from_directory
|
||||||
|
return werkzeug.utils.send_from_directory( # type: ignore[return-value]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
directory, path, **_prepare_send_file_kwargs(**kwargs)
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
)
|
||||||
|
^
|
||||||
|
File "/usr/lib/python3/site-packages/werkzeug/utils.py", line 557, in send_from_directory
|
||||||
|
path_str = safe_join(os.fspath(directory), os.fspath(path))
|
||||||
|
~~~~~~~~~^^^^^^
|
||||||
|
TypeError: expected str, bytes or os.PathLike object, not int
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:50:19] "[35m[1mGET /download_conf/1 HTTP/1.0[0m" 500 -
|
||||||
|
INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||||||
|
* Running on all addresses (0.0.0.0)
|
||||||
|
* Running on http://127.0.0.1:5000
|
||||||
|
* Running on http://10.0.1.10:5000
|
||||||
|
INFO:werkzeug:[33mPress CTRL+C to quit[0m
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:51:48] "GET /download_conf/1 HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:51:52] "GET /ls/ HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:51:53] "GET /download_conf/1 HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:52:00] "GET /ls/ HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:52:51] "[31m[1mGET /ls/ HTTP/1.0[0m" 426 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:52:51] "GET /renew/ HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:52:52] "GET /ls/ HTTP/1.0" 200 -
|
||||||
|
INFO:werkzeug:127.0.0.1 - - [27/Dec/2025 05:54:02] "GET /download_conf/1 HTTP/1.0" 200 -
|
||||||
|
|
|
||||||
9
wg_data/1.conf
Normal file
9
wg_data/1.conf
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
[Interface]
|
||||||
|
PrivateKey = gAmqfD4pbhJio9j5Ubr0bgHxtBkDSGBJtVQ/TPXtCEU=
|
||||||
|
Address = 10.0.21.10/32
|
||||||
|
|
||||||
|
[Peer]
|
||||||
|
PublicKey = C2HmaZ4h3aQicjEZpDljtXyeq1DKVdiCmv11ZZiTUDw=
|
||||||
|
AllowedIPs = 10.0.20.0/24, 10.0.21.1/32
|
||||||
|
Endpoint = 95.31.187.233:51821
|
||||||
|
PersistentKeepalive = 15
|
||||||
Loading…
Add table
Add a link
Reference in a new issue