Иногда требуется вывести страницу скачивания файла по публичной ссылке по отдельному адресу, который никак не связан с основным порталом. В этом случае можно настроить отдельный веб сервер, который будет перенаправлять на внутренний веб сервис только те запросы, которые необходимы, для отображения страницы проверки QR кода. Остальные запросы будут блокироваться.
Пример настройки на nginx. В данном примере веб приложение работает по внутреннему адресу http://127.0.0.1:4615. Мы настраиваем веб сервер: если поступил внешний запрос (на порт 8081), то только определенные запросы, перенаправляются на веб сервис (статический контент и api, который нужен для проверки). Все остальные запросы будут блокироваться на уровне nginx.
server {
listen 8081 default_server;
listen [::]:8081 default_server;
location ~* ^/static/.*$ {
proxy_pass http://127.0.0.1:4615;
}
location ~* ^/js/.*$ {
proxy_pass http://127.0.0.1:4615;
}
location ~* ^/img/.*$ {
proxy_pass http://127.0.0.1:4615;
}
location /api/microFrontend/getList {
proxy_pass http://127.0.0.1:4615;
}
location /api/reactRouting/getList {
proxy_pass http://127.0.0.1:4615;
}
location /api/security/getSession {
default_type application/json;
return 401 '{ "exception": { "loginTypeList": [] } }';
}
location /sharedlink/item {
proxy_pass http://127.0.0.1:4615;
}
location /api/sharedLink/get {
proxy_pass http://127.0.0.1:4615;
}
location /api/sharedLink/download {
proxy_pass http://127.0.0.1:4615;
}
} |