라이믹스/버그

이 문서는?[편집 / 원본 편집]

라이믹스에 있는 버그들에 대해 서술합니다.

아직 해결되지 않은 보안 이슈는 이곳에 올리지 마시고 [email protected]에 메일을 보내세요.

먼저 라이믹스를 최신 버전으로 업데이트 하고, 아직 해결되지 않은 경우에만 따라하세요.


다국어[편집 / 원본 편집]

다국어 설정 버튼 미작동[편집 / 원본 편집]

다국어 설정 후, 문구를 입력한 뒤, '저장 및 사용' 버튼을 누르면 아무 일도 일어나지 않는다. 다국어 정보는 저장되는 것으로 보아, 불러와 사용하는 것이 안되는 것 같다. xetown 다국어 문제 제기 글

1.9.3에서는 되는 것으로 보아 굳이 사용을 해야 한다면 깃허브에 이슈를 등록하고 기다리거나, 구버전을 사용해야 할 것 같다.(구버전의 사용은 왠만해서는 사용하지 말자. 보안적 취약점이나 버그들이 있으니깐.)

해당 버그는 1.9.7 이후에는 재현되지 않는다.

CKEditor[편집 / 원본 편집]

단축키를 제외한 다른 방법으로의 붙혀넣기 불가능?[편집 / 원본 편집]

키보드의 ctrl + v의 붙혀넣기가 되지 않는다. 'Your browser doesn't allow you to paste this way. Press 컨트롤+V to paste.' 라는 메시지가 출력된다. 깃허브 이슈

XE에서도 동일 문제가 발생하였지만, 문제의 플러그인을 빼고 재빌드 해서 문제는 사라졌다.

라이믹스에는 CKEditor를 원래 그대로 사용한다 [1]

해결 방법 1[편집 / 원본 편집]

에디터 설정에서 '플러그인 제거'칸에 문제의 context 플러그인과, context를 필요로 하는 다른 플러그인 이름을 입력하면 된다. 아래 항목은 제거해어 하는 플러그인 이름이다.

참고 xe타운 웹지기님의 댓글
  • contextmenu
  • liststyle
  • tabletools
  • tableselection[2]

해결 방법 2[편집 / 원본 편집]

위의 플러그인을 제거한 Ckeditor를 사용하는 방법이 있지만 권장하지 않는다.[3]

XETOWN에 라이믹스를 위한 CKEditor 수정본 파일을 포인트 마켓에 무료로 올렸다. XETOWN 포인트 마켓 - CKEditor 붙여넣기 버그 픽스 archive.is 박제

댓글에는 PR을 넣어 보라는 글도 보이는데, PR을 넣는다고 해도 받아드려질 것 같진 않아 보인다. 왜냐하면 라이믹스에 있는 서드파티 플러그인들은 최대한 순정 상태를 유지한 채 공식 지원되는 설정만 조정하여 사용하는 것을 원칙이기 때문이다.[4]

또한 해당 자료는 포인트마켓 규정에서 RX/XE 코어에 포함된 파일인 경우 (원본, 수정 모두 포함) 해당 자료는 판매 할 수 없기 때문에 삭제되어야 하지만 이상하게도 삭제가 안 되고 있다. XETOWN 포인트마켓 규정

물론 이는 xetown의 처리 문제이다. 따라서 커스텀 빌드를 사용하기 보다는 위의 라이믹스/버그#해결 방법 1 의 방법을 사용하는 것을 권장한다.

휴지통-포인트[편집 / 원본 편집]

문서나 댓글을 휴지통에 보내더라도 포인트가 회수되지 않는 버그[편집 / 원본 편집]

문서나 댓글 작성시 포인트를 주도록 설정한 후, 문서/댓글을 작성 뒤 휴지통으로 이동시키면 포인트가 회수되지 않는다. xetow 문제 제기글 이건 XE에서부터 있었던 고전적인 버그다.

패치를 통해 해결되었다. f58be61 커밋, 4158d94 커밋

모듈 선택[편집 / 원본 편집]

모듈 선택이 되지 않는 버그[편집 / 원본 편집]

1.9.9 버전에서 기존에 CafeXE 모듈을 사용하였다면 모듈 선택이 되지 않는 버그가 발생했다. 기존에 CafeXE 모듈을 사용하지 않았더라도 문제가 발생 할 수 있는데, 멀티사이트 기능의 흔적을 점진적으로 들어내고 있기 때문이다.[5]

site_srl이 0이 아닌 경우, 목록에서 안 보일 수 있다.[6]

module.view.php 수정[편집 / 원본 편집]

./modules/module/module.view.php 파일을 수정한다.

수정 전[편집 / 원본 편집]

8번째 줄을 삭제한다.

