우분투에 워드프레스 설치하기 (Ubuntu + nginx + MariaDB + WordPress) – Nginx 라우팅 설정, SSL설치
- 연재작/워드프레스
- 📚 2.0min to read

이전 글에 이어 이번 글에선 Nginx의 라우팅을 설정하고, 도메인을 연결하고, SSL 인증서를 발급해볼 것이다. 이번 글의 내용을 응용만 한다면 자신이 원하는 주소로 오는 이용자에게 자신이 원하는 페이지를 보여줄 수도 있을 것이고, 더 간다면 서버 한 개에 워드프레스 2개, 혹은 무한개를 돌릴 수도 있을 것이다.
엔진엑스 라우팅, 도메인 설정하기
. kr도메인 같은 경우 호스팅 케이알(호 스팅어 아님)이 저렴하고, 다른 도메인들은 Namecheap이 상대적으로 저렴하다.
URL라우팅?
도메인이 마련되고 DNS에서 도메인을 자신의 서버로 연결시켰다면 이제 웹서버에서 사이트마다 보여줄 페이지를 나누어줘야 한다. 라우팅을 사용하지 않을 경우, 2개의 사이트를 만들려면 서버가 2개가 필요하지만 라우팅을 이용할 경우 서버가 1개만 있으면 된다. 예를 몇 개 들어보자면 아래와 같다.
- yoru.pe.kr => /var/www/wordpress_1 로 연결(워드프레스가 설치되어있는 폴더)
- b2.yoru.pe.kr => /var/www/wordpress_2 로 연결(2번째 워드프레스가 설치되어있는 폴더)
- static.yoru.pe.kr => /var/www/static 으로 연결(정적 파일들이 들어있는 폴더)
- http를 https로 리다이렉트
- 특정 중요 파일에 대해선 응답 거부
/etc/nginx/sites-available/default파일을 수정하여 라우팅 설정을 해야 한다. 저번 글에서 PHP연결까지 마쳤으니 아래 라인을 root /var/www/html 설정문 아래에 써야 한다.
server_name 구매한 도메인;
저번 글부터 지금까지 잘 따라왔다면 설정 내용은 다음과 같을 것이다.
server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; server_name 구매한 도메인; index index.php index.html index.htm index.nginx-debian.html; location / { try_files $uri $uri/ =404; if (!-e $request_filename) { rewrite ^.*$ /index.php last; } } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_read_timeout 300; } location ~ /\.ht { deny all; } }
위 내용을 엔직엑스에 적용하려면 엔진엑스를 재시작해야 한다. 재시작 전에 설정 파일이 이상한지 체크한다.
sudo nginx -t

이상이 없다 하면 엔진엑스를 재시작한다.
sudo service nginx restart
이제 콘솔에서의 작업은 SSL설치 빼곤 끝난 거나 다름없다. 이제 도메인을 이용하여 자신의 사이트에 접속하고, 설정 => 일반으로 이동한다. 아래 값을 잘못 바꾸면 자신의 Wordpress를 초기화해야 하거나 귀찮아지니 연두색으로 테두리 친 곳 안의 값만 잘 바꿔야 한다. URL을 입력할 때는 자신의 도메인을 입력하고, 아직 SSL 인증서를 설치하지 않았으니 https대신 http를 입력해야 한다.

이제 엔진엑스 설정은 모두 끝났다.
SSL 설치하기
보자마자 어지러워지는 이상한 문법의 설정 파일, 이젠 볼 필요 없다. 이 글에서는 certbot이라는 멋진 소프트웨어를 사용해서 5초 만에 SSL설치를 끝내볼것이다. 타자만 빠르다면 5초만에 설치할 수 있다. 먼저, 아래 커맨드를한 줄 한줄 실행하여 certbot을 설치하기 위해 준비해주어야 한다.
sudo apt-get update sudo apt-get install software-properties-common sudo add-apt-repository universe sudo add-apt-repository ppa:certbot/certbot sudo apt-get update sudo apt-get install certbot python3-certbot-nginx
지금부터는 아래의 커맨드를 입력하여 쉽게 SSL 인증서를 설치하실 수 있다. 초기 설정 시 이메일, 뉴스레터 수신 여부, 약관 동의 여부를 물어본다. 초기 설정이 끝났다면 자신이 해당하는 도메인을 선택하시면 된다. 도메인을 선택하면, 5초 안에 인증서 발급 및 설정이 끝나게 된다. 설치하다가 Redirect여부를 물어볼 수 있는데, Redirect 하는 것을 추천한다.
sudo certbot --nginx

사이트에 접속해 보았을 때 안전하지 않음 대신 자물쇠 모양이 표시된다면 끝이다. 귀찮음을 극복하고 워드프레스를 혼자 힘으로 우분투 VPS에 설치한 것이다.
떠나가기 전에, 이 연재작을 하나하나 다시 짚어 보는 것도 나쁘지는 않을 거 같다.
댓글
이 글 공유하기
다른 글
-
우분투에 워드프레스 설치하기 (Ubuntu + nginx + MariaDB + WordPress) - Nginx, MariaDB, PHP, 워드프레스 설치
우분투에 워드프레스 설치하기 (Ubuntu + nginx + MariaDB + WordPress) - Nginx, MariaDB, PHP, 워드프레스 설치
2021.12.18이전 글에서 인스턴스를 생성하고 서버 설정을 마쳤다면, 이번 글에서는 LEMP스택을 설치할 예정이다. 자신의 서버에 접속한 다음 아래 글을 순서대로 따라하면 된다. 워드프레스 설치하기 엔진엑스 설치하기 apt를 통해 설치하려면 다음 커맨드를 입력해준다. sudo apt-get install nginx 설치중 오류가 난다면 apt리스트를 업데이트 해야한다. 오류가 나지 않고 엔진엑스가 돌아가고 있다면 서버의 아이피 주소로 접속해본다. 아래처럼 Welcome to Nginx 가 나오면 설치에 성공하고 방화벽을 설치할 필요가 없는 것이다. 만약 아래와 같이 연결할 수 없음이 뜬다면, 방화벽을 설정해야한다. 방화벽 설정은 간단하게 아래 커맨드를 입력하면 된다. sudo ufw allow 80 PHP 설치하기 워… -
우분투에 워드프레스 설치하기 (Ubuntu + nginx + MariaDB + WordPress) - 서버 설정
우분투에 워드프레스 설치하기 (Ubuntu + nginx + MariaDB + WordPress) - 서버 설정
2021.12.06
댓글을 사용할 수 없습니다.