웹서버에서 처음 웹페이지를 뿌려줄 때 본문 이전에 헤더를 날려주는데, 이때의 Content-type 값에 대한 질문입니다.
XHTML 1.1부터 application/xhtml+xml을 적용하여야 하는 줄 알았으나, '웹 표준 기반 홈페이지 구축 가이드 2004'를 읽어보니 XHTML 1.0이라고 되어 있군요. 이전에 현석님 블로그에서 관련 글을 읽었지만 정확히 이해할 수 없어서 글 씁니다.
1. XHTML 1.0부터 application/xhtml+xml을 적용해야 하는 것인지?
2. xhtml 문서 내부에는 meta 요소의 Content-type은 여전히 text/html로 기록하고, '웹서버에서 출력하는' Content-type을 application/xhtml+xml로 해야 하는 건지요? 외국 사이트를 돌아다녀봐도 meta 요소는 text/html 이더군요. 즉 웹서버에서(또는 프로그램 자체에서 헤더 함수를 통해서)만 출력하면 되는 건지요?
3. 그리고 저 헤더값을 날려줄 경우 그 문서는 xml로 인식될텐데, 이 때 xml 문법에 안맞는 코드가 들어가면 브라우저 내장된 xml 파서 에러 화면이 뜨는 것이 정상적인 것인지 알고 싶습니다.
XHTML의 헤더에 대해
- CN
- 서포터즈
- Posts: 61
- Joined: 2005 01 02 01:57 54
- Contact:
Re: 파일 확장자는는 뭐가 맞죠?
다들 html으로 쓰고 있습니다. 아마도 xhtml이 인식 안될겁니다.사용자 wrote:확장자를 .html로 해야되요, .xhtml로 해야되요?
w3.org는 신기하게도 파일명이 안 보이게 해 놨네요.
-
- 해커
- Posts: 691
- Joined: 2004 08 11 22:14 59
- Contact:
Re: XHTML의 헤더에 대해
저보다는 다른 분들이 답변을 하는게 맞겠지만...그래도 아는데 까지만
이 문제는 전적으로 브라우져 호환성과 관련이 있습니다. xhtml에서 application/xhtml+xml을 사용하는 것이 맞지만 그렇게 하면 firefox외의 브라우져로 사이트 방문하는 사람은 사이트를 이용할 수 없게 될 것입니다.
제가 이 부분을 이해하는데 있어서 도움이 많이 되었던 글입니다.
http://webstandardsgroup.org/features/tommy-olsson.cfm
이 사람의 블로그인 http://www.autisticcuckoo.net/ 가 application/xhtml+xml로 배포되고 있습니다.
네, 그렇지만 appendix에 보면 XHTML 1.0은 text/html이 허용됩니다. 하지만 XHTML1.1은 application/xhtml+xml이어야만 합니다. 문제는 브라우져 호화성인데 많은 수의 브라우져가 아직 application/xhtml+xml을 인식을 못하기 때문에 현실적으로 XHTML1.1보다는 XHTML 1.0을 사용하는 것이 맞습니다.yser wrote:1. XHTML 1.0부터 application/xhtml+xml을 적용해야 하는 것인지?
이것은 1번과 같이 전적으로 브라우져 호환성 때문에 그렇습니다. 제대로 하게 된다면 http헤더와 meta의 선언이 같아야 하겠지요.yser wrote:2. xhtml 문서 내부에는 meta 요소의 Content-type은 여전히 text/html로 기록하고, '웹서버에서 출력하는' Content-type을 application/xhtml+xml로 해야 하는 건지요? 외국 사이트를 돌아다녀봐도 meta 요소는 text/html 이더군요. 즉 웹서버에서(또는 프로그램 자체에서 헤더 함수를 통해서)만 출력하면 되는 건지요?
문법이 잘못되면 에러가 발생해야 하는 것이 정상입니다. 에러가 나지 않는 것은 html, css만 그렇죠. xhtml은 에러가 나야만 합니다.yser wrote:3. 그리고 저 헤더값을 날려줄 경우 그 문서는 xml로 인식될텐데, 이 때 xml 문법에 안맞는 코드가 들어가면 브라우저 내장된 xml 파서 에러 화면이 뜨는 것이 정상적인 것인지 알고 싶습니다.
이 문제는 전적으로 브라우져 호환성과 관련이 있습니다. xhtml에서 application/xhtml+xml을 사용하는 것이 맞지만 그렇게 하면 firefox외의 브라우져로 사이트 방문하는 사람은 사이트를 이용할 수 없게 될 것입니다.
제가 이 부분을 이해하는데 있어서 도움이 많이 되었던 글입니다.
http://webstandardsgroup.org/features/tommy-olsson.cfm
이 사람의 블로그인 http://www.autisticcuckoo.net/ 가 application/xhtml+xml로 배포되고 있습니다.
-
- 해커
- Posts: 1146
- Joined: 2004 01 15 20:06 36
Re: XHTML의 헤더에 대해
HTML-compatible한 XHTML 1.0에 대해서는 'text/html'을 써도 됩니다.yser wrote:웹서버에서 처음 웹페이지를 뿌려줄 때 본문 이전에 헤더를 날려주는데, 이때의 Content-type 값에 대한 질문입니다.
XHTML 1.1부터 application/xhtml+xml을 적용하여야 하는 줄 알았으나, '웹 표준 기반 홈페이지 구축 가이드 2004'를 읽어보니 XHTML 1.0이라고 되어 있군요. 이전에 현석님 블로그에서 관련 글을 읽었지만 정확히 이해할 수 없어서 글 씁니다.
1. XHTML 1.0부터 application/xhtml+xml을 적용해야 하는 것인지?
http://www.w3.org/TR/xhtml-media-types/
http://www.xml.com/pub/a/2003/03/19/dive-into-xml.html
최근에 IE 7 blog에서 IE7에서도 application/xhtml+xml을 지원하지 않겠다고 했으니까 (꼭 나쁜 소식은 아닙니다. XHTML을 XML로 취급하는데 필요한 기능을 IE7이 아직 채 갖추고 있지 않기 때문이랍니다. 그런 기능을 구현한 후에 지원하겠다는 뜻으로 해석 가능), 아마도 위에 인용한 xml.com의 문서에서 설명한 방법을 쓰셔야 할 듯..
원칙적으로 http meta는 서버를 통해 제공되는 문서의 경우에는 의미가 없으므로 (http header가 우선)... 아마도 외국 사이트들에서 그렇게 한 것은 IE 등이 application/xhtml+xml을 지원하지 않기 때문이 아닐까요...2. xhtml 문서 내부에는 meta 요소의 Content-type은 여전히 text/html로 기록하고, '웹서버에서 출력하는' Content-type을 application/xhtml+xml로 해야 하는 건지요? 외국 사이트를 돌아다녀봐도 meta 요소는 text/html 이더군요. 즉 웹서버에서(또는 프로그램 자체에서 헤더 함수를 통해서)만 출력하면 되는 건지요?
Mozilla는 그 경우 굉장히 엄격해서 에러 메시지를 내죠? 그게 잘 하는 것 같은데요. html이야 '대강 썼지만', XML은 그렇게 하지 않도록 되어 있으니까요.3. 그리고 저 헤더값을 날려줄 경우 그 문서는 xml로 인식될텐데, 이 때 xml 문법에 안맞는 코드가 들어가면 브라우저 내장된 xml 파서 에러 화면이 뜨는 것이 정상적인 것인지 알고 싶습니다.
Who is online
Users browsing this forum: No registered users and 0 guests