Я пытаюсь установить конфигурацию Nginx, чтобы блокировать мой сайт, встроенный в iFrame - за исключением одного URL. Моя конфигурация выглядит следующим образом:
location / {
expires -1;
add_header X-Frame-Options "DENY";
add_header Pragma "no-cache";
add_header Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0";
try_files $uri $uri/ /index.html = 404;
}
location /search {
add_header X-Frame-Options "";
expires -1;
add_header Pragma "no-cache";
add_header Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0";
try_files $uri $uri/ /index.html = 404;
}
В соответствии с конфигурацией любой трафик iFrame, который направляется на путь / search, разрешен, но трафик в любое другое местоположение заблокирован.
Проблема в том, что если iFrame изначально указывает путь / search, а затем пользователь нажимает на ссылку, чтобы перейти на другую страницу, навигация не блокируется, и пользователь может пройти.
Мне кажется, чтоэто происходит потому, что приложение представляет собой SPA на основе Angular, поэтому навигация по другому пути не выполняется с полным обновлением браузера.
Любым способом, которым я могу разрешить отображение пути / search в iFrame,и все же заблокировать весь трафик в любом месте на сайте - независимо от того, как пользователь туда попал?