오라클 클라우드 프리티어로 워드프레스 운영하기 11) URL 도메인 주소 연결

다른 웹 서비스와 같이 프리티어 제도를 운영중인 오라클 클라우드.

아마존 AWS 라이트세일과 고민하다가 평생 무료에 서버 성능도 가장 좋아서

직접 서버를 구축해 워드프레스 홈페이지를 만들어 운영해 보고자 한다.


1) 오라클 클라우드 프리티어 가입 및 VCN 설정
2) 고정 IP 설정
3) SSH 키 만들기 및 인스턴스 생성
4) 인스턴스에 고정 IP 연결
5) LEMP 설치 – 터미널 접속 및 리눅스 업데이트
6) LEMP 설치 – Nginx 설치 및 iptables 고정
7) LEMP 설치 – PHP
8) LEMP 설치 – MariaDB
9) phpMyAdmin 설치
10) FileZilla 파일질라 FTP 연결
11) URL 도메인 주소 연결
12) SSL 인증서 발급
13) 워드프레스 DB 생성
14) 워드프레스 설치


오라클 클라우드 프리티어로 워드프레스 운영하기
11) URL 도메인 주소 연결


오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



고유의 웹 URL을 사용하기 위해 우선 도메인 주소를 구입해야 한다.
가장 대표적인 .com 을 기준으로 1년 사용료가 만 원 초반 대에 구성되어 있으며
여러 업체를 비교 후 원하는 곳에서 구매하면 된다.



오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



도메인 구입을 마쳤다면 설정을 해줘야 하는데,
네임서버의 경우 도메인 제공처 기본 설정으로 두면 된다.



오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



중요한 부분은 DNS 레코드다.

두 가지 설정을 추가해줘야 하는데
첫 번째는 유형 “A”, 이름 “@”, 값 “인스턴스 고정 IP ex) 000.000.000.000”, TTL “300”으로,
두 번째는 유형 “CNAME”, 이름 “www”, 값 “구매한 도메인 주소 ex) abc.com”, TTL “300”으로
설정한다.



오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



이제 도메인 세팅은 마쳤으니
다시 터미널로 서버와 연결해 기존 설정을 수정해야 한다.
아래 명령어를 입력해 나노 에디터를 열어준다.

sudo nano /etc/nginx/sites-available/default




오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



아래와 같이 내용을 수정한다.

1. server_name_; 을 server_name 주소.com; 으로 수정.

2. 	location ~ /\.ht {
	    deny all;
	}
}
아래
server {
    listen 80;
    listen [::]:80; 
    server_name www.주소.com;

    location / { 
        return 301 http://주소.com$request_uri;
    }
}
내용 추가 후 주소 수정.




오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



이런 식으로 작업하면 된다.



오라클 클라우드 워드프레스 도메인 주소 URL 연결 사진.



수정이 끝나면 “ctrl + x”, “y”, “엔터” 순으로 파일을 저장한다.

마지막으로 아래 코드를 실행해 정상 동작 여부를 확인한 뒤
서버를 리부팅 해 도메인 연결 설정을 마친다.

sudo nginx -t
sudo service nginx restart

다음 포스팅에서는 SSL 인증서 발급에 대해 다룰 예정이다.

