Я работаю над статическим веб-сайтом, созданным с помощью gatsby.
Я хочу, чтобы он был доступен только для посетителей, которые знают пароль, и я не могу сделать это с .htaccess, так как мне нужна моя собственная пользовательская страница входа в систему, а не просто всплывающее окно какого-то браузера.
Я подумал, что я бы просто создал очень простой экспресс-API со следующими конечными точками:
"/" - serves the static files (gatsby build files, the actual website),
if you dont have a certain cookie, you get redirected to "/login"
GET "/login" - my custom login page (simple input for the password)
POST "/login" - in here you send the password, if its correct,
you get the cookie and you get redirected to "/" so to the actual website
Все работает нормально, но я немного обеспокоен тем, что не буду использовать nginx.Скоро я разверну приложение (цифровой океан), и я пытаюсь понять, как производительность обслуживания статических файлов через Express вместо nginx снижает скорость.
Мой вопрос: как я могу реализовать его так, чтобы его nginx обслуживал файлы, но если нет файла cookie, то перенаправляет на «/ login», как сейчас?
Я много читаю, и у меня нет проблем с обслуживанием через часть nginx, но у меня проблемы с пониманием потока "check-if-cookie".
Является ли хорошей практикой проверка файлов cookie (и перенаправление, если они не найдены) в nginx?Или, может, мне следует поступить иначе?
Спасибо за любую помощь.