Nginx 리롸이트 문의

일전에 인스타그램을 /p/ 주소형태로 줄여서 ID값에 맞춰 nginx주소를 리롸이트 기능을 추가하였었습니다..

 

rewrite ^/p/([a-zA-Z0-9_]+)/?$ /index.php?act=dispGginstagramContentview&code=$1 last;

 

사용한 방법의 소스는 이렇게 사용했는데, 다음의 주소는 리롸이트 기능이 작동하지 않았습니다.

 

http://sosifam.com/p/BdEWXICgZ-E

 

아마도 중간에 끼어있는 - 때문인것 같은데 해당 - 문자도 Code 값에 들어가는 파라미터 값인데 이것모두 포함할 수 있도록 할려면 어떻게 수정을 해야할까요?ㅠㅠ

 

실제 인스타그램은 아래와 같이 잘 작동되는 같은 아이디 값입니다..

 

https://www.instagram.com/p/BdEWXICgZ-E/

 

  • profile

    ^/p/([a-zA-Z0-9_-]+)/?$

     

    정규식 쓸 때 주의할 점... [] 문법으로 - 문자를 매칭하려면 반드시 맨 마지막에 넣어야 합니다. 안 그러면 A-Z, 0-9처럼 글자 범위를 가리키는 것으로 오해합니다.

  • profile profile
    앗 감사합니닷 !! 한번 시도해보겠습니다 :)
  • profile profile
    감사합니닷! 일딴 정상적으로 작동 잘하네요! 도움주셔서 감사합니닷 ! ㅎ
  • profile profile
    혹시 언더스코어바는 이 정규식에 포함되어있어서 BdEWXICgZ_E 이런식의 주소라도 재대로 작동할까요?
  • profile profile
    이미 포함되어 있네요.
  • profile profile
    아하! 답변 항상 감사합니다 :)