MediaWiki 서버 이전 체크리스트 (nginx + PHP-FPM + DB)
MediaWiki(위키)를 다른 서버로 옮길 때 필요한 파일/DB/nginx/PHP/TLS 체크리스트
MediaWiki는 “코드 + DB + 업로드 파일(images)” 3가지를 동시에 챙겨야 정상 이전됩니다.
이 문서는 nginx + PHP-FPM + MySQL/MariaDB 형태의 위키를 다른 서버로 옮길 때 체크리스트를 정리합니다.
예시는 모두 익명화되어 있으며, 비밀번호/시크릿은 placeholder로 치환합니다.
관련 용어: rsync, mysqldump, PHP-FPM
0) 이전 전에 확인할 것
- 업로드 디렉토리(
images/) 용량(디스크 여유 확인) - PHP 버전/확장 모듈(현재와 동일한 버전 권장)
- DB 덤프 소요 시간(대용량이면
--single-transaction) - DNS TTL 낮추기(컷오버 다운타임 최소화)
1) 파일 복사(코드 + 업로드)
필수:
- MediaWiki 루트(extensions/skins 포함)
images/업로드
캐시 디렉토리는 보통 제외해도 됩니다(재생성 가능).
rsync -avz --delete \
--exclude 'cache/' --exclude '.cache/' \
/var/www/wiki/html/ user@target:/srv/wiki/
2) DB 덤프/복구
덤프
mysqldump --single-transaction --quick -u wiki_user -p wiki_db > wiki.sql
복구
mysql -u wiki_user -p wiki_db < wiki.sql
3) LocalSettings.php(또는 설정 파일) 갱신
- DB host/credentials 변경
$wgServer,$wgCanonicalServer갱신- 가능하면 DB 비밀번호는 이전 후 로테이션
4) nginx + PHP-FPM 설정
기본 패턴(개념):
try_files로 존재하면 정적- 없으면
index.php로 라우팅 .php는fastcgi_pass로 전달
관련 레시피: nginx: PHP-FPM 기본 location 블록
5) TLS(HTTPS)
sudo certbot renew --dry-run
서버를 바꾸는 경우에는 새 서버에서 certbot을 다시 발급하는 방식이 보통 안전합니다.
6) 검증(이전 후)
- 메인 페이지 렌더링
- 이미지 업로드/다운로드
- API 호출 예:
api.php?action=query&meta=siteinfo - nginx/PHP-FPM 로그 확인
7) 흔한 장애
- 이미지가 404 →
images/복사/권한 확인 - PHP 502 → php-fpm 소켓/버전 확인
- 확장 로드 실패 → vendor/composer install 필요