사용자 도구

사이트 도구


nginx:rewrite

nginx rewrite

도메인이 www 로 시작하지 않는 것을 www로 가게

  • 서브 도메인이 없을 경우
    # 서브 도메인을 모두 무시하게 만든다.
    if ($host !~* ^www\.) {
        rewrite ^(.*)$ http://www.$host$1 permanent;
    }
  • 서브 도메인이 있다면 www 서브 도메인이 지정 안됐을 경우만 처리
    # .com .net .org 에 대해서도 마찬가지 처리
    if ($host ~* ^([a-z0-9\-]+\.(com|net|org))$) {
        set $host_with_www www.$1;
        rewrite ^(.*)$ http://$host_with_www$1 permanent;
    }

Query Parameter 삭제

  • nginx rewrite는 rewrite 후에 쿼리 파라미터를 자동으로 붙여버린다.
  • 쿼리 파라미터가 붙는 것을 막으려면 타겟 URL의 끝에 물음표(?)가 있어야 한다.
    rewrite ^ http://www.example.com/? last; # 쿼리 파라미터를 무시하고 무조건 http://www.example.com 으로 보내버림

http로 온 것을 모두 https로

참고

nginx/rewrite.txt · 마지막으로 수정됨: 2019/01/08 16:42 저자 kwon37xi