* 발급받은 인증서는 /etc/letsencrypt/live/[인증서이름] 에 저장된다. cert.pem - 인증서 파일 chain.pem - 인증서 발급자 파일 fullchain.pem - cert.pem 과 chain.pen 을 하나로 합쳐놓은 파일 privkey.pem - 인증암호를 해독하는 개인키
Apache2 서버에서는 cert.pem, chain.pem, privkey.pem 을, Nginx 서버에서는 fullchain.pem, privkey.pem 을 사용한다.
* Nginx의 서버설정 변경 [code] server { listen 80; listen [::]:80;
server_name www.test.com;
# 모든 http 요청을 https로 301 리다이렉트한다 return 301 https://$server_name$request_uri;
root /var/www/html; index index.html index.htm index.php;
location / { try_files $uri $uri/ =404; }
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; } }
server { listen 443; listen [::]:443;
server_name www.test.com; root /var/www/html; index index.html index.htm index.php;
가상호스트(VirtualHost) 기능을 이용하면 하나의 IP로 복수개의 웹서버를 운용할 수 있다.
Nginx에서 가상호스트 이용하기 위해서는 /etc/nginx/nginx.conf 하단의 # Virtual Host Configs 블럭에 가상호스트 설정을 추가하면 된다. 하지만 이러면 가독성도 떨어지고 설정파일이 지저분해진다는 문제가 있으므로 이렇게 하진 않는다.
# Virtual Host Configs 블럭에는 include /etc/nginx/sites-enabled/*; 라는 내용이 있는데 이것이 가상호스트 설정파일을 외부에 따로 작성하여 nginx.conf에서 불러오기 위한 설정이다.
일반적으로는 가상호스트용 설정파일은 /etc/nginx/sites-available/에 작성한 뒤 /etc/nginx/sites-enabled/에 심볼릭링크를 작성하여 불러오는 방식을 사용한다.
*가상호스트 설정 test.com 이라는 도메인을 구입해 사용하고 있다고 가정한다. 도메인관리 사이트에서 작성하고 싶은 가상호스트의 도메인인 abc.test.com을 서버의 IP에 A레코드로 연결시킨다. 서버가 요청을 받았을 때 응답해줄 디렉토리는 /var/www/html/test/라 한다.
* 다음과 같이 파일을 작성한다. $sudo nano /etc/nginx/sites-available/abc.test.com
[code] server { listen 80; listen [::]:80;
server_name abc.test.com;
root /var/www/html/test; index index.htm index.html index.php;