가온 위키:기능 구현 불가-누가 해결책을 알려주세요!

이 문서는...[편집]

답답한 우리의 가온 위키 관리자가 구현하지 못해, 착한 유저가 해결책을 제시한 경우, 감사의 표시로 이곳과 가온 위키 커뮤니티에 표시하는 곳입니다.

구현 못한 부분[편집]

  • 아직까지 없습니다.

해결됨[편집]

리버티 스킨 관련 문제[편집]

리버티 스킨과 관련된 문제는 가온 위키:기능 구현 불가-누가 해결책을 알려주세요!/리버티 스킨 문서를 참고하자.

영상 가져오기(Embed) 관련 문제[편집]

외부 서비스들 중에서 가져오지 못하는 것들은 가온 위키:기능 구현 불가-누가 해결책을 알려주세요!/영상 가져오기 문서를 참고하자!

이미지 관련 문제[편집]

이미지 크기 설정시 파일 링크만 뜨는 현상[편집]

[[파일:updates.png|100px]] 이렇게 하면 일반 문서처럼 링크로 뜬다. 서버 이전 전에는 이러지 않았는데...

미디어위키 헬프 데스크에서 찾았다.

수정 전[편집]

미디어위키의 루트 폴더에 있는 LocalSettings.php를 수정한다.

수정 후[편집]

LocalSettings.php의 하단 부분에 추가하자.

$wgGenerateThumbnailOnParse = true;

그리고 미디어위키 버전이 1.30 이상인 경우, 썸네일을 재생성하자. 미디어위키의 루트 폴더에서 maintenance 폴더로 이동한 뒤, 아래의 명령어를 입력하자.

[email protected]:/var/www/html/w/maintenance# php rebuildImages.php
하고 싶은말[편집]

이 오류는 미디어위키 1.27 버전에서는 없던 오류이므로 1.30 이상 버전의 오류같다. 물론 썸네일은 Imagemagick가 미리 설치 및 미디어위키에서 미리 설정 되어 있어야 한다.

SVG 파일 업로드시 썸네일의 흑백화[편집]

SVG 파일을 업로드하면 원래 가지고 있던 색상값은 표시되지 않고 흑백으로만 표시가 된다. 이는 SVG를 png로 변환하는 프로그램인 ImageMagick의 특정 버전에서 나타난 오류이다. zlzleking님이 보고해 주셨다.

수정 전[편집]

먼저 Inkscape를 설치한다. 우분투 기준으로 아래의 명령어를 입력하면 된다.

[email protected]:/# apt update
[email protected]:/# apt install inkscape

이후 미디어위키의 루트 폴더에 있는 LocalSettings.php를 수정한다.

$wgSVGConverter = 'ImageMagick';
수정 후[편집]

LocalSettings.php의 하단 부분에 추가하자. Inkscape의 경로는 자신의 환경에 맞춰 수정하자.

$wgSVGConverterPath = '/usr/bin/inkscape';
$wgSVGConverters = [
        'Inkscape' => '/usr/bin/inkscape -w $width -z -w $width -f $input -e $output',
];
$wgSVGConverter = 'Inkscape';

#$wgSVGConverter = 'ImageMagick';

여기서

$wgSVGConverter = 'ImageMagick';

부분은 반드시 주석처리 한다.

그리고 미디어위키 버전이 1.30 이상인 경우, 썸네일을 재생성하자. 미디어위키의 루트 폴더에서 maintenance 폴더로 이동한 뒤, 아래의 명령어를 입력하자.

[email protected]:/var/www/html/w/maintenance# php rebuildImages.php

신택스 강조(Syntax Highlight) 사용시 사용된 문서가 구문 강조에 오류가 있는 문서로 분류되는 현상[편집]

미디어위키 1.33.1 버전에 있는 SyntaxHighlight 확장기능을 사용하는 경우, "구문 강조에 오류가 있는 문서"로 자동 분류된다.

미디어위키 코어에 포함되어 있는 버전만 파이썬 전역 환경변수 처리를 요구한다.

구버전 사용[편집]

1.32.x 버전의 구버전을 사용하는 방법이다. 웹호스팅과 같이 서버를 직접 조작하지 못하는 경우에 사용하면 된다.

SyntaxHighlight 다운로드 페이지로 이동 후, 미디어위키 버전을 1.32 버전으로 설정 후, 기존에 있던 확장기능 삭제 후 새로 받은 버전으로 업로드 한다.

확장기능 페이지서 1.33버전으로 다운로드[편집]

이상하게 1.33 버전으로 다운로드 받아도 작동한다. 아마도 코어 파일에 포함되어 있는 버전만 파이썬 전역 환경변수 처리해야 하는 것 같다.

이후 미디어위키 1.34 코어에 포함된 버전은 해당 문제가 발생하지 않는다. 1.33.1에 포함된 버전만 문제인 것 같다.

파이썬3 설치[편집]

1.35.1 기준, 서버에 파이썬3를 설치하면 해당 문제는 발생하지 않는다.

설치방법은 쉘에

[email protected]:/# apt update && apt -y install python3

이라고 입력한다. 설치가 되었는지 확인하려면,

[email protected]:/# python3 --version
Python 3.8.5

이라고 입력한다. 이때 버전은 위의 버전과 다를 수 있다.

TitleKey 확장기능 설치[편집]

대소문자 구분 없이 문서를 검색 할 수 있는 TitleKey 설정 중, php extensions/TitleKey/maintenance/rebuildTitleKeys.php 명령어를 입력할 때, 경로를 찾지 못하는 문제가 있다.

이 문제는 환경변수 $IP가 경로를 제대로 반환하지 않아 생기는 문제이다.

여기서는 환경변수 $IP를 수정하지 않고, 9번째 줄을 절대경로로 바꾸어 사용했다. 사용 환경에 맞추어 수정하길 바란다.

수정 전[편집]

$IP = getenv( 'MW_INSTALL_PATH' );
if ( $IP === false ) {
	$IP = __DIR__ . '/../..';
}
require_once "$IP/maintenance/Maintenance.php";

// In case we want to do offline initialization...
if ( !class_exists( 'TitleKey' ) ) {
	require __DIR__ . '/../includes/TitleKey.php';
}

수정 후[편집]

$IP = getenv( 'MW_INSTALL_PATH' );
if ( $IP === false ) {
	$IP = __DIR__ . '/../..';
}
require_once "/var/www/html/w/maintenance/Maintenance.php";

// In case we want to do offline initialization...
if ( !class_exists( 'TitleKey' ) ) {
	require __DIR__ . '/../includes/TitleKey.php';
}

구현한 기능[편집]

리버티 스킨-스크롤 범위.gif

혹시 사용하고 싶다면, Liberty 깃허브 저장소를 다운로드 받아 LibertyTemplate.php에서 /w/skins···로 시작하는 경로를 수정하여 사용하자.

각주[편집]