Я пытаюсь ввести ограничения времени и географического местоположения для нашей CMS. Ниже показано, как выглядит текущая настройка
- Nginx (Порт: 443): Для завершения SSL и манипулирования URL
- Varnish (Порт: 80): Для кэширования динамического содержимого из бэкэнда
- Apache, PHP, MySQL: Пользовательская CMS работает в этом стеке
Требование заключается в том, что в течение определенного периода времени трафик из определенной страны не может получить доступ к определенному URL / категории, но трафик из остального мира может получить доступ к тому же URL / категории без каких-либо ограничений.
Часть гео-локации не выглядит устрашающей, но я не смог ничего найти об ограничении трафика в зависимости от времени.
Конечно, я могу настроить две конфигурации лака или nginx, одну с ограничениями, другую без, чтобы задание cron заменяло физические файлы, основываясь на том, когда я хочу что-то сделать, но я надеялся на более чистое решение.
Я понимаю, что все это может быть обработано с помощью PHP, но я не могу удалить Varnish из стека, мне пришлось бы добавить 5-6 серверов, чтобы справиться с нагрузкой, и это увеличит стоимость, которую я не могу оправдать.
Помощь