그누보드 서버이전 후 정상적으로 작동하지 않을 때

그누보드 서버이전후 글쓰기 안될때

서론

그누보드를 서버이전 작업하면서 로그인이 안되거나 글쓰기, 댓글 작성등 기본적인 기능의 문제점이 있을때 체크해야 할 항목들을 모아봤습니다.
크게 서버쪽 체크항목과 PHP프로그래밍 조치법으로 나누어 볼수 있을 것 같습니다. 참고로 서버쪽 문제는 대부분이 자체 서버를 운영하는 분들에게 나오는 경우가 많으니 일반 호스팅을 받는 사람은 서버쪽 체크항목은 넘기셔도 좋을 것 같습니다.

PHP 작동 오류 원인 분석

PHP가 정상 작동하지 않는 이유는 다양합니다. 몇 가지 주요 원인은 다음과 같습니다:

  1. PHP가 설치되지 않은 경우
  2. 필수 모듈이 활성화되지 않은 경우
  3. 디렉토리와 파일 권한 문제
  4. 사용자와 그룹설정 권한 확인
  5. 웹 서버 재시작이 필요한 경우
  6. 이전서버와 mysql(mariaDB)의 버전이 다른 경우

이제 각 항목을 자세히 살펴보겠습니다.

해결 방법 1: PHP 설치 확인

PHP가 정상적으로 작동하려면 우선 시스템에 PHP가 설치되어 있어야 합니다. 터미널에서 다음 명령을 실행하여 PHP 설치 여부를 확인하세요:

#php -v

만약 PHP가 설치되어 있지 않다면, 다음 명령을 사용하여 PHP를 설치하세요:

#sudo apt-get install php

해결 방법 2: 필수 모듈 활성화

PHP는 웹 서버와 함께 작동하기 위해 필수 모듈을 활성화해야 합니다. 웹 서버에 따라 다른 모듈이 필요할 수 있습니다. 아파치 웹 서버를 사용하는 경우, 다음 명령을 사용하여 필수 모듈을 설치하고 활성화하세요:

#sudo apt-get install libapache2-mod-php

NGINX를 사용하는 경우, 필요한 모듈을 설치하고 활성화하기 위해 다음 명령을 사용하세요:

#sudo apt-get install php-fpm

모듈을 설치한 후에는 웹 서버를 재시작하여 변경 사항을 적용하세요.

해결 방법 3: 디렉토리와 파일 권한 설정

PHP 스크립트 파일의 확장자가 .php로 끝나는지 확인하세요. 또한, 파일에 실행 권한이 있는지 확인해야 합니다. 파일 권한을 변경하려면 터미널에서 다음 명령을 실행하세요:

# chmod 644 /home/user/public_html/g5/example.php

일반적으로 폴더는 755, 파일은 644를 설정하고 data 폴더만 707로 설정합니다.
파일 권한은 터미널 방식 말고 파일질라 같은 FTP 프로그램에서도 가능합니다.
변경된 권한으로 PHP 스크립트를 실행해 보세요.

해결 방법 4: 소유자와 그룹설정 확인

서버에서의 권한은 해당 파일의 소유자와 그룹에 의한 권한이 작동합니다. FTP에서 누구의 계정으로 올리느냐에 따라 소유자와 그룹이 자동 설정 되는데요. 서버에 따라 소유자와 그룹을 아파치에게 줘야 정상 작동하는 경우가 있습니다.

Ubuntu 및 Debian 기반의 서버

# chown -R www-data:www-data /home/magictalk/public_html/g5

Red Hat 계열의 서버

# chown -R apache:apache /home/user/public_html/g5

참고로 CentOS 및 Fedora 계열의 서버도 Red Hat 계열의 서버와 같은 명령어를 사용합니다.

해결 방법 5: 웹 서버 재시작

PHP 설정 또는 웹 서버 설정을 변경한 후에는 웹 서버를 재시작하여 변경 사항을 적용해야 합니다. 아파치 웹 서버의 경우, 다음 명령을 사용하여 재시작할 수 있습니다:

#service apache2 restart

NGINX를 사용하는 경우, 다음 명령을 사용하세요:

#sudo service nginx restart

해결 방법 6: 그누보드 상수값 변경

웹서버를 이전한 경우 기존 서버의 데이터베이스 버전이 다른 경우 작동하지 않을 수 있습니다.
DB와 관련된 기능이 정상작동 하지 않는 경우가 바로 이 경우라고 볼 수 있습니다.
그누보드 설치경로/data/dbconfig.php 파일에서 다음 항목을 수정해 줍니다.

define('G5_MYSQL_SET_MODE', true);

해당 상수값은 DB의 버전에 따른 설정 값으로 유추됩니다.

결론

서버이전으로 인한 그누보드 작동문제는 대부분이 서버PHP가 정상 작동하지 않을 때입니다. 위에서 언급한 항목들을 확인하고 조치해 보세요. 기타 PHP관련 질문들을 아래에 남겨봅니다.

자주 묻는 질문 (FAQ)

Q1. PHP 버전이 올바르게 설치되었는지 확인하는 방법은 무엇인가요?

PHP 버전을 확인하려면 터미널에서 다음 명령을 실행하세요:

#php -v

이 명령은 시스템에 설치된 PHP의 버전 정보를 보여줍니다.

Q2. PHP 확장 모듈을 추가하는 방법은 무엇인가요?

PHP 확장 모듈을 추가하려면 터미널에서 다음 명령을 실행하세요:

#sudo apt-get install php-모듈이름

Q3. PHP 설정 파일인 php.ini 파일의 위치는 어디인가요?

일반적으로 php.ini 파일은 /etc/php/버전번호/apache2/php.ini 또는 /etc/php/버전번호/cli/php.ini 경로에 위치합니다. 버전번호는 시스템에 설치된 PHP의 버전에 따라 다를 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다