Как известно, при открывании внешних ссылок на новых вкладках у тэга
a
должны быть атрибуты
target="blank"
и
rel=“noopener noreferrer”
, а если ещё нужно попросить поисковых роботов игнорировать ссылку (приказать, насколько я знаю, не получится), то
rel=“noopener noreferrer nofollow”
. А что насчёт внутренних ссылок, если их надо открыть на другой вкладке?
Чтобы организовать знания по этой теме, подготовил такую блок-схему:
На то, что атрибут
rel
как-то связан с безопасностью, я обратил внимание при изучении ESLint-правила
jsx-no-target-blank.md, где чётко сказано ("severe security vulnerability" - "серьёзная уязвимость в безопасности"), что использование
target='_blank'
без
rel='noreferrer'
является серьёзной уязвимостью:
Using this attribute unaccompanied by rel='noreferrer'
, however, is a severe security vulnerability (see noreferrer docs and noopener docs for more details)