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
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
58 | System/OS | [linux] CentOS Apache Httpd에 https 적용 | hooni | 2014.03.05 | 4485 |
57 | System/OS | [linux] 쉘스크립트 expr | hooni | 2014.03.11 | 15627 |
56 | System/OS | [linux] awk 명령어 | hooni | 2014.03.11 | 4959 |
55 | System/OS | [linux] split 명령어 | hooni | 2014.03.11 | 4309 |
54 | System/OS | HTTPS와 SSL 인증서 | hooni | 2014.03.11 | 7550 |
53 | System/OS | [mac] 맥OSX에서 NTFS 쓰기 기능 활성화 | hooni | 2014.03.12 | 4290 |
52 | System/OS | [mac] 맥(OSX)에서 NTFS, 윈도우에서 HFS+ 사용하기 | hooni | 2014.03.12 | 5121 |
51 | System/OS | [linux] CentOS 6.5 에서 "Bringing up interface eth0: Determining if ip address 121.78.127.197 is already in use for device eth0..." | hooni | 2014.04.05 | 4860 |
50 | System/OS | [linux] resolv.con 초기화 되는 문제 | hooni | 2014.04.05 | 4626 |
49 | System/OS | [linux] yum 업데이트 시 커널 제외하기 | hooni | 2014.09.11 | 1266 |
48 | System/OS | SVN(Subversion) 설치와 설정 (sasl 인증 적용 포함) | hooni | 2014.09.11 | 5680 |
47 | System/OS | [svn] SVN trunk 변경사항 되돌리기 (SVN Rollback) | hooni | 2014.11.27 | 1566 |