Apache CORS 설정
CORS( Cross-origin resource sharing )은 XMLHttpRequest를 사용한 AJAX 호출을 Cross-Domain으로 가능하게 해준다.
( Cross-Domain이 가능하다는 것은 [ www.A.com ]의 웹페이지에서 [ www.B.com ]의 resource를 사용할 수 있게 해준다는 것이다. )
특히 XMLHttpRequest는 request가 만들어진 도메인 내에서만 사용되도록 제한되어 왔지만,
현대에서는 점점 mash-up구조( 구글맵 연동이나, 여러가지 다른 open API를 연동) 에 대한 요구가 커지면서,
W3C는 CORS mechanism을 제안하였다.
CORS를 지원하기 위해서 Cross Domain호출을 받아주는 서버( www.B.com )에서 이러한 호출방식을 받아주겠다는 설정을 해줘야 한다.
- Apache CORS 설정
1. mod_headers 설정 : Apache는 default가 enable이다.
a2enmod headers
2. httpd.conf : <Directory>, <Location>, <Files>, <VirtualHost>안에 설정
또는 .htaccess 안에 설정 가능
Header set Access-Control-Allow-Origin "*"
- Nginx
1. nginx.conf 설정
add_header Access-Control-Allow-Origin *;
# Cross-Domain 호출은 JSONP( JSON with Padding ) 을 사용할 수도 있으나,
JSONP는 get방식만 가능하다. 반면, CORS는 다른 HTTP Request방식도 지원이 된다.
그리고 CORS는 XMLHttpRequest를 사용 할 수 있으므로 error handling에 더 유리하다.
[출처] https://sarc.io/index.php/httpd/261-apache-cors
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
33 | Develop | macOS에 node, npm 설치하기 (homebrew) | hooni | 2021.11.06 | 1148 |
32 | Develop | Mac OS 에 Jenkins 설치하기 (Homebrew) 2 | hooni | 2017.03.15 | 8121 |
31 | System/OS | Mac OS X - Apache+PHP+MySQL 환경 서버 | hooni | 2013.04.25 | 31629 |
30 | Develop | Laravel 5 Failed opening required bootstrap/../vendor/autoload.php | hooni | 2018.01.24 | 1662 |
29 | Develop | JSON, BSON 변환 | hooni | 2013.04.23 | 11814 |
28 | Etc | IT감사 기법 시험 | hooni | 2017.06.14 | 1423 |
27 | Etc | ISMS 인증기준 – 정보보호대책 (시스템개발보안) | hooni | 2016.12.01 | 1327 |
26 | System/OS | iptime 공유기 해킹 기술문서 4 | hooni | 2015.01.01 | 1941 |
25 | Etc | IPR 특허 관련 | hooni | 2015.04.28 | 0 |
24 | Etc | IoT가 만드는 미래와 플랫폼 경쟁력 | hooni | 2014.09.23 | 0 |
23 | Etc | iOS 에서 쓸만한 오프라인 구글지도 찾기 | hooni | 2014.01.06 | 16038 |
22 | System/OS | HTTPS와 SSL 인증서 | hooni | 2014.03.11 | 7548 |