Luv{Flag}
article thumbnail
반응형

 

 

기존 PHP + Apache 를 사용해 웹서버를 사용하던 중 node 서버를 사용할 일이 생기게 되었다.

express 의 포트 번호를 아파치와 분리하면 될 일 이지만, 여간 귀찮은게 아니므로 서브도메인과 프록시 설정을 통해 

xxx.com 은 기존 PHP를 사용한 웹서버로, node.xxx.com 은 express 를 사용한 웹서버로 이동하게 하는 것이 목적이다.

 

 

DNS CNAME 서브도메인 설정이 되어있다는 가정하에 진행하겠다.

 

 


 

Reverse Proxy

 

apache 경로 /etc/apache2/sites-available/ 아래에 node.xxx.com 에 대한 conf 파일을 작성해준다.

http의 기본 포트는 80, express 의 포트번호는 9000으로 설정하였기 때문에, 다음과 같이 설정해준다.

#node.xxx.com.conf
<VirtualHost *:80>
        ServerName node.xxx.site
        ProxyPreserveHost on
        ProxyPass / http://localhost:9000/
</VirtualHost>

 

node.xxx.com:80 포트로 들어오는 모든 요청에 대해, 9000 포트로 접속된다.

이 외에도 여러 설정을 추가할 수 있으니 참고하자.

 

 

 

https://httpd.apache.org/docs/2.4/sections.html

 

섹션 설정 - Apache HTTP Server Version 2.4

섹션 설정 이 문서는 최신판 번역이 아닙니다. 최근에 변경된 내용은 영어 문서를 참고하세요. 설정파일에 있는 지시어는 서버 전체에 적용되거나, 특정 디렉토리, 파일, 호스트, URL에만 적용될

httpd.apache.org

 

 

 

 

설정 파일 작성이 완료되었다면, 모듈을 로드해주고 아파치를 재시작 혹은 리로드 해주자

a2enmod proxy
a2enmod proxy_http
a2ensite node.xxx.com (도메인)
systemctl reload apache2.service

 

 

 

 

완료

 

 

 

 

 

- 참고 문서

https://httpd.apache.org/docs/2.4/ko/vhosts/examples.html

반응형

검색 태그

loading