테스트 사이트 - 개발 중인 베타 버전입니다

nginx 쿼리를 경로처럼 쓰고 싶습니다.. 채택완료

누누보드 3년 전 조회 1,873

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

 

https://file.okky.kr/images/1667650178573.png" title="" />

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

https://file.okky.kr/images/1667650200511.png" title="" />

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

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

 

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

https://file.okky.kr/images/1667650276834.png" title="" />

 

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

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

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트

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

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

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

 

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

location / {     rewrite ... }

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

누누보드
3년 전
맨 위에 올린 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 웹호스팅의 서버설정과 제 설정이 다르다는건데 어떤식으로 설정해줬길래 저게 저렇게 잘 돌아가는지 궁금해서 질문드렸던 거구요.

댓글을 작성하려면 로그인이 필요합니다.

3년 전

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

 

브라우저에서,

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

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

와 같이 접속하면 됩니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

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

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

 

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

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인