본문 바로가기
컴퓨터관련

NGINX이용하여 301 redirect 처리하기

by 기록이답이다 2016. 11. 20.
반응형

SEO를 하기 위해서는 사이트의 대표URL을 설정해주어야 한다.

 

이번글에서는 seo에 필요한 redirect를 그 중에서도 301 redirect를 nginx를 이용하여 설정해보겠다.

 

www가 붙어있지 않은 사이트를 자동으로 www 붙여서 301 redirect 처리하는 방법

 

vi editor를 이용하여 nginx 설정파일중 site에 대해서 선언된 사이트 설정파일을 수정한다.

 

nginx의 기본설정파일은 /etc/nginx/nginx.conf 이다.

nginx.conf 파일중 include 선언된 부분을 awk를 이용하여 살펴보면 아래와 같다.

 

$ awk '/.*include/' nginx.conf

위 명령어는 linux의 awk 명령어를 이용하여 nginx.conf 파일에서 include가 들어간 문자열을 찾는 명령어

 

 

 

 

결과를 살펴보면 /etc/nginx/sites-enabled/ 디렉토리의 파일들을 include 하는것을 알 수 있다.

 

결과적으로 nginx를 이용하여 301 redirect 처리하기 위해 수정해야 할 파일은 /etc/nginx/sites/밑에 있는 파일인것이다.

 

파일을 수정하여 맨 윗줄에 빨간색으로 표시한 부분을 추가한다.

$ vi /etc/nginx/sites-enabled/domainname.com

 

server {

server_name sitename.com;

rewrite ^/(.*)$ $scheme://www.sitename.com/$1 permanent;

}

 

======================================

이 아래부터는 원래 파일에 있던 내용

 

server {

listen 80 default;

 

root ..................

index .....................

 

server_name www.sitename.com *.sitename.com

 

acces_log .................

error_log ..................

 

  

}

 

-------------------------------------------

 

저장 후 service를 재시작한다.

 

$ service nginx restart

 

이제 nginx를 이용하여 301 redirect 처리가 제대로 되었는지 확인하기 위해

www를 붙이지않은 url을 브라우저에 입력하고 엔터키를 입력하면 브라우저의 주소창에 www가 자동으로 붙는것을 확인할 수 있다.

 

이로써 nginx를 이용하여 301 redirect 처리는 완료되었다.

 

 

아래 이미지는 nginx 설정파일로 빨간네모박스가 301 redirect를 처리하는 부분이다.

 

 

반응형