다른 명령
개요
- 미디어위키 LocalSettings.php
- 미디어위키 설정 파일
- 미디어위키를 설치한 폴더에 위치한다.
- 주요 항목
- DB접속정보
- 확장기능 활성화
- 사용자그룹별 열람/편집 권한 조정
- 파일 업로드 확장자 허용
- 미디어위키 설치시에 자동으로 설정되는 부분이다. 버전마다 조금씩 다를 수 있으나 대동소이하다.
기본 설정 부분
<?php # This file was automatically generated by the MediaWiki 1.18.0 # installer. If you make manual changes, please keep track in case you # need to recreate them later. # # See includes/DefaultSettings.php for all configurable settings # and their default values, but don't forget to make changes in _this_ # file, not there. # # Further documentation for configuration settings may be found at: # http://www.mediawiki.org/wiki/Manual:Configuration_settings
- 이 파일(LocalSettings.php)이 미디어위키에 의해 자동으로 생성되었음을 알려준다.
- 자세한 사항은 http://www.mediawiki.org/wiki/Manual:Configuration_settings 를 참고하라는 친절한 설명도 있다.
# Protect against web entry if ( !defined( 'MEDIAWIKI' ) ) { exit; }
- MEDIAWIKI라는 고정변수가 정의되어 있지 않을 경우 즉시 종료.
- php에서 include 시 보안상 이유로 흔히 사용되는 기법이다. 다른 파일에서 비정상적으로 호출(include)될 경우 오류 등의 정보가 노출되는 것을 방지한다.
## Uncomment this to disable output compression # $wgDisableOutputCompression = true; $wgSitename = "Jmnote";
## The URL base path to the directory containing the wiki; ## defaults for all runtime URL paths are based off of this. ## For more information on customizing the URLs please see: ## http://www.mediawiki.org/wiki/Manual:Short_URL $wgScriptPath = "/wiki"; $wgScriptExtension = ".php";
## The protocol and server name to use in fully-qualified URLs $wgServer = "http://jmnote.com";
## The relative URL path to the skins directory $wgStylePath = "$wgScriptPath/skins";
## The relative URL path to the logo. Make sure you change this from the default, ## or else you'll overwrite your logo when you upgrade! #$wgLogo = "$wgStylePath/common/images/wiki.png"; $wgLogo="$wgScriptPath/custom/jmnote20120124.png"; $wgFavicon = "$wgScriptPath/custom/jmnote20120124.ico";
## UPO means: this is also a user preference option $wgEnableEmail = true; $wgEnableUserEmail = true; # UPO $wgEmergencyContact = "긴급연락시_이메일주소"; $wgPasswordSender = "패스워드요청시_발신자_이메일주소"; $wgEnotifUserTalk = false; # UPO $wgEnotifWatchlist = false; # UPO $wgEmailAuthentication = true;
## Database settings $wgDBtype = "mysql"; $wgDBserver = "localhost"; $wgDBname = "DB명"; $wgDBuser = "DB계정"; $wgDBpassword = "DB패스워드"; # MySQL specific settings $wgDBprefix = "DB테이블_이름_앞에 붙는_접두어"; # MySQL table options to use during installation or update $wgDBTableOptions = "ENGINE=InnoDB, DEFAULT CHARSET=binary"; # Experimental charset support for MySQL 4.1/5.0. $wgDBmysql5 = false;
## Shared memory settings $wgMainCacheType = CACHE_NONE; $wgMemCachedServers = array(); ## To enable image uploads, make sure the 'images' directory ## is writable, then set this to true: $wgEnableUploads = true; #$wgUseImageMagick = true; #$wgImageMagickConvertCommand = "/usr/bin/convert";
# InstantCommons allows wiki to use images from http://commons.wikimedia.org # (기본값) $wgUseInstantCommons = false; $wgUseInstantCommons = true;
## If you use ImageMagick (or any other shell command) on a ## Linux server, this will need to be set to the name of an ## available UTF-8 locale $wgShellLocale = "en_US.utf8";
## If you want to use image uploads under safe mode, ## create the directories images/archive, images/thumb and ## images/temp, and make them all writable. Then uncomment ## this, if it's not already uncommented: #$wgHashedUploadDirectory = false; ## Set $wgCacheDirectory to a writable directory on the web server ## to make your wiki go slightly faster. The directory should not ## be publically accessible from the web. #$wgCacheDirectory = "$IP/cache";
# Site language code, should be one of the list in ./languages/Names.php $wgLanguageCode = "ko"; $wgSecretKey = "비밀키(자동 생성됨. 수정금지)"; # Site upgrade key. Must be set to a string (default provided) to turn on the # web installer while LocalSettings.php is in place $wgUpgradeKey = "업그레이드키(자동 생성됨, 수정금지)";
## Default skin: you can change the default skin. Use the internal symbolic ## names, ie 'standard', 'nostalgia', 'cologneblue', 'monobook', 'vector': $wgDefaultSkin = "vector";
## For attaching licensing metadata to pages, and displaying an ## appropriate copyright notice / icon. GNU Free Documentation ## License and Creative Commons licenses are supported so far. $wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright $wgRightsUrl = ""; $wgRightsText = ""; $wgRightsIcon = ""; # $wgRightsCode = ""; # Not yet used
# Path to the GNU diff3 utility. Used for conflict resolution. $wgDiff3 = "/usr/bin/diff3";
- 여기서 미디어위키의 문서버전별 비교 기능 모듈이 diff3임을 알 수 있다.
- 리눅스 설치시 보통 해당 위치에 알아서 설치된다.
# Query string length limit for ResourceLoader. You should only set this if # your web server has a query string length limit (then set it to that limit), # or if you have suhosin.get.max_value_length set in php.ini (then set it to # that value) $wgResourceLoaderMaxQueryLength = -1;
# End of automatically generated settings. (맨 위부터 여기까지는 자동으로 생성된 설정부분) # Add more configuration options below. (아래는 사용자가 추가로 설정하는 부분)
- 여기까지는 최초 설치에 성공했다면 대부분 자동으로 잘 설정되어 있을 것이다. (단 위 내용 중 로고, 파비콘은 본인이 직접 설정해야 한다.)
추가 설정 부분
이 아래로는 필자가 의도적으로 추가한 코드들이다.
$wgAllowExternalImages = true;
- 미디어위키에서는 기본적으로 <img>태그를 사용할 수 없게 되어 있어서 외부그림을 삽입할 수 없다. (즉 자기 사이트의 그림만 보여줄 수 있다.)
- 이것을 true로 하면 외부 그림을 보여줄 수 있게 해준다. 위키문서에 그림의 url주소를 넣으면 그림으로 출력된다.
$wgExternalLinkTarget = '_blank';
- 링크 클릭시 새창으로 보여준다. (이 줄을 없으면 링크를 같은 창에서 보여준다.)
$wgGroupPermissions['*']['edit'] = false; $wgGroupPermissions['*']['createaccount'] = false;
- 권한이 없는 사용자는 편집이나 계정생성을 할 수 없다. (즉 회원가입도 편집도 할 수 없는 개인 지필 위키가 된다. 열람은 제한하지 않았으므로 내용은 인터넷 상에 공개된다.)
require_once( "$IP/extensions/ParserFunctions/ParserFunctions.php" ); $wgPFEnableStringFunctions = true; require_once("$IP/extensions/CharInsert/CharInsert.php"); require_once("$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php"); require_once("$IP/extensions/Cite/Cite.php"); require_once("$IP/extensions/googleAnalytics/googleAnalytics.php"); require_once("$IP/extensions/MagnetLinks/MagnetLinks.php");
- 미디어위키의 extensions 폴더에 설치한 각종 확장기능들은, 이런 식으로 등록해야 실제로 사용할 수 있게 된다.