/**
	 * @brief Select a module
	 */
	function dispModuleSelectList()
	{
		// Get a list of modules at the site
		$args = new stdClass;
		$output = executeQueryArray(isset($query_id) ? $query_id : 'module.getSiteModules', $args);
		
		$mid_list = array();
		$oModuleModel = getModel('module');

수정 후[편집 / 원본 편집]

8번째 줄을 삭제한 모습

/**
	 * @brief Select a module
	 */
	function dispModuleSelectList()
	{
		// Get a list of modules at the site
		$args = new stdClass;
		
		$mid_list = array();
		$oModuleModel = getModel('module');

getSiteModules.xml[편집 / 원본 편집]

./modules/module/queries/getSiteModules.xml 파일을 수정한다.

쿼리에 조인이 들어간 것을 미처 패치 못하여 module.view.php 수정 이후에 패치를 진행하였다. 깃허브 라이믹스 - Fix #1130 ignore site_srl in getSiteModules query

수정 전[편집 / 원본 편집]

3, 12, 22~26번째 줄을 삭제한다.

<query id="getSiteModules" action="select">
    <tables>
        <table name="sites" />
        <table name="modules" />
        <table name="module_categories" alias="module_categories" type="left join">
            <conditions>
                 <condition operation="equal" column="module_categories.module_category_srl" default="modules.module_category_srl" />
             </conditions>
        </table>
    </tables>
    <columns>
        <column name="sites.domain" />
        <column name="modules.site_srl" />
        <column name="modules.module" />
        <column name="modules.module_category_srl" />
         <column name="modules.layout_srl" />
         <column name="modules.mid" />
         <column name="modules.browser_title" />
        <column name="modules.module_srl" />
        <column name="module_categories.title" alias="category" />
    </columns>
    <conditions>
        <condition operation="equal" column="sites.site_srl" var="site_srl" />
        <condition operation="equal" column="sites.domain" var="site_keyword" pipe="and" />
        <condition operation="equal" column="sites.site_srl" default="modules.site_srl" pipe="and" />
    </conditions>
    <navigation>
        <index  var="sort_index1" default="modules.module" order="asc" />
        <index  var="sort_index2" default="modules.mid" order="asc" />

수정 후[편집 / 원본 편집]

3, 12, 22~26번째 줄을 삭제하고 난 뒤의 코드

<query id="getSiteModules" action="select">
    <tables>
        <table name="modules" />
        <table name="module_categories" alias="module_categories" type="left join">
            <conditions>
                 <condition operation="equal" column="module_categories.module_category_srl" default="modules.module_category_srl" />
             </conditions>
        </table>
    </tables>
    <columns>
        <column name="modules.site_srl" />
        <column name="modules.module" />
        <column name="modules.module_category_srl" />
         <column name="modules.layout_srl" />
         <column name="modules.mid" />
         <column name="modules.browser_title" />
        <column name="modules.module_srl" />
        <column name="module_categories.title" alias="category" />
    </columns>
        <index  var="sort_index1" default="modules.module" order="asc" />
        <index  var="sort_index2" default="modules.mid" order="asc" />

로그인 상태에서 로그인 페이지로 이동 시 무한 리디렉션[편집 / 원본 편집]

  • 이 문제는 문제 발생 시기의 최신 버전인 라이믹스 2.0.24버전에서도 발생하는 버그입니다.
기여자 목록
본 내용은 CC BY-SA 4.0으로 가져온 내용입니다. 톰캣, YJSoft이 기여한 내용입니다.

로그인 버튼을 2번 누르고 로그인을 시도하면 www.example.dom 에서 리디렉션한 횟수가 너무 많습니다. 라는 메시지가 뜬다.

해결 방법[편집 / 원본 편집]

2개의 커밋을 적용하면 된다.

각주[편집 / 원본 편집]

이 문서는 가온 위키라이믹스 문서 4513판에서 분기하였습니다.
  1. 라이믹스에 포함된 서드파티 플러그인들은 유지보수 용이성을 위해 최대한 순정 상태를 유지한 채 공식 지원되는 설정만 조정하여 사용하는 것을 원칙이므로 contextmenu를 빼고 빌드 할 계획은 없다고 밝혔다. 깃허브 기진곰님 답변
  2. 깃허브 이슈 중 기진곰님 답변에서는 이 플러그인에 대한 언급이 없다.
  3. 수시로 업데이트가 되기 때문에 덮어 씌여 질 수도(ftp 업로드시에는 특히 더) 있으며, CKEditor 보안 업데이트시 귀찮다고 안하면 보안적 문제도 발생 하는 등 여러 문제가 있을 수 있다. 따라서 CKEditor 뿐만 아니라 코어는 왠만하면 순정을 사용하자.
  4. 깃허브 기진곰님 답변
  5. xetown 기진곰님 답변
  6. xetown 기진곰님 답변
• 현재 페이지 URL 줄이기