본문 바로가기
IT기술(코딩)

아파치 proxypassmatch는 url 매개변수 ? 를 읽을 수 없다.

by 크리에이트매이커 2023. 5. 23.
반응형

안녕하세요 여러분 크리에이트 메이커 입니다.

 

이번에 외주를 또 받아서 서버를 생성중에 있는데요.

api 생성 제작을 하고 있는데, nginx는 잘되는데 아파치(apache)는 역시 구려서 그런지

 

proxypass 할때 url에서 ? 를 읽지 못하네요.

예를들어

 

ProxyPassMatch   ^/api/ar/stamp/(.*)$  http://ip/whichculture/getmystamp/$1

이렇게 해서 저 링크가 있다면 저렇게는 되는데,

우리가 보통 get을 보내면 ? 로 매개변수 파라미터를 구분하지않습니까?

ProxyPassMatch   ^/api/ar/stamp/(.*)$  http://ip/whichculture/getmystamp.php?user=$1

그런데 위 처럼 사용하면 404 에러가 납니다. 물론 다 맞다는 가정에요.

이유를 보니까 아파치는 저 매개변수를 알리는 ?를 인식을 못합니다.

물론 (.*) 정규식에 ?를 넣어서 ?user=12 이렇게 아예 다 넣어버리면 되지만,

저의 경우 (.*) 정규식안에 오로지 숫자만 넣고 그 값을 get으로 넘겨야 하는 상황에서 

의뢰자가 아파치를 사용하고 있기 때문에 get전송이 불가능한 상황이 됐습니다.

 

이래서 구데기 같은 아파치는 쓰는게 아닌데, 대부분 아파치를 쓰고 있더라고요.. 옛날에 만든 서버를 개선없이 그대로 

물려받는 작은 기업들은요.. 실력발전이 없는거죠 ㅎㅎ.. 버전도 엄청 낮고 

 

아무튼 아파치는 이제 쓰지 않았으면 좋겠네요. 저처럼 일하는 사람이나 의뢰하는 사람 다 불편하니 말이에요~

이거떄문에 4시간을 낭비했네요.

반응형