처음 설정해줄 파일은 ‘php.ini’ 파일이다. 이 파일은 보통 /etc/php.ini에 존재한다.
[ php.ini ] – ‘vim /etc/php.ini’
date.timezone = Asia/Seoul
cgi.fix_pathinfo = 0
위 파일을 처음 열게되면 매우 길고 색도 까무잡잡해서 찾기 힘들 수 있다.
vim Editer를 잘 사용하시는 분이라면 문제가 없겠지만, 초심자를 위해 알려주자면 ‘/’을 누른 후 timezone을 친 후 엔터를 치게되면 검색이 되니 잘 활용하면 좋다.
검색 후 그 라인에 커서를 가져가 ‘i’를 눌러 insert모드로 전환 후 ‘Asia/Seoul’을 쳐주면 된다. 그리고 앞에 ; 를 삭제해주어야 활성화가 된다.
timezone을 설정해주는 이유는 php에서 사용하는 함수때문인데, 기본적으로 date함수를 사용하기 위해서는 이 부분이 설정이 되어 있어야 한다.
앵간한 사이트들을 생각해보면 모두 시간 개념이 들어간 부분이 있는걸보면 꼭 설정해줘야 할거 같은 느낌이 들 것이다.
그리고 cgi.fix_pathinfo 부분은 Nginx를 사용할 때 고려해야하는 보안설정이라고 한다.
아마 디폴트 값이 1일텐데, 그럴 경우 비정상적인 접근이 가능하다고 한다.
그래서 0으로 변경을 해주는 것이다.
수정을 다 했다면 esc를 눌러 insert모드에서 나온 후 ‘:wq’를 눌러 저장 후 에디터에서 나오도록 하자. 그리고 꼭 cat 명령어로 제대로 수정이 되었는지 검토한다.
[ php-fpm ] – vim /etc/php-fpm.d/www.conf
user = nginx
group = nginx
…
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
…
listen = /var/run/php-fpm/php-fpm.sock
이번에도 꽤 긴 내용의 파일이니 검색을 잘 이용해서 변경할 수 있도록 하자.
기본적으로 워드프레스가 php파일을 읽고 쓸 경우 Nginx를 이용하게 되는데 Nginx에 설정되어 있는 user와 group이 nginx이다.
그래서 그걸로 변경을 해주는 작업이다.
처음 두 줄은 apache로 되어 있을 것인데, 그걸 변경해주면 될 것이고, 중간 세줄은 ;를 지운 후 위와 같이 변경, 마지막 줄은 ‘listen = 127.0.0.1:900’으로 되어있는 것을 위와 같이 변경해주면 된다.
저렇게 변경해주면 php-fpm 실행시에 해당 경로에 sock파일이 생성된다.
[ nginx.conf ] – etc/nginx/nginx.conf
work_processes = auto;
앞 부분에 써있는 work_processes를 1에서 auto로 변경해주는 작업이다.
프로세서 수를 자동으로 측정해주게끔 설정해준 것이다.
그 이후 php 환경 변수 설정 작업을 해준다.
mkdir -p /etc/nginx/snippets
우선 디렉토리를 만들어준다.
[ fastcgi-php.conf ] – vim /etc/nginx/snippets/fastcgi-php.conf
fastcgi_split_path_info ^(.+.php)(/.+)$;
try_files $fastcgi_script_name =404;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
위 내용을 복사하여 붙여 넣어주고 ‘:wq’로 빠져나와준다.
그럼 기본적인 설정 작업이 마무리가 되었다.
이 설정들을 적용시켜주기 위해서 php와 nginx의 재시작을 해준다.
# systemctl restart nginx
# systemctl restart php-fpm