Synology NAS, WordPress NGINX로 구동 설정

아무것도 모른 상태에서 블로그 살리겠다고 검색과 삽질을 통해 블로그를 구축은 어찌어찌 성공했는데…

php 5.2, php 7.0이 같이 돌고 있고, apache 2.2, apache 2.4 가 죄다 돌고 있어서 synology 자체에서 쓴는 nginx까지 세개가 돈다는 게 뭔가 좀 이상하다는 생각이 들더군요.

php 5.2는 phpadmin 종속이라 어쩔 수 없다고 치고, apache 2.2보다 2.4가 낫대서 깔다보니 쓸데없이 몇개씩 돌고 있어서 또 검색의 힘과 삽질의 근성으로 도전…

가상호스트의 http 백엔드 서버만 바꿔주면 되는 줄 알았더니 메인페이지만 나오고 서브페이지만 들어가면 404에러를 뱉어내더군요…

서버를 몇번씩 수정하고 재기동하고 난리를 쳐서 결국 성공하고 그 이력을 기록해 둡니다. (또 까먹을까봐)

더 헤매게 된 이유가 모델과 dsm버전이 다르면 환경도 다른 경우가 있나보더군요. 검색한 정보를 토대로 암만 찾아도 내껀 그런게 안나오는게 있고 하더라구요.

적용한 환경입니다.

  • 모델 : DS218+
  • DSM 버전:DSM 6.2.1-23824 Update 4
  • 사전에 가상호스트 등은 전부 설정해서 워드프레스가 멀쩡히 돌아가는 것 확인한 상태

/etc/nginx/app.d 에서 server.webstation-vhost.conf 읽기

가상서버를 여러개 돌린다면 항목중에 server_name 내도메인; 으로 되어있는 server { } 항목을 찾아서 include 로 시작해서 .conf로 끝나는 부분을 찾습니다.

include /usr/syno/etc/security-profile/tls-profile/config/vhost_b2944df6-4fe4-4afd-9211-f654ed87ce44.conf*;

…당연히 고유id니까 다 다른 값으로 채워졌겠죠.

다음으로 위에서 찾은 vhost_ 와 .conf를 제외한 고유아이디를 /usr/local/etc/nginx/conf.d 디렉토리에 user.conf.wordpress-permalink 파일을 생성합니다. (권한 문제로 su vim user.conf.wordpress-permalink 으로 실행해야 할 겁니다.)

location /{
try_files $uri $uri/ /index.php?$args;
}

위의 텍스트를 입력하면 됩니다.

이제 설정을 적용했으니 nginx를 재기동 해야합니다 :

sudo synoservice --restart nginx

apache 2.4를 삭제해도 잘 도는 걸 보면 멀쩡히 잘 되고 있음을 알 수 있습니다.

이제 php 5.6하고 apache 2.2를 지울 수 있는 방법을 찾아봐야지…

댓글 남기기