Как создать обратный прокси-сервер между стандартным HTTPS и портами разработки с помощью web.config, Flask/CORS и IIS?Python

Программы на Python
Ответить
Anonymous
 Как создать обратный прокси-сервер между стандартным HTTPS и портами разработки с помощью web.config, Flask/CORS и IIS?

Сообщение Anonymous »

Я немного объясню свой проект.
Это решение RAG для компании, в которой я работаю, и приложение предназначено для наших технических специалистов, которые будут вмешиваться в работу машин, продаваемых клиентам, и использовать мое приложение для быстрого поиска документированных решений предыдущих проблем. Он предназначен только для внутреннего использования, только для сотрудников (технических специалистов).
Я использую Flask и CORS, у меня есть настройка .env для учетных данных базы данных, и приложение прекрасно работает на моем локальном компьютере.
При попытке реализовать проект на веб-сервере компании, когда кто-то пытается выполнить поиск, мы получим ошибку: «Не удалось получить ответ: не удалось получить ответ»
Я понимаю мой бэкэнд работает по HTTP. Но на всякий случай я защитил его другими способами (например, заблокировав вредоносные команды в строке поиска, а не жестко запрограммировав учетные данные в Python).
Поэтому я пытаюсь создать обратный прокси-сервер, который будет принимать все запросы из панели поиска с интерфейсом, работающим в инфраструктуре HTTPS основного веб-сайта, и отправлять их на HTTP-порт, на котором работает мое приложение.
Переменные правильно установлены в IIS. У нас есть модуль перезаписи URL-адресов, в котором я настроил обратный прокси-сервер, но не думаю, что он работает. (Изображение в ссылке)
Настройка модуля IIS URL Rewrite
Нажав F12 на странице, я получаю вот что (изображение в ссылке)
Ошибка консольного JavaScript
Полные ошибки ниже (я заменил названия компании, проекта и порта в целях конфиденциальности)
script.js:265 Mixed Content: The page at 'https://company.com/project/' was loaded over HTTPS, but requested an insecure resource 'http://company.com:9999/api/health'. This request has been blocked; the content must be served over HTTPS.
checkHealth @ script.js:265
(anonymous) @ script.js:15
script.js:274 Cannot connect to backend: Failed to fetch
checkHealth @ script.js:274
await in checkHealth
(anonymous) @ script.js:15
script.js:9 Enter key pressed!
script.js:42 Making request to: http://company.com:9999/api/search
script.js:43 Question: machine model X
script.js:45 Mixed Content: The page at 'https://company.com/project/' was loaded over HTTPS, but requested an insecure resource 'http://company.com:9999/api/search'. This request has been blocked; the content must be served over HTTPS.
searchSolutions @ script.js:45
(anonymous) @ script.js:10

script.js:72 Search failed: TypeError: Failed to fetch
at searchSolutions (script.js:45:32)
at HTMLInputElement. (script.js:10:13)
searchSolutions @ script.js:72
await in searchSolutions
(anonymous) @ script.js:10


Подробнее здесь: https://stackoverflow.com/questions/798 ... orts-using
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»