오늘 사이트를 XE에서 라이믹스로 변경했는데 변경하고 나니 404에러가 났습니다.

원을을 찾으려고 살펴보다 ./files/config/config.php 파일을 열어 보니

 

db테이블 관련해서  'prefix' => 'rx_', 로 되어 있었습니다.

 

이부분을 'prefix' => 'xe_', 로 변경해 주고 나니 사이트가 정상적으로 열립니다.

기존에 XE 기준으로 테이블의 prefix가 xe_다보니 xe_로 변경해 주고 나니 잘 열리네요.

 

수많은 원인들이 있겠지만 혹시나 XE 에서 라이믹스로 업데이트 후  404에러가 나면 config.php파일도 한번 살펴 보세요.

 

저같은 경우 xe에서 라이믹스 업데이트 하고 나면 contentextended 위젯에 Object 부분 오류나는걸 BaseObject로 변경해주고 나면 거의 해결이 되었네요.

 

간혹 모듈에서도 Object 오류나면 해당 파일 열어서 BaseObject로 수정해주면 되었구요.

 

똑띠

?
기획, 마케팅, 디자인, 프로그램을 업으로 삼고 생활하고 있습니다.
  • profile
    업데이트 하실때 어떻게 하셨어요?

    files/config/config.inc.php 에서 prefix 가 바뀐다는건 있어서는 안되는일일텐데요.

    정상적으로 덮어 씌워서 업데이트를 진행했더라면 그 값은 변경되지 않아야 하는 값인데.. 404에러가 발생된다는건 뭔가 라이믹스자체를 따로 설치하는 과정이 있었다던가 그런게 아닐까 싶은데요..;;
  • profile ?
    아무것도 한것이 없습니다. 그냥 XE 사용중이었는데 라이믹스 최신버전을 파일질라로 덮어씌웠습니다.
    보통 라이믹스로 변경할때 이런식으로 하고 관리자페이지에서 캐시파일 재생성을 해주는데, 관리자 페이지 접근을 할 수가 없다보니 파일질라에서 캐시파일 폴더를 삭제를 한 뒤 아무런 반응이 없자 위 설명대로 진행을 한것입니다.
  • profile

    https://github.com/rhymix/rhymix/blob/5c009ba28fa528a47300577809c334b1b4a4d274/common/framework/parsers/configparser.php#L66-L140

    XE 설정파일을 새로운 형식으로 변환하는 코드입니다. 그 어느 부분에도 prefix를 임의로 변경하는 부분은 없습니다.

    정말로 "아무것도" 하지 않고 덮어쓰기만 하신게 맞나요? 파일 수정, 권한 변경 등 판단하시기에 상관없어보이는 것도 전부 적어주세요. 만약 정말로 prefix가 임의로 변경된게 맞다면 라이믹스 버그이니 수정해야 합니다.

  • profile ?

    판단하시기에 상관없어 보이는것이란 문구에서 혹시나 싶어 시도했던 모든것을 적어 봅니다.
    자칫 코어개발자분들께 혼선을 줄수도 있다보니.

    1. XE 1.16 버전 -> 라이믹스 2.0.24버전으로 덮어 씌움
    2. 사이트 열리지 않아 https://도메인/admin 으로 접근해봄. 접근 되지 않음.
    3. files/cache 폴더 삭제해봄.
    4. 스팸필터 처리하는 addon이 문제가 있나 해서 삭제해봄.
    5. php버전 확인해봄. php 5.6버전 이라 php 7.4.30으로 업데이트
    6. 홈페이지가 404 에러남.
    7. 에러로그 확인해보니 classes폴더에 Object.class.php 파일에 에러를 출력해서 파일 업로드가 제대로 안되었나 해서 기존 classes폴더를 삭제하고 다시 다시 업로드 해봄.
    8. 혹시나 해서 modules폴더 퍼미션을 777로 변경해봄. - 혹시 이것때문일까요?
    9. http://도메인/admin 접근해봄. 페이지는 나오는데 로그인이 되지 않음.
    10. 그래서 혹시나 XE DB config파일과 라이믹스 DB config 파일이 다르다 보니 해당 파일 생성이 되었는지 확인 해봄.
    11. XE때 사용하던 db.config.php 파일은 Not Used 처리됨.
    라이믹스용 config.php 파일은 정상적으로 생성됨.
    그런데 prefix부분이 xe_가 아니라 rx_로 되어 있는것을 확인함.
    xe에서 라이믹스로 업데이트 해도 prefix는 xe_로 유지된다는걸 알고 있어 rx_를 xe_로 변경함.
    12. 사이트 정상적으로 열림.
    13. 관리자페이지 접근해서 업데이트 진행하고, 캐시파일 재생성 해줌.

    ---------

    이상 기억하고 있는 내용입니다.

  • ? profile
    일단 이부분은 조금더 살펴봐야할것 같습니다.
    그리고 혼선을 줄수 있다 하셨는데 이런 정보야말로 테스트 및 확인에 도움이 됩니다.
  • profile profile
    업그레이드 직후에 PHP 5.6이었다는 점이 가장 중요한 변수인 것 같습니다. 라이믹스가 정상 작동할 수 있는 환경이 아니었다면 업그레이드 과정에서 실행되어야 하는 코드가 정상적으로 1회 실행되었다는 보장이 없으니까요. 업그레이드하다 말고 끊겼을 수도 있고, 그 상태에서 새로고침해서 중복 실행되었을 수도 있고...
  • profile
    저두 xe에서 라이믹스로 업! 시켜서 사용중입니다.. 다만.. 한번식 오류가 있긴하네요 ㅠㅠ
    관리자 화면에서 어떠한 설정 확인을 누르면 팝업창이 뜨면서 에러코드를 뿜~ㅎㅎ
    일단 사이트는 정상적으로 작동을 하고 있기에 사용중 ㅠ
    업데이트시 생각보다 다양한 오류들이 있긴하더군요 몇날몇일 완전 피토했음 ㄷㄷ