몰?.루();
HTML <noscript>태그는 왜 있을까 본문
script를 지원하지 않는 브라우저에서는 noscript 태그에 들어가있는 내용이 보이게 됩니다.
그런데 상식적으로 이상합니다. 과연 스크립트를 지원하지 않는 브라우저가 존재하긴 할까요?
처음 생각은 JS라는 게 세상에 존재하기도 전의 아주아주 오래된 브라우저라면 script를 지원하지 않을 것 같다는 생각이었는데, 그러면 script가 세상에 존재하지도 않았는데 그 브라우저가 noscript 태그는 지원하는 게 아주 이상합니다. 세상에 태어나지도 않은 존재를 예측해서 미리 noscript라는 태그를 지원할 순 없습니다.
결국 noscript도 사실상 현대에 쓰이는 브라우저들만 지원하는 태그라고 봐야합니다.
그런데 현대 브라우저는 전부 스크립트를 지원합니다. 왜 필요할까요?
이유는 사용자가 보안상의 목적 등을 이유로 스크립트를 끌 수 있다...라고는 하지만 요즘 같은 세상에서 과연 스크립트를 끄고 사용하는 사용자가 있긴 할까요?
그것보다 큰 목적은 아마도 SEO 때문이지 않을까 싶습니다.
웹 크롤러는 스크립트 실행을 시키지 않기 때문에 SEO에서 불리합니다. 즉, 내가 만든 페이지에 아무리 잘 만든 바게트 빵 만드는 레시피가 있어도, 그 내용을 스크립트로 만든다면 구글 웹 크롤러는 제 홈페이지에 아무 정보도 없다고 판단할 겁니다. 그렇기에 noscript를 이용해서 SEO를 최적화시킬 수 있습니다.
하지만 이 역시도 근본적인 해결책은 아니며, 일을 2번해야하는 작업입니다. 스크립트 작업 한 번, noscript 작업 한 번 해야하니까요. (애초에 script로 구현한 것들을 noscript로 완벽히 똑같이 할 수 있는지, 그게 가능하다면 굳이 스크립트를 왜 쓰는지 같은 문제는 제쳐두더라도.)
그렇기에 요즘엔 차라리 Server Side Redering을 하는 경우가 많아지는 거 같습니다.
'프로그래밍 > 웹, 리액트' 카테고리의 다른 글
POST 요청은 GET 요청보다 보안이 뛰어나지 않다. 절대로. (0) | 2024.09.08 |
---|