При использовании Referrer-Header: no-referrer, как разрешить относительные URL из вложенных страниц?
Допустим, у меня есть страница по адресу www.example.com/pages/page.html, а у page.html есть относительные URL-адреса скриптов / ссылок. Обычно я знаю, что нужно обслуживать /pages/js/page_js.js или /pages/css/page_css.css, чтобы проверить заголовок "referrer", чтобы увидеть, что это был http://www.example.com/pages. В противном случае мой относительный скрипт, который выглядит так: <script src="js/page_js.js"></script>
будет на самом деле разрешить /js/page_js.js на моем сервере.
Ссылаясь на документацию по шлему.js, есть рекомендация по безопасности, которая включает блокировку браузера от отправки referrer
заголовок. Если бы я должен был это реализовать, тогда как я мог бы разрешить активы, не зная, к какому пути их разрешать?
1 ответ
Если example.com/pages/page.html выглядит так:
<!doctype html>
<html>
<body>
<script src="js/a.js"></script>
<script src="/js/b.js"></script>
</body>
</html>
Браузер знает, как превратить это в два запроса: один на example.com/pages/js/a.js, а другой на example.com/js/b.js. Referer
заголовок не слишком уместен в этом случае.
(PS: я поддерживаю Шлем, так что если какая-либо из этих документов неясна, дайте мне знать!)