Настройка внешнего доступа к API
В предыдущей статье был рассмотрен запуск сервера и доступ к нему. Одно НО, доступ этот осуществляется или с локального ПК (в main.py), как вы видели присутствует строчка:
1 |
uvicorn.run(app, host="127.0.0.1", port=8000, log_level="info") |
Если host поменять например на 0.0.0.0, сервер «из вне» будет конечно доступен, но по нестандартному порту и не по защищенному протоколу. Однако есть способ «завернуть» весь трафик в https через проксирование в apache/ngnix.
Для apache необходимо установить модуль proxy:
1 2 |
sudo a2enmod proxy proxy_http sudo service apache2 restart |
И в настройки VirtualHost сайта добавить:
1 2 |
ProxyPass / http://127.0.0.1:8000 ProxyPassReverse / http://127.0.0.1:8000 |
Для ngnix к сожалению не могу дать примера, т.к. обычно не использую.