개발 시에 다양한 웹서버에 대한 자원에 접근하기 위해 일시적인 방안으로 Cross Domain 접근을 허용할 필요가 있습니다. 이에 대해 각 웹서버에서의 방법이 상이한데요. 이에 대해 정리해 봅니다.
IE Express
IE Express가 실치된 Program Files(x86)/IIS Express/AppServer 폴더 안에 존재하는 applicationhost.config 파일에서 <customHeaders/> 부분에 <add name=”Access-Control-Allow-Origin” value=”*” />와 <add name=”Access-Control-Allow-Headers” value=”Content-Type” />를 추가합니다. 예를 들어 아래와 같습니다.
<httpProtocol> <customHeaders> <clear/> <add name="X-Powered-By" value="ASP.NET"/> <add name="Access-Control-Allow-Origin" value="*" /> <add name="Access-Control-Allow-Headers" value="Content-Type" /> </customHeaders> <redirectHeaders> <clear/> </redirectHeaders> </httpProtocol>
NGINX
NGINX가 설치된 폴더 안에 conf/nginx.conf 파일에서 ‘location /’ 부분의 블럭에 ‘add_header ‘Access-Control-Allow-Origin’ ‘*’;’ 추가합니다. 예를 들어 아래와 같습니다.
location / { #root html; root e:/; add_header 'Access-Control-Allow-Origin' '*'; index index.html index.htm; }
감사합니다.
그런데 계속 허용해 두면 보안 문제가 발생하는 것인가요?
안녕하세요~
글의 서두에서도 언급되어 있지만.. 어떤 필요에 의해 개발단계에서 권장하는 방법이고…
실제에서도 익명 사용자들에게 개방되는 경우라면 이렇게 하는 경우가 가끔 있을 수도 있겠지요..