Synology NAS에 air comix server 올리기

홈서버로 사용 중이던 베어본께서 사망하는 사건이 발생했는데, 홈서버가 사망하고 나니 air-video/air-comix 등등을 이용할 수가 없어서 답답한 김에 air comix 서버를 NAS에 올려보기로 했다.

다행히 window/mac 용 버젼의 air comix server가 아닌 web version air comix 서버가 나와있어서 작업이 크지는 않을 것 같았는데…

내 NAS의 경우 기본 설치스크립트와 설정 파일 경로 등에 차이가 있었다. 게다가 기본 설치 방식이 크게 맘에 들지 않아서 manual install을 하기로 결정.

참고로 내 Synology NAS의 OS버젼은 DSM 6.x이고, 목표는 기본 패키지로 설치되는 파일 수정 없이 AirComix 서버가 작동하도록 만드는 것.

업데이트에 손이 좀 덜가게 하기 위해 tee 계정의 웹 디렉토리인 /volume1/homes/tee/www에 Aircomix란 디렉토리를 만들고 php 파일들을 copy 했다.

그리고 아래와 같은 aircomix 용 config를 /usr/local/etc/httpd/sites-enabled/httpd-aircomix.conf로 저장해서 webstation이 AirComix server를 위한 설정을 로드할 수 있도록 만들었다. (참고로 31251은 구버전 aircomix용 기본 포트이고, 31257은 새버전인 aircomix용 기본 포트)

이제는 rewrite rule을 처리하기 위해 /volume1/homes/tee/www/Aircomix에 .htaccess 파일을 만들고, 아래와 같이 rule을 정의할 차례!

내 NAS에서는 만화 파일들이 comic/tee, comic/uza라는 공유 폴더에 저장되어 있는데, 얘네들을 httpd에서 접근할 수 있도록 ‘공유 폴더 > 권한 > 로컬 그룹’에서 http에 읽거 전용 플래그를 설정해줬고, 얘네들을 php에서 접근할 수 있도록 /etc/php/conf.d/user-settings.ini의 open_basedir에 /volume1/comic/tee, /volume1/comic/uza을 추가해줬다.

DSM 5.x부터는 mod_auth 등을 사용할 수 없게 되었기 때문에 인증은 php에서 처리해야해서, 어짜피 코드 수정이 필요한 김에 root 디렉토리로 여러개 지정할 수 있도록 수정했고, 설정할 건덕지가 있는 부분은 conf.php로 뽑아버렸다.

link: air-comix server mod 다운받기

customizing은 아래의 conf.php 파일을 통하면 된다.

오늘의 삽질 끝!

덧: DSM에서 user 용 httpd 재시작은 아래 커맨드로 (fastcgi라 파일을 수정해도 바로바로 반영안되길래 OTL)

/usr/syno/sbin/synoservicecfg --restart pkgctl-WebStation