가온 위키:기능 구현 불가-누가 해결책을 알려주세요!: 두 판 사이의 차이

m (→‎구현한 기능: 오탈자 수정)
(TitleKey 추가)
67번째 줄: 67번째 줄:
</syntaxhighlight>
</syntaxhighlight>
이라고 입력한다. 이때 버전은 위의 버전과 다를 수 있다.
이라고 입력한다. 이때 버전은 위의 버전과 다를 수 있다.
==TitleKey 확장기능 설치==
대소문자 구분 없이 문서를 검색 할 수 있는 [[미디어위키/확장기능/TitleKey|TitleKey]] 설정 중, <code>php extensions/TitleKey/maintenance/rebuildTitleKeys.php</code> 명령어를 입력할 때, 경로를 찾지 못하는 문제가 있다.
이 문제는 환경변수 <code><nowiki>$IP</nowiki></code>가 경로를 제대로 반환하지 않아 생기는 문제이다.
여기서는 환경변수 <code><nowiki>$IP</nowiki></code>를 수정하지 않고, 9번째 줄을 절대경로로 바꾸어 사용했다. 사용 환경에 맞추어 수정하길 바란다.
==수정 전==
<syntaxhighlight lang='php' start='5' highlight='5'>
$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';
}
</syntaxhighlight>
==수정 후==
<syntaxhighlight lang='php' start='5' highlight='5'>
$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';
}
</syntaxhighlight>


==구현한 기능==
==구현한 기능==

2021년 12월 6일 (월) 22:14 판

이 문서는...

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

구현 못한 부분

  • 아직까지 없습니다.

해결됨

리버티 스킨 관련 문제

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

영상 가져오기(Embed) 관련 문제

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

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

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

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

수정 전

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

수정 후

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

$wgGenerateThumbnailOnParse = true;

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

root@gaon:/var/www/html/w/maintenance# php rebuildImages.php

하고 싶은말

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

신택스 강조(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를 설치하면 해당 문제는 발생하지 않는다.

설치방법은 쉘에

root@gaon:/# apt update && apt -y install python3

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

root@gaon:/# 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···로 시작하는 경로를 수정하여 사용하자.

각주

• 현재 페이지 URL 줄이기