코어 업데이트하다 사이트가 망가졌다는 질문이 꽤 많이 올라오는 것 같아서

여기에 공지 남깁니다.

 

쉬운설치로 업데이트하다가 사이트가 망가진 경우에는

당황하지 마시고 FTP로 다시 덮어씌우시면 됩니다.

 

관리모듈에 들어가 보면 클릭 한 번으로 코어와 각종 모듈들을 업데이트하는 "쉬운설치" 기능이 있습니다.

새 버전이 나오면 자동으로 알려주죠. 잘 돌아갈 때는 참 편리합니다.

 

그런데 이 방법으로 업데이트를 하려면 코어를 이루는 모든 파일에 쓰기 권한이 있어야 합니다.

그러나 일반적인 웹호스팅 환경에서는 files 폴더만 777로 해두고 나머지는 그대로 두기 때문에 쓰기 권한이 없습니다.

따라서 코어 업데이트가 어렵습니다.

 

이런 불편함을 해소하기 위해 FTP 정보를 입력하면 FTP를 통해 업데이트해 주는 기능도 있습니다.

웬만한 웹호스팅에서도 이 방법을 사용하면 쉬운설치로 업데이트가 가능합니다.

 

그러나 코어를 이루는 파일 수는 엄청나게 많고, 쉬운설치 모듈의 에러처리 로직은 턱없이 부족합니다.

FTP로 접속하여 그 많은 파일들을 업로드하다가 단 하나라도 에러가 발생하거나,

단 하나의 파일이라도 퍼미션이 잘못되었거나, 타임아웃에 걸린다면?

예전 버전의 코어와 새 버전의 코어가 절반쯤 섞인 상태로 남습니다 ㅠㅠ

심할 때는 관리모듈로 돌아가서 재시도할 수조차 없을 만큼 망가져 버립니다.

 

특히 FTP 접속이 불안정하거나 PHP 실행에 긴 시간이 걸리는 저렴한 웹호스팅에서 이런 문제가 잦습니다.

 

클래스 로딩에 소요되는 시간을 절약하기 위해 오토로딩 기능을 적용한 1.8.3 버전부터는

심지어 업데이트 요청이 실행되는 도중에도 예전 버전과 새 버전이 섞여서 작동할 가능성마저 있습니다.

예를 들어 ABCD 클래스가 아직 필요하지 않아서 로딩하지 않았는데

업데이트 도중 ABCD 클래스를 덮어쓰고, 그 후의 정리 과정에서 ABCD 클래스가 오토로딩된다면?

이미 로딩된 클래스들은 예전 버전인데 ABCD 클래스만 새 버전일 수 있는 거죠.

당연히 에러를 뿜게 됩니다.

 

모듈이나 애드온은 대개 용량도 작고, 파일 수도 얼마 안 되기 때문에 괜찮습니다.

 

그러나 모든 퍼미션을 내맘대로 컨트롤할 수 있는 단독서버가 아닌 이상

코어는 가능하면 공홈 자료실에서 직접 다운받아 FTP로 덮어쓰는 방법을 사용하세요.

꼬박꼬박 업데이트하시는 분들은 변경분(changed) 파일만 덮어쓰면 되니까

딱히 시간이 오래 걸리지도 않습니다.

 

만약 FTP로 업데이트했는데도 사이트에 문제가 생긴 경우

 

1. 서버의 PHP 버전을 확인해 주세요. XE 최신 버전을 사용하려면 PHP 5.3 이상이어야 합니다.

버전이 낮은 경우 Syntax error 등의 오류가 발생할 수 있습니다.

 

2. 캐시파일을 비워주세요. FTP에 들어가서 files 폴더 선택 → cache 폴더 선택 → cache_2로 이름 변경 → 삭제

 

3. FTP 업로드 도중 오류난 파일이 있는지 반드시 확인하고 재업로드하셔야 합니다.

파일질라 업로드창 하단에 오류난 파일 목록이 따로 나옵니다.

 

(물론 SSH로 접속해서 git으로 업데이트하는 고수님들은 이런 안내가 필요하지도 않겠지요?)

 

기진곰

profile
GitHub @kijin 사람을 위한 인터넷 생태계의 발전에 많은 관심을 갖고 있습니다.
우리가 만들어 가는 XE의 새 이름, 라이믹스(Rhymix) 프로젝트에 참여하고 있습니다.
오픈소스 도로명주소 검색서버 및 API Postcodify를 개발, 운영중입니다.
국내외 서버 및 클라우드서버 세팅, 이전, 튜닝해 드립니다.
  • ?
    공지로!
  • profile

    또 하나 주의할 점은 코어의존성 자료가 좀 있어요... 코어 아니라고 다른자료 업데이트 쉬운설치 하다가 코어가 쉬운설치로 업데이트 되는 경우가 있죠.

  • profile profile
    이것 때문에 쉬운설치를 섣불리 클릭하기가 두렵습니다. 쉬운설치라는 게 참 좋은 기능 같은데, 결국 써먹질 못합니다 ㅠㅠ
  • profile
    ftp로 XE 업데이트를 해주는 앱 만들어 보고 싶네요....ㅋㅋㅋ
    changed 파일들만 받아와서 ftp로 업로드하고... 파일 덮어쓰기할때 .bak파일 만들고....ㅋㅋㅋㅋ

    하고싶은건 참 많은데 하기 귀찮아서 문제... (시간도 없구요!ㅋㅋ)
  • profile profile
    앱은 없지만 스크립트는 있습니다.
    https://github.com/xpressengine/xe-core/pull/1669
  • profile profile
    오... 흥미롭네요.
  • ?
    저는 쉬운설치로 업데이트 2번햇는대 아무것도 안깨지고 괜찮내여
    호스팅은 카패24 이용중 ㅋ
  • ? profile
    저도 24 쓰는데, 쉬운설치 참 잘 되다가 사이트 먹통 걸린 적 있었어요 ㅠㅠㅠ
  • profile
    XE 코어 업데이트 - 가장 안전하게 하는 방법
    https://www.cameron.co.kr:47741/joyfulxe/68461
    도움이 되었음 좋겠네요^^
  • profile profile
    감사합니다.

    언제 기회가 되시면 git으로 설치하는 방법도 강의해 주세요. 기왕 ssh로 접속할 거면 압축 풀고 자시고 할 것 없이 git clone / git pull 하는 게 편하잖아요. (물론 git을 지원하는 호스팅이라는 가정 하에... 카페24는 됩니다.)
  • profile profile
    알려주세요~~~~~~~~~
  • profile profile
    https://xe1.xpressengine.com/tip/22947921 이 게시물 말하는거 같네요

    CAFE24도 된다는 이야기에 해보니깐 잘되네요... 저같은 경우에는 이미 수동으로 업데이트를 마친 상태라 그런지
    [IDIDIDID@uws64-172 www]$ git pull
    Already up-to-date.
    이미 업데이트가 되었다고 뜨는걸보니 정상적으로 따라한듯..
  • ?
    저도 계속 쉬운설치로 업데이트 했네요. 다시 업데이트 해줘야 되겠어요!
  • ?
    저는 옛날에 백업도 안하고 업데이트 했다가 사이트가 망가져서 버린적이있네요 ..