작성
·
63
·
수정됨
0
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예
[질문 내용]
여기에 질문 내용을 남겨주세요.
강사님이 알려주신 html 코딩 내용인 hello-static.html과 localhost:8080/hello-static.html에서 페이지 소스 보기로 본 코드 내용이 다른데, 이유가 무엇일까요?
그리고 html 코드의 body 부분이 영어일 때는 괜찮은데, 한글 입력시 페이지에서 한글이 깨져서 출력됩니다.
1.
<hello-staitc.html>
<!DOCTYPE HTML>
<>
<head>
<title>static content</title>
<meta http-equiv="Content-Type" content="text/html; charest=UTF-8" />
</head>
<body>
정적 컨텐츠 입니다.
</body>
</html>
<loacalhost:8080/hello-static.html>
<!DOCTYPE HTML><html><head> <title>Hello</title> <meta http-equiv="Content-Type" content="text/html; charest=UTF-8" /></head></html>Hello<a href="/hello">hello</a></body></html><script>(function() { var ws = new WebSocket('ws://' + window.location.host + '/jb-server-page?reloadMode=RELOAD_ON_SAVE&'+ 'referrer=' + encodeURIComponent(window.location.pathname)); ws.onmessage = function (msg) { if (msg.data === 'reload') { window.location.reload(); } if (msg.data.startsWith('update-css ')) { var messageId = msg.data.substring(11); var links = document.getElementsByTagName('link'); for (var i = 0; i < links.length; i++) { var link = links[i]; if (link.rel !== 'stylesheet') continue; var clonedLink = link.cloneNode(true); var newHref = link.href.replace(/(&|\?)jbUpdateLinksId=\d+/, "$1jbUpdateLinksId=" + messageId); if (newHref !== link.href) { clonedLink.href = newHref; } else { var indexOfQuest = newHref.indexOf('?'); if (indexOfQuest >= 0) { // to support ?foo#hash clonedLink.href = newHref.substring(0, indexOfQuest + 1) + 'jbUpdateLinksId=' + messageId + '&' + newHref.substring(indexOfQuest + 1); } else { clonedLink.href += '?' + 'jbUpdateLinksId=' + messageId; } } link.replaceWith(clonedLink); } } };})();</script>
출력 내용
원하는 출력 값 : 정적 컨텐츠 입니다.
실제 출력 값 : <> �뺤쟻 而⑦뀗痢� �낅땲��.
답변 2
0
안녕하세요. 8330kdw님, 공식 서포터즈 David입니다.
강사님이 알려주신 html 코딩 내용인 hello-static.html과 localhost:8080/hello-static.html에서 페이지 소스 보기로 본 코드 내용이 다른데, 이유가 무엇일까요?
서버로부터 응답받은 HTML파일에 본인이 작성하지 않은 코드가 삽입될 수 있습니다.
예를 들어, 브라우저 설정이나 설치된 플러그인 있는 경우에 그렇습니다.
그리고 html 코드의 body 부분이 영어일 때는 괜찮은데, 한글 입력시 페이지에서 한글이 깨져서 출력됩니다.
파일의 인코딩 형식이 UTF-8인지 확인해 주세요.
만약 다른 형식이라면 UTF-8로 변경해 주세요. 변환할건지 물어볼텐데 변환해 주세요.
파일 인코딩 형식은 오른쪽 하단에 있습니다.
그리고 애플리케이션을 다시 실행하셔서 호출해 주세요.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. 8330kdw님.
질문해주신 사항에 대해 답변 드리겠습니다.
localhost:8080/hello-static.html
에서 본 HTML 문서와 실제 로컬에 저장된 hello-static.html
파일의 내용이 다른 이유는 서버 설정이나 파일 경로 문제일 수 있습니다. Spring Boot에서는 기본적으로 src/main/resources/static
디렉터리에 있는 파일이 정적 리소스로 제공됩니다. 올바른 경로에 파일이 존재하는지 확인해보세요. 관련 링크에서도 비슷한 문제가 논의되고 있습니다.
메타 태그의 인코딩 설정 오류가 원인일 수 있습니다. charset
속성이 잘못 지정되어 있음을 확인하고 아래와 같이 수정해보세요:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
한글이 정상적으로 보이기 위해서 HTML 문서의 인코딩 설정이 올바르게 되어 있어야 합니다. charset=UTF-8
이 정확히 설정되었는지 확인해야 합니다.
이 링크에서는 유사한 한글 인코딩 문제에 대해 다뤘습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.