묻고답하기
XE 1.8.18에서는 <pre>태그 속성 사용불가, <video>태그와 <audio>태그 사용 불가
2016.03.10 20:00
XE를 오래 전부터 upgrade해 오면서 실력이 부족해 여러분께 신세를 많이 지기도 하였습니다.
이번 APM, browser(Chrome) 그리고 XE를 update했습니다.
(아래 '저의 PC server재원'을 참고해 주세요)
이런 server의 환경에서 Chrome을 사용합니다.
XE 1.8.18에서 다음과 같은 이상한 점이 발생하고 있습니다.
그런데 XE 1.8.17이나 XE 1.8.16으로 down date를 해서 사용하면 문제가 해소되고 제4항의 가로 스크롤바만 생기는 문제만 남습니다.
제가 언급한 문제에 대해 경험해 보시거나 해결책을 아시는 분은 자세히 댓글을 주시면 감사하겠습니다.
1. 아래의 소스는 최초 페이지 작성시에는 적용되어 browser(Chrome)에서 제대로 보입니다.
<pre style="display:block;white-space:pre-line;word-wrap:break-word;word-break:break-all;text-align:justify;">
그렇지만, 소스를 수정하려고 editor에 들어가서 보면
<pre>태그만 남고 속성은 사라져 있습니다.
이후부터는 wrap이 적용되는 위의 소스로의 수정이 불가능해 삭제하는 수 밖에 없습니다.
위 소스를 적용하려면 새 페이지를 작성해야만 합니다.
2. 아래의 <video>태그나 <audio>태그를 사용할 수 없습니다.
태그가 흔적도 없이 사라지고,
'Your browser does not support the video element.'만 남겨 있습니다.
<video autoplay="true" controls="true" height="360" preload="none" width="640">
<source src="*.mp4" type="video/mp4" />
Your browser does not support the video element.
</video>
<audio autoplay="true" controls="true" height="30" preload="none" width="300">
<source src="*.mp3" type="audio/mpeg" />
Your browser does not support the audio element.
</audio>
3. 위의 태그 외에 <marquee>태그도 사용불능인 것 같습니다. 그외에 또 있지 않을까요.
4. 이미 upload한 페이지를 editor(Ckeditor)에서 '소스'버튼을 누르고 수정하려고 하면
내용에 긴 문단이 있는 경우 editor에 가로 스크롤바가 생겨 수정작업할 때 매우 불편합니다.
[참고] 저의 PC server 재원
Windows 10
Chrome v.49.0.2623.87 m
XE 1.8.17 (XE 1.8.18로 높였다가 down date했습니다)
Apache 2.4.18
PHP 7.0.4
MySQL 5.7.11
댓글 10
-
flower
2016.03.12 07:39
-
최황삼
2016.03.12 13:44
네, 그렇습니다. 최초 글 작성시에는 browser에서 제대로 표현됩니다. 그렇지만 수정하려고 하면 태그가 사라지거나 노출됩니다.
-
기진곰
2016.03.12 11:42
제일 이상한 건, XE 1.8.17 ~ 1.8.18 사이에 에디터나 HTML 필터링 관련 코드는 변경된 것이 없다는 점입니다. 혹시 APM을 업그레이드하신 것과 관련이 있지는 않을까요?
<audio>, <video> 등의 HTML5 태그와 <marquee> 등의 비표준 태그가 지원되지 않는 것은 맞습니다. HTML5 태그는 관련 라이브러리들을 업데이트하면서 개선될 여지가 있지만, 비표준 태그는 기대하지 마세요.
-
최황삼
2016.03.12 13:50
marquee태그는 비표준인지 압니다만은, audio 태그, video태그는 html5표준이지만 제가 그 속성을 잘못 적용한 것일까요. audio, video태그의 표준에 대해 간단히 알려주시면 감사하겠습니다.
APM upgrade 수동 작업 역시 인터넷상에서 제시된 것을 수집하여 그대로 시행한 것이며, 무엇을 잘못했는 지 모겠군요. Apache의 conf폴더에 있는 mime.types 파일을 살펴봐도 audio, video란에 주석이 제거되는 등 이상이 없습니다. 또한 log 파일을 봐도 특별한 error가 없는 것 같습니다.
-
기진곰
2016.03.12 14:36
<audio>, <video>는 물론 웹표준이지만 XE에서 아직 지원하지 않는 것 뿐입니다. word-wrap, word-break 등의 CSS 속성들도 마찬가지고요. (정확히 말하자면 XE에서 XSS 공격 방지에 사용하는 HTMLPurifier라는 라이브러리에서 HTML5 태그와 일부 CSS 속성을 인식하지 못해서, 필터링 과정에서 누락되어 버립니다.)
혹시 예전에는 최고관리자 계정으로 작성하셨다가 버전업을 하신 후에 일반 사용자 또는 게시판 관리자 계정으로 수정하셨나요? 최고관리자가 글을 쓰거나 수정할 때는 HTMLPurifier를 적용하지 않기 때문에 태그나 CSS 속성이 누락되는 일이 없습니다.
-
최황삼
2016.03.12 16:19
기진곰님, 친절하게 가르쳐 주시니 감사합니다.
제가 홈페이지 관련해서 지식이 매우 부족함을 고백합니다.
말씀하신 최고관리자 계정과 일반관리자 또는 게시판 관리자 계정에 대한 개념이 떠오르지 않군요.XE 관리자로 로그인해서 설치된 게시판에 들어가서 권한 관계를 자주 변경한 적은 있습니다만 이번 버전업 경우에는 게시판의 권한 관계는 변경하지 않았습니다.
editor에 가로 스크롤바가 생기기에 ckeditor와 xpresseditor를 교대로 적용, 또는 규격(높이)를 변경했으며, 한글 글꼴을 추가((/common/js/plugins/cheditor/ckeditor/ckeditor.js)하였습니다.
오래전부터 board(xedition)와 layout (xedition)를 수정해 사용해 왔습니다. 그러나 이제껏 문제가 없었습니다.
-
게임광
2016.03.20 22:47
제가 운영하는 홈페이지도 이 문제로 동영상태그가 끊겼는데
.18버전에서는 최고관리자 계정에서도 수정시에 말씀하신 HTMLPurifier가 적용되는것 같습니다.
다만 작성시에는 적용되지 않고 수정시에만 적용되는 것 같습니다.
.17로 버전을 내리니 관리자로 작성/수정시에 video태그가 정상작동하네요.
관리자 계정으로 작성/수정시 모두 안되는게 아니라 수정시에만 video 태그가 작동하지 않는 것으로 봐선 이 부분은 향후 업데이트에서 수정이 필요할지도 모른다고 생각되네요
-
최황삼
2016.03.21 08:49
최고관리자가 작성하면 적용되지만 수정하면 태그가 사라지고 맙니다.
결국 삭제하고 다시 작성허는 수 밖에 없습니다.이 문제에 관하여 이슈에 등록하였습니다. 참고하세요.
==> https://github.com/xpressengine/xe-core/issues/1876 -
기진곰
2016.03.22 15:14
수정시 태그가 사라지는 문제의 원인을 찾았습니다.
https://github.com/xpressengine/xe-core/issues/1882
비슷한 문제를 겪고 계신 분은 이 이슈의 제 댓글을 참고하세요.
-
최황삼
2016.03.22 18:18
기진님, 안녕하세요.
알려주신대로 파일을 수정하였더니 제가 제기한 4개중 3개는 문제없이 잘 실행됩니다.
나머지 1개는 editor에 관한 문제 입니다.
기존 페이지를 수정하기 위해 editor의 "소스"버튼을 누르면 editor에 가로 스크롤바가 생깁니다.
소스를 수정하기 불편하므로 복사해서 editplus에서 작업한 후 다시 editor에 붙여넣기를 하고 있습니다.
언젠가는 개선되어야 할 것 같습니다.감사합니다.
<embed>도 적용되지 않습니다.
최초 글 작성시에는 보여지다가 글 수정하고 나면 소스가 사라지거나 태그가 그대로 노출됩니다.