NGINX 설정 정규식 리퍼러 적용 아시는분안계세요?

NGINX 설정 정규식 리퍼러 적용 아시는분안계세요?

QA

NGINX 설정 정규식 리퍼러 적용 아시는분안계세요?

답변 2

본문

NGINX에서 

리퍼러가 같은사이트내 리퍼러가 아니거나

주소창에 리퍼러없이 접속하는경우

 

공지사항이나 특정페이지로 이동시키고십습니다

 

제가 밑에와같이  해봤더니 안되더라고요

 

if ( $http_referer ~* !(sir.kr/qa) ) {
          return sir.kr/notice; //공지사항 이나 다른주소로 옮기기
       }
 

 

예를들어   

밑의사이트에

https://sir.kr/qa/364754  접속 한다고치면

 

 

https://sir.kr/ 로 접속한게 아니거나

주소창에 리퍼럴없이 주소창에서 바로접속하면

 

공지사항 게시글로 이동시키던지 하고싶습니다

 

 

이 질문에 댓글 쓰기 :

답변 2

return 은 http code 입니다. url을 넣는다고 해서 주소로 이동되지 않습니다.

return 구문을 rewrite 구문으로 변경하시면 잘 동작할거에요.

 

위와 같은 로직을 잘못 처리하면 무한 redirect될수 있으니 조심해서 사용하세요.

 

캐시 지우고 하셔야 해보세요. 어렵진 않은데 여러번 해봐야 감이 잡힐거에요. 특히 캐시 잘 지우고 테스트 하세요. 크롬 옵션에서 캐시를 꺼두고 테스트 하면 편합니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 123,673
© SIRSOFT
현재 페이지 제일 처음으로