nginx 쿼리를 경로처럼 쓰고 싶습니다..

nginx 쿼리를 경로처럼 쓰고 싶습니다..

QA

nginx 쿼리를 경로처럼 쓰고 싶습니다..

본문

엔진엑스 질문할 곳이 아닌 것 같기도 하지만 그누보드 사용하면서 로컬 서버를 구성하다가 막혀 지푸라기라도 짚는 심정으로 질문 올려봅니다.

 

위 스크린샷처럼 php파일과 경로는 이런 구조로 돼있구요.

pages/intro.php/intro1 이라는 페이지에 접속을 하게 되면,

intro.php파일을 읽어오고 그 뒤에 원래라면 경로처럼 인식할 intro1 부분은 쿼리처럼 사용하고 싶습니다.

 

404 페이지 에러가 뜨면서 안 되는데 nginx 설정을 어떻게 건드려줘야할지 감이 안 옵니다..

 

nginx 고수님들 한마디 조언이라도 해주시면 감사하겠습니다... ㅠㅠ

(카페24 웹호스팅에서는 정상작동 하는데 로컬 서버에서만 안되고 있어서 서버 설정 문제라고 추측하고 있습니다.)

 

이 질문에 댓글 쓰기 :

답변 3

intro.php파일을 읽어오고 그 뒤에 원래라면 경로처럼 인식할 intro1 부분은 쿼리처럼 사용하고 싶습니다.

라는말이 무슨의미인지 잘모르겠지만, URL 주소나 파라미터에 따라서 바뀌는거라면,, rewrite 모듈을 사용해야할것같네요.. 대충이런식

참고로 = 는 1순위이고 아무것도없는 맨밑엔 후순위 입니다. 

 

location = /pages/intro.php/ {
    index intro.php;
}


location / {
    rewrite ...
}

맨 위에 올린 intro.php 파일 보시면 조건문으로 intro1~5를 url 가장 마지막 부분을 쿼리 값 가져오듯이 basename($_SERVER["PHP_SELF"]);을 통해서 가져오는 건데요.

location = /pages/intro.php/intro1 {
    proxy_pass http://localhost/pages/intro.php
}

이런식으로 쓰면 될 줄 알았는데 파일은 읽어오나 basename($_SERVER["PHP_SELF"]);이 intro.php를 가져오면서 안되더라구요. 근데 이 파일(intro.php) 그대로 cafe24 웹호스팅 운영 서버에 올리면 또 동작을 합니다. 이 말은 cafe24 웹호스팅의 서버설정과 제 설정이 다르다는건데 어떤식으로 설정해줬길래 저게 저렇게 잘 돌아가는지 궁금해서 질문드렸던 거구요.

nginx 설정과 관련 없는 부분입니다. (원래대로 돌리고)

 

브라우저에서,

http://localhost/pages/intro.php?name=intro1

http://localhost/pages/intro.php?name=intro2

와 같이 접속하면 됩니다.

일반적으로 /pages/intro.php/intro1 이렇게 쓰이진 않아서 

일반적으론 /pages/intro.php?name=intro1 이리 쓰일텐데 

 

아마도 주소 줄이기 이런걸 사용하시려는거 같아서 참고가 될지 하여 내용 남겨봅니다.

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 10
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT