2021. 1. 25. 17:20ㆍServer
서브도메인이란 ?
도메인 이름 시스템(domain name system) 계층에서 하위 도메인은 다른 도메인의 일부인 도메인이다. 예를 들어 도메인에서 example.com 웹 사이트의 일부로 온라인 상점을 제공 한 경우 하위 도메인 shop.example.com을 사용할 수 있다.
가비아 도메인 CNAME레코드를 추가하여 서브 도메인 만들기
도메인에 CNAME레코드 혹은 A타입 레코드를 설정하면 서브 도메인을 만들 수 있다.
CNAME레코드는 도메인 이름에 다른 이름을 부여하는 dns레코드 유형이다.
예를 들면 domain.com이라는 도메인에 sub.domain.com이라는 다른 이름을 설정하여 서브도메인을 생성할 수 있다.
cname레코드는 도메인 dns관리에서 추가할 수 있다. 가비아 도메인에 cname레코드를 추가하여 서브도메인 만드는 방법 설명
dns 관리툴
호스트 -서브도메인이름입력
값 - 연결된 주소
도메인 CNAME레코드
1. dev, prod 폴더 만들기
- var/www/html에 dev 폴더, prod 폴더를 만든다.
- 루트유저외에 일반유저도 폴더를 생성할 수 있도록 하기위한 작업을 한다(cd /var/www/html/prod 에서 sudo chmod -R 777 . )
- sudo vi prod.php 파일에 <?php phpinfo(); ?> 내용 저장 (phpinfo 아닌 기본 html파일을 만들어도 무방하다)
- dev 폴더에 3,4번 반복, 명칭은 dev로
2. cname 추가
가비아에서 DNS설정에서 마지막 두줄 추가한다.
3. nginx 설정 파일 수정, 재부팅
1. vi /etc/nginx/sites-available/default 들어가기
2. 새로운 서브도메인 서버 블럭 추가
server {
root /var/www/html/prod; # 원래 root 경로랑 같이
index index.php index.html index.htm index.nginx-debian.html; # 위의 서버블록과 동일하게
server_name prod.lilyspace.shop; # 수정
location / {
try_files $uri $uri/ =404;
}
}
server {
root /var/www/html/dev; # 원래 root 경로랑 같이
index index.php index.html index.htm index.nginx-debian.html; # 위의 서버블록과 동일하게
server_name dev.lilyspace.shop; # 수정
location / {
try_files $uri $uri/ =404;
}
}
3. service nginx restart
4. ssl 추가
certbot --nginx -d lilyspace.shop -d prod.lilyspace.shop
certbot --nginx -d lilyspace.shop -d dev.lilyspace.shop
아래처럼 응답하기
root@ip-172-31-9-60:/var/www/html# certbot --nginx -d lilyspace.shop -d prod.lilyspace.shop
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for prod.lilyspace.shop
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/default
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/default
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Traffic on port 80 already redirecting to ssl in /etc/nginx/sites-enabled/default
Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/default
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://lilyspace.shop and
https://prod.lilyspace.shop
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=lilyspace.shop
https://www.ssllabs.com/ssltest/analyze.html?d=prod.lilyspace.shop
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/lilyspace.shop-0001/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/lilyspace.shop-0001/privkey.pem
Your cert will expire on 2021-04-25. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
root@ip-172-31-9-60:/var/www/html# certbot --nginx -d lilyspace.shop -d dev.lilyspace.shop
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for dev.lilyspace.shop
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/default
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/default
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Traffic on port 80 already redirecting to ssl in /etc/nginx/sites-enabled/default
Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/default
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://lilyspace.shop and
https://dev.lilyspace.shop
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=lilyspace.shop
https://www.ssllabs.com/ssltest/analyze.html?d=dev.lilyspace.shop
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/lilyspace.shop-0002/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/lilyspace.shop-0002/privkey.pem
Your cert will expire on 2021-04-25. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
5. nginx 설정파일 수정하기
1. vi /etc/nginx/sites-available/default 들어가기
2. 서브도메인 서버 블록(dev,prod 둘다)에 아래 내용 추가
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
3. service nginx restart
6. 서브도메인 확인
<참고자료>
1. 가비아 도메인설정
2. nginx 서브도메인추가
'Server' 카테고리의 다른 글
AWS 서버 구축 - RDS 적용 (0) | 2021.01.25 |
---|---|
AWS 서버 구축 - Redirection 적용(IP to Domain) (0) | 2021.01.25 |
AWS 서버 구축 - https 적용 (0) | 2021.01.25 |
AWS 서버 구축 - 도메인 적용 (0) | 2021.01.25 |
AWS 서버 구축 - phpmyadmin 설치 (0) | 2021.01.25 |