nginx 삭제
$ sudo apt-get purge nginx nginx-common nginx-full
nginx 설치
$ sudo apt-get install nginx
$ cd /etc/nginx
$ ls -al
여기서 중요한 것은
nginx.conf : 설정 파일
sites-available : 폴더 설정 파일 저장소
sites-enabled : 설정파일 실행.
$ cd sites-available
$ sudo vi default
server {
listen 80;
server_name seong-jin.net;
location / {
proxy_set_header HOST $host;
proxy_pass http://127.0.0.1:3003;
proxy_redirect off;
}
}
nginx test
$. sudo nginx -t
$ ps -ef | grep nginx
nginx 실행
$ sudo systemctl start nginx
nginx 중지
$ sudo systemctl stop nginx
nginx 상태
$ sudo systemctl status nginx
https 적용하기
cerbot 설치
sudo apt-get install python3-certbot-nginx
명령어로 인증서 발급 하기
sudo certbot --nginx
- 인증서 기간 만료 전에 메일로 알려줌 : 이메일 적기
- service 동의하냐는 질문 : A
- 이메일로 뉴스레터 받을건지 질문 : N
- 어떤 도메인에 인증서 발급할 건지 번호 선택 : 도메인 선택
- https 리다이렉트 되도록 할건지 선택 : 1번은 별도의 설정을 하고 싶을때. 2번은 cerbot에서 nginx 설정을 해줌
마지막으로 인증서가 만료되기 전에 알아서 갱신되도록 Crontab을 설정할 것이다. 먼저 Crontab 설정 파일을 연다. 설정 파일을 열 때 편한 편집기를 고르라는 메시지가 뜨는데, 편한 편집기로 고르면 된다.
sudo crontab -e
최하단에 다음 설정을 추가한다. 이렇게 설정하면 매월 1일 오후 6시마다 인증서를 갱신하고 NGINX를 재시작하는 명령어가 실행된다.
0 18 1 * * certbot renew --renew-hook="sudo systemctl restart nginx"