This Post Has 8 Comments

  1. tavatake

    ubuntu@ooooooo:~$ sudo nginx -t
    nginx: [emerg] “server” directive is not allowed here in /etc/nginx/sites-enabled/default:67
    nginx: configuration file /etc/nginx/nginx.conf test failed

    안녕하세요
    sudo nginx -t 명령어를 실행하면 저런 메세지가 나옵니다.
    67번 라인은
    server {
    listen 80;
    listen [::]:80;
    server_name http://www.주소.com;

    location / {
    return 301 http://주소.com$request_uri;

    입니다. 여기서 막혀서 ssl인증서도 못깔고 있네요. 원인이 뭘까요?

    1. HiworL

      안녕하세요! 67번 라인에서 오류가 발생한 것 같은데,
      적어주신 스크립트 중 “주소” 부분을 설정하시는 도메인 주소로 변경 후 저장하셨나요?
      예를 들어 aaa.com 이라는 도메인을 구입하셨다면 “주소”를 “aaa”로 대치해주시면 됩니다.
      .net 이나 co.kr 도메인의 경우 .com을 변경해주시면 되구요 🙂

  2. sea

    안녕하세요 정말 친절한 블로그 감사합니다 ㅠㅠ 보면서 잘따라하는중인데
    68번 라인에서 오류가뜹니다
    nginx: [emerg] “server” directive is not allowed here in /etc/nginx/sites-enabled/default:68
    nginx: configuration file /etc/nginx/nginx.conf test failed
    이런오류인데
    server_name seapress.store;

    location / {
    # First attempt to serve request as file, then
    # as directory, then fall back to displaying a 404.
    #try_files $uri $uri/ =404;
    try_files $uri $uri/ /index.php?$args;
    }

    # pass PHP scripts to FastCGI server
    location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_read_timeout 300;
    }

    location ~ /\.ht {
    deny all;
    }

    server {
    listen 80;
    listen [::]:80;
    server_name http://www.seapress.store;

    location / {
    return 301 http://seapress.store$request_uri;
    }
    }
    잘못한게 있을까요 ?

  3. sea

    안녕하세요 블로그 보며 열심히 따라하는 중입니다 저도 엔진엑스 저장시 68번 오류라고 뜨는데
    server_name seapress.store;

    location / {
    # First attempt to serve request as file, then
    # as directory, then fall back to displaying a 404.
    #try_files $uri $uri/ =404;
    try_files $uri $uri/ /index.php?$args;
    }

    # pass PHP scripts to FastCGI server
    location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_read_timeout 300;
    }

    location ~ /\.ht {
    deny all;
    }

    server {
    listen 80;
    listen [::]:80;
    server_name http://www.seapress.store;

    location / {
    return 301 http://seapress.store$request_uri;
    }
    }

    잘못 입력한게 있을까요 ?

  4. sea

    하나하나 다시본 결과 괄호를 잘못 닫았네요 ^^ 해결했습니다

    1. HiworL

      해결되셨다니 다행입니다!
      방문해주셔서 감사해요 🙂

  5. eunice3

    안녕하세요.. 저도 여기서 막혔는데
    ubuntu@my-home:~$ sudo nginx -t
    nginx: [emerg] “server” directive is not allowed here in /etc/nginx/sites-enabled/default:67
    nginx: configuration file /etc/nginx/nginx.conf test failed

    가비아에서 ename 추가시에는 주소 끝에 점을 붙이라고 해서 / 300이없음
    a / @ / ip주소 / 600 / dns설정
    ename / www / eunice.0121. / 600 /dns 설정

    오라클 클라우드 > dns관리 > 영역
    a / 600 / ip주소

    이렇게 수정하고
    코딩이 틀린거 같진 않거든요.. 한번 좀 봐주세요…
    root /var/www/html;

    # Add index.php to the list if you are using PHP
    index index.php index.html index.htm index.nginx-debian.html;

    server_name eunice0121.com;

    location / {
    # First attempt to serve request as file, then
    # as directory, then fall back to displaying a 404.
    # try_files $uri $uri/ =404;
    try_files $uri $uri/ /index.php?$args;
    }
    # pass PHP scripts to FastCGI server
    location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_read_timeout 600; -> 가비아에 300이 없어서 600으로 해도 똑같이 오류가 나옵니다.
    }

    location ~ /\.ht {
    deny all;
    }
    server {
    listen 80;
    listen [::]:80;
    server_name http://www.eunice0121.com;

    location / {
    return 301 http://eunice0121.com$request_uri;
    }
    }
    #
    #location ~ \.php$ {
    # include snippets/fastcgi-php.conf;

  6. eunice4

    앗 저도 가로가 문제 였습니다.

    죄송해요!! -_-;;

답글 남기기