실무로부터/Prj Solena

[설정] Nginx에서 개인도메인으로 wordpress에 라우팅

솔헬레나 2023. 9. 27. 14:53

[목적]

1 - docker compose를 이용하여 wordPress와 DB를 함께 설치 및 설정한다.

2- 개인 도메인으로 wordpress에 접속할 수 있게 설정한다.   

 

👜 필요한 것

- docker가 설치 된 linux 컴퓨터  ( 또는 가상머신 ) + Wordpress가 설치된 컴퓨터

docker 설치 참고 : docker설치하기 

 

 

🥽 개인도메인에 wordpress를 라우팅

* 순서 : 1) 도메인 구매 > 2) DNS 서버 설정 > 3) Nginx설정* > 4) 공유기 설정 > 5) wordpress 설정 

 

1) 도메인 구매

  원하는 도메인 사이트에서 도메인을 구매한다. 

  ( 구매사이트 : 가비아 https://www.gabia.com/  )

 

 

2) DNS서버 설정

( DNS 서비스 : DNS ever을 사용함 )

  1. DNS 서비스에서 구매한 도메인을 추가한다. 

  2. 도메인을 추가 후 '구매한 도메인 사이트(가비아)'의 설정에서 네임서버를 추가한다.
    ( 네임서버는 DNS Sevice에서 도메인 추가 시 제공된다.) 
    ( 도메인 사이트의 네임서버 추가해야 하는 곳 : 로그인 > My가비아 > 이용중인서비스 - 도메인 > 도메인 옆의 [관리] 클릭 ) 
  3. DNS 서비스에서 '호스트 IP 관리'에서 사용중인 공유기IP를 추가한다.

  4. '도메인 별명관리(CNAME)'에서 blog.solena.kr을 추가한다.

3) Nginx 설정 (  nginx설치하기 ) 

   1. docker이 설치된 컴퓨터로 이동한다.

 

   2. SSL 인증서를 설정한다.

     ( nginx설치하기 글의 2번 무료인증서 설치 실행한다. )

$ DOMAIN=blog.solena.kr docker-compose -f docker-compose-certbot.yml up

 

   3. Nginx 설치를 위한 파일을 작성한다.
     ( nginx설치하기 글의 3번 Nginx 설치의 파일을 작성한다. )
       - 필요한 파일 : Dokcerfile / docker-compose.yml / nginx.conf / default.conf 

 

   4.   default.conf 의 설정을 변경한다.

#default.conf에 접근
$ vim ./nginx/conf.d/default.conf
server {
    listen      80;
    listen      [::]:80;
    listen      443 ssl http2;
    listen      [::]:443 ssl http2;
    server_name blog.solena.kr;
    root   /var/www/html;
	
    #로그 파일
    access_log /var/log/nginx/blog.solena.kr_access.log;
    error_log /var/log/nginx/blog.solena.kr_error.log error;

	#ssl인증서 위치 추가
    ssl_certificate /etc/letsencrypt/live/blog.solena.kr/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/blog.solena.kr/privkey.pem;

    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Connection "upgrade";
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection upgrade;
    proxy_set_header Accept-Encoding gzip;
    proxy_http_version 1.1;

    location / {
        proxy_pass http://192.168.0.00:80 #Wordpress가 설치된 컴퓨터의 IP:포트번호;
    }
}
:wq!

   

    5. 실행한다.

$ docker-compose -f docker-compose-nginx.yml up

 

 

4) 공유기 설정

   1. 공유기 관리 사이트로 이동
    ( 단, 공유기가 kt, lg인경우 불가 ..  / 별도로 구매한 공유기의 경우 설명서 또는 공유기에 관리사이트 정보가 있음 )

 

   2.  IP & MAC Binding 으로 이동하여

           Nginx가 설치된 컴퓨터의 IP와 wordpress가 설치된 컴퓨터의 IP를 고정으로 처리한다.

 

   3. port Forwarding 으로 이동 후 80, 443 포트 추가
    Nginx가 설치된 컴퓨터의 ip와 포트를 추가하고 tcp, udp 모두 허용한다. 

    

5) Wordpress 설정

     1. Wordpress 의 관리자 페이지로 이동 및 로그인

        http://Wordpress가 설치된 컴퓨터의IP/wp-admin 

 

     2. 설정 클릭

 

     3. 워드프레스 주소, 사이트주소를 blog.solena.kr로 설정한다.