차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
tech:url_redirect [2016/07/12 09:26] – 바깥 편집 127.0.0.1tech:url_redirect [2023/07/28 19:21] (현재) – [nginx] V_L
줄 2: 줄 2:
 ====== Url Redirect 301 vs 302 ====== ====== Url Redirect 301 vs 302 ======
  
-  * 301 redirect는 영구적으로 옮겼을때 +사이트를 새로운 도메인으로 옮겼다던가 페이지의 주소가 바뀌었을때 사용자들을 자동으로 바뀐 주소로 옮겨가게 만드는데는 두가지 방법이 있다. 
-  * 302 redirect는 일시적으로 옮겼을때 사용+ 
 +> **301** redirect는 **영구적**으로 옮겼을 때 
 +> **302** redirect는 **일시적**으로 옮겼을 때 사용한다. 
  
-**검색엔진 최적화에는 301 redirect 추천** 
  
-사이트를 새로운 도메인으로 옮겼다던가 페이지의 주소가 바뀌었을때 사용자들을 자동으로 바뀐 주소로 옮겨가게 만드는데는 두가지 방법이 있다. 
 301 permanent redirect와 302 temporary redirect 이다. 301 permanent redirect와 302 temporary redirect 이다.
 301과 302는 사용자가 브라우저를 통해 웹서버에 요청했을때 돌려받는 웹서버의 상태코드이다. 301과 302는 사용자가 브라우저를 통해 웹서버에 요청했을때 돌려받는 웹서버의 상태코드이다.
 301은 요청한 정보가 새로운 주소로 영구적으로 옮겨갔다는것을 말해주며 302는 일시적으로 옮겨갔다는것을 말해준다. 301은 요청한 정보가 새로운 주소로 영구적으로 옮겨갔다는것을 말해주며 302는 일시적으로 옮겨갔다는것을 말해준다.
-표면상으로는 둘다 자동으로 사용자를 옮겨가게 만드니 사람의 육안으로는 구별할수 없으나 검색엔진 크롤러는 그 차이를 알수 있고, 이 두가지가 검색엔진 최적화에 미치는 영향은 꽤 크다.+표면상으로는 둘다 자동으로 사용자를 옮겨가게 만드니 사람의 육안으로는 구별할수 없으나 검색엔진은 그 차이를 알수 있고, 이 두가지가 검색엔진 최적화에 미치는 영향은 꽤 크다.
  
 =====301 permanent redirect===== =====301 permanent redirect=====
-이것은 말그대로 요청한 정보(사이트나 페이지)가 영구적으로 옮겼다는것을 말해준다.  크롤러가 aaa.com에 접속했을때 aaa.com에서 인덱스한 내용의 주소가 bbb.com으로 바뀌었다는것을 감지하고 인덱스된 aaa.com의 주소를 자동으로 bbb.com으로 변경시켜 준다.+이것은 말그대로 요청한 정보(사이트나 페이지)가 영구적으로 옮겼다는 것을 말해준다.  크롤러가 aaa.com에 접속했을때 aaa.com에서 인덱스한 내용의 주소가 bbb.com으로 바뀌었다는것을 감지하고 인덱스된 aaa.com의 주소를 자동으로 bbb.com으로 변경시켜 준다.
  
 +**검색엔진 최적화에는 301 redirect 추천**
 =====302 temporary redirect===== =====302 temporary redirect=====
 302 redirect는 현재 페이지나 사이트를 일시적으로만 옮겼다는 것을 말해준다. 302 redirect는 현재 페이지나 사이트를 일시적으로만 옮겼다는 것을 말해준다.
줄 22: 줄 24:
 </file>)를 이용한 redirect 또는 각각의 프로그래밍 언어를 사용한 단순 redirect가 이에 포함된다. </file>)를 이용한 redirect 또는 각각의 프로그래밍 언어를 사용한 단순 redirect가 이에 포함된다.
  
-302 redirect를 해주게 되는 경우 사용자는 자동으로 옮겨가게 되지만, 크롤러는 사이트가 옮겨갔다는것을 감지하더라도 일시적으로만 옮겨간것으로 간주하기 때문에 검색결과에 아무런 변화를 주지 않게 된다.+302 redirect를 해주게 되는 경우 사용자는 자동으로 옮겨가게 되지만, 크롤러는 사이트가 옮겨갔다는 것을 감지하더라도 일시적으로만 옮겨간 것으로 간주하기 때문에 검색결과에 아무런 변화를 주지 않게 된다.
 그래서 특정 키워드로 검색을 했을때 aaa.com이 나오던것이 bbb.com으로 업데이트되지 않게 된다. 그래서 특정 키워드로 검색을 했을때 aaa.com이 나오던것이 bbb.com으로 업데이트되지 않게 된다.
  
 간혹 이것을 악용하여 특정 키워드로 최적화된 페이지를 방문한 사용자를 자동으로 페이지와 전혀 상관없는 광고성 페이지로 옮겨가게 만드는 경우도 있다. 간혹 이것을 악용하여 특정 키워드로 최적화된 페이지를 방문한 사용자를 자동으로 페이지와 전혀 상관없는 광고성 페이지로 옮겨가게 만드는 경우도 있다.
  
-구글은 이를 doorway page로 여겨 페널티를 부과하기 때문에 +[[tech:google|구글]]은 이를 doorway page로 여겨 페널티를 부과하기 때문에 
-대부분의 경우 302 보다 301 redirect를 사용하는것을 추천한다.+대부분의 경우 302 보다 301 redirect를 사용하는 것을 추천한다.
  
 ====html==== ====html====
줄 50: 줄 52:
 </file> </file>
  
-http://en.wikipedia.org/wiki/URL_redirection+[[php redirect]] 참조.
  
  
 +====nginx====
 +
 +강제. 항상.
 +
 +<file>
 +server { 
 +  server_name old.com; 
 +  return 301 $scheme://new.com$request_uri;
 +}
 +</file>
 +
 +http 에서 https로 301
 +
 +<file nginx>
 +server {
 + listen 80;
 + server_name example.com;
 + root html;
 +
 + location / {
 +        return 301 https://example.com$request_uri;
 +    }
 +}
 +
 +server {
 + listen 443 ssl https;
 +    server_name  example.com
 +    root         html;
 +
 +    ssl                  on;
 +    ssl_certificate      /etc/pki/tls/certs/example.com.chained.crt;
 +    ssl_certificate_key  /etc/pki/tls/private/example.com.key;
 +    ssl_session_timeout  5m;
 +    ssl_protocols TLSv1.2 TLSv1.3;
 +    ssl_ciphers  ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
 +    ssl_prefer_server_ciphers   on;
 +    location ~ /\.ht {
 +         deny  all;
 +    }
 +}
 +</file>