PHP 5.4 + 그누보드 5.2.9 사이트를 PHP 8 이상으로 올려야 하는데, 현실적인 방법 문의
안녕하세요. 대학 기관 서버에서 운영 중인 사이트 때문에 문의드립니다.
대학 기관 보안 점검에서 "PHP 8.1 미만 사용 서버는 외부 접속 불가" 판정을 받았습니다.
외부 공개를 하려면 PHP를 8.1 이상으로 올려야 합니다.
[상황]
- 서버: CentOS 7 (지원 종료 OS), Apache 2.4.6, MariaDB 5.5.68
- PHP: 5.4.16 - 그누보드: 5.2.9.8.3
- 사이트 구성: 소개 페이지 + 로그인 + 게시판 1개 정도의 작은 사이트입니다. 자체 PHP 파일 몇 개가 그누보드 common.php를 불러서 로그인·회원 조회를 하고, 게시판은 그누보드 게시판을 그대로 사용합니다.
- 서버를 새로 구성하거나 OS를 바꾸기는 당장 어렵고, VM 스냅샷도 없는 환경입니다.
[저희가 세운 방법]
1. PHP 8.3을 기존 PHP 5.4와 별도 경로에 설치 (php-fpm)
2. 그누보드 5.6.48을 새 폴더에 풀고 기존 data 폴더만 복사
3. 관리자 페이지 DB 업그레이드 실행
4. 사이트 폴더만 PHP 8.3으로 연결하고 PHP 5.4는 끔
[문의드리고 싶은 것]
1. 이렇게 5.2.9에서 5.6.48로 한 번에 올리는 방식이 현실적으로 괜찮은지, 아니면 더 안전하거나 권장하는 방법이 있는지요?
2. 이 정도 규모의 사이트라면 5.6.48로 올리는 것과 그누보드7로 새로 구축하는 것 중 어느 쪽을 권하시나요?
3. 위에서 직접 처리한 부분(회원 비밀번호, 누락 컬럼)에 대해 공식적인 처리 방법이 있다면 알려주시면 감사하겠습니다.
4. 혹시 이런 구버전 업그레이드를 유료로 지원하는 서비스가 있는지도 궁금합니다.
방향을 확인하고 싶어서 질문드립니다. 감사합니다.
대학 기관 보안 점검에서 "PHP 8.1 미만 사용 서버는 외부 접속 불가" 판정을 받았습니다.
외부 공개를 하려면 PHP를 8.1 이상으로 올려야 합니다.
[상황]
- 서버: CentOS 7 (지원 종료 OS), Apache 2.4.6, MariaDB 5.5.68
- PHP: 5.4.16 - 그누보드: 5.2.9.8.3
- 사이트 구성: 소개 페이지 + 로그인 + 게시판 1개 정도의 작은 사이트입니다. 자체 PHP 파일 몇 개가 그누보드 common.php를 불러서 로그인·회원 조회를 하고, 게시판은 그누보드 게시판을 그대로 사용합니다.
- 서버를 새로 구성하거나 OS를 바꾸기는 당장 어렵고, VM 스냅샷도 없는 환경입니다.
[저희가 세운 방법]
1. PHP 8.3을 기존 PHP 5.4와 별도 경로에 설치 (php-fpm)
2. 그누보드 5.6.48을 새 폴더에 풀고 기존 data 폴더만 복사
3. 관리자 페이지 DB 업그레이드 실행
4. 사이트 폴더만 PHP 8.3으로 연결하고 PHP 5.4는 끔
[문의드리고 싶은 것]
1. 이렇게 5.2.9에서 5.6.48로 한 번에 올리는 방식이 현실적으로 괜찮은지, 아니면 더 안전하거나 권장하는 방법이 있는지요?
2. 이 정도 규모의 사이트라면 5.6.48로 올리는 것과 그누보드7로 새로 구축하는 것 중 어느 쪽을 권하시나요?
3. 위에서 직접 처리한 부분(회원 비밀번호, 누락 컬럼)에 대해 공식적인 처리 방법이 있다면 알려주시면 감사하겠습니다.
4. 혹시 이런 구버전 업그레이드를 유료로 지원하는 서비스가 있는지도 궁금합니다.
방향을 확인하고 싶어서 질문드립니다. 감사합니다.
답변 14개
어차피 하실거면 신규나 이전이 답입니다.
리눅스때문에 저는 신규 구매를 선택할 수 밖에 없었습니다.
한대로는 해결이 안되겠더라구요.
임대서버 잠시 빌려서 옮겼다가 다시 오는 방법도 고려해 보세요.
그누5에서 최신버전으로 가는것은 껌(?)입니다.ㅎㅎ
그누4에서 그것도 커스텀 여러군데 한것은 노답입니다.
지금 자동이전솔루션 쳇하고 클로드에게 작업시키고 있는데
야들도 헤매고 있어요.
차라리 제가 노과다하는게 편하겠다는 생각이 듭니다.
오늘까지 시켜보고 안되면 수작업해야겠어요.ㅠㅠ
안녕하세요. 비슷한 PHP·그누보드 업그레이드 작업을 해본 경험이 있어 답변드립니다
1. 세우신 방법이 맞습니다. 그누보드5는 5.2.9에서 최신 버전으로 한 번에 올리고 관리자의 DB 업그레이드를 실행하면 됩니다. 스냅샷이 없으니 DB 덤프와 파일 전체 백업을 먼저 해 두세요. 바로 전환하지 말고 별도 포트에서 테스트한 뒤 넘어가시길 권합니다. 문제는 그누보드보다 자체 PHP 파일에서 날 가능성이 큽니다(mysql_*, each() 등 PHP 8에서 사라진 함수).
2. 기한과 규모를 보면 5.6이 낫습니다. G7은 사실상 새로 구축하는 일입니다. 다만 CentOS 7 자체가 다음 점검에서 지적될 수 있으니, 서버를 교체할 때 G7을 검토하시면 됩니다.
3. 비밀번호는 구형 해시로 로그인하면 새 방식으로 자동 변환되니 따로 손대실 필요가 없습니다. 누락 컬럼은 DB 업그레이드를 실행하는 게 공식 방법이고, 그래도 남는 부분만 원본 스키마와 대조해서 추가하시면 됩니다.
4. 유료로 해주는 곳이 있습니다. 의뢰 게시판이나 크몽 같은 곳에서 구하시면 될것 같습니다.
1. 세우신 방법이 맞습니다. 그누보드5는 5.2.9에서 최신 버전으로 한 번에 올리고 관리자의 DB 업그레이드를 실행하면 됩니다. 스냅샷이 없으니 DB 덤프와 파일 전체 백업을 먼저 해 두세요. 바로 전환하지 말고 별도 포트에서 테스트한 뒤 넘어가시길 권합니다. 문제는 그누보드보다 자체 PHP 파일에서 날 가능성이 큽니다(mysql_*, each() 등 PHP 8에서 사라진 함수).
2. 기한과 규모를 보면 5.6이 낫습니다. G7은 사실상 새로 구축하는 일입니다. 다만 CentOS 7 자체가 다음 점검에서 지적될 수 있으니, 서버를 교체할 때 G7을 검토하시면 됩니다.
3. 비밀번호는 구형 해시로 로그인하면 새 방식으로 자동 변환되니 따로 손대실 필요가 없습니다. 누락 컬럼은 DB 업그레이드를 실행하는 게 공식 방법이고, 그래도 남는 부분만 원본 스키마와 대조해서 추가하시면 됩니다.
4. 유료로 해주는 곳이 있습니다. 의뢰 게시판이나 크몽 같은 곳에서 구하시면 될것 같습니다.
답변을 작성하려면 로그인이 필요합니다.