API 작업 시 헤더에 중요 정보를 담아서 처리해야할때 가있다.  하지만 서버에 따라 apache_request_headers()  함수가 지원이 안되는 경우가 있는데 이때 해결방법으론 .htaccess 를 이용하여 별도 처리하는것이다. 

 

작업은 조금 번거로울 수 있으며 아파치의 mod_setenvif 모듈이 설치되어있어야 해결가능하다. 그외 방법은 나도 찾아본적이 없어 생략하도록 한다. 

 

일단 서버에 apache_request_headers() 함수가 지원안될 경우는 아래와 같이 .htaccess 를 작성해 준다. 

SetEnvIf AuthUserID "(.*)" HTTP_AUTHUSERID=$1
SetEnvIf AuthUserEmail-Value "(.*)" HTTP_AUTHUSEREMAIL_VALUE=$1

 

위의 설정을 보면 AuthUserID 키값을 HTTP_AUTHUSERID 키값으로 값과 함께 받는다는 의미인데 AuthUserEmail-Value 값은 사실상 규격에 어긋나는 방식으로 되도록 키값은 대문자로 시작해서 소문자로 진행하는게 좋다. 

 

그리고 또하나 SERVER 단에서 처리하기위해 HTTP_ 접두사를 규칙상 붙여주는게 좋다. 

 

위와 같이 해서 서버측으로 보내면 $_SERVER 변수를 통해 확인해보면 HTTP_AUTHUSERID 키값과 HTTP_AUTHUSEREMAIL_VALUE 키값을  확인할 수 가 있다. 

 

다음편에서는 이방법을 활용하여 AJAX를 통해 데이터를 받아서 가공하는 방법에 대해 알아보도록 하자