> 백엔드 개발 > PHP 튜토리얼 > Nginx는 AJAX 도메인 간 요청을 구현합니다.

Nginx는 AJAX 도메인 간 요청을 구현합니다.

WBOY
풀어 주다: 2016-08-08 09:30:27
원래의
1482명이 탐색했습니다.

더 보기: http://www.webyang.net/Html/web/article_135.html

최신 W3C 표준에서 HTTP 교차 도메인 요청이 구현되는 방식입니다.

Cross -Origin Resource Sharing
간단히 말하면 크로스 도메인 대상 서버는 일련의 헤더를 반환하며, 이 헤더는 크로스 도메인에 대한 동의 여부를 제어하는 ​​데 사용됩니다.
이 헤더는 다음과 같습니다.
4 구문
4.1 Access-Control-Allow-Origin HTTP 응답 헤더
4.2 Access-Control-Max-Age HTTP 응답 헤더
4.3 Access-Control-Allow- 자격 증명 HTTP 응답 헤더
4.4 Access-Control-Allow-Methods HTTP 응답 헤더
4.5 Access-Control-Allow-Headers HTTP 응답 헤더
4.6 원본 HTTP 요청 헤더
4.7 액세스 제어 요청 - 메소드 HTTP 요청 헤더
4.8 Access-Control-Request-Headers HTTP 요청 헤더
Request 패키지와 Response 패키지에 몇 가지가 있습니다.
가장 민감한 헤더는 Access-Control-Allow-Origin 헤더로, W3C 표준에서 도메인 간 요청을 통과할 수 있는지 확인하는 데 사용됩니다. (액세스 제어 확인)
따라서 도메인을 교차해야 하는 경우 리소스 헤더에 Access-Control-Allow-Origin을 추가하여 승인한 도메인을 지정하는 것이 해결 방법입니다. 별표*만 지정하면 모든 도메인에서 내 리소스를 방문할 수 있습니다.

특정 작동 방법은 다양한 입구를 통해 제어할 수 있습니다.

1. PHP 코드 제어:
<ol><li value="1"><span><?</span><span>php</span></li><li><span>header</span><span>(</span><span>"Access-Control-Allow-Origin: *"</span><span>);</span></li><li><span>?></span></li></ol>
로그인 후 복사
2. HTML 헤더 제어:
<ol><li value="1"><span><meta</span><span></span><span>http-equiv</span><span>=</span><span>"Access-Control-Allow-Origin"</span><span></span><span>content</span><span>=</span><span>"*"</span><span>></span></li></ol>
로그인 후 복사
3. nginx 구성:
<ol>
<li value="1">
<span>location </span><span>/</span><span></span><span>{</span>
</li>
<li>
<span>  add_header </span><span>Access</span><span>-</span><span>Control</span><span>-</span><span>Allow</span><span>-</span><span>Origin</span><span></span><span>*;</span>
</li>
<li><span>}</span></li>
</ol>
로그인 후 복사
인터넷에서 누군가 nginx.conf에 세 문장을 추가하는 것을 보았습니다.
<ol>
<li value="1"><span>#授权从other.subdomain.com的请求</span></li>
<li>
<span>add_header </span><span>'Access-Control-Allow-Origin'</span><span></span><span>'http://other.subdomain.com'</span><span>;</span>
</li>
<li><span>#当该标志为真时,响应于该请求是否可以被暴露</span></li>
<li>
<span>add_header </span><span>'Access-Control-Allow-Credentials'</span><span></span><span>'true'</span><span>;</span>
</li>
<li><span>#指定请求的方法,可以是GET,POST等</span></li>
<li>
<span>add_header </span><span>'Access-Control-Allow-Methods'</span><span></span><span>'GET'</span><span>;</span>
</li>
</ol>
로그인 후 복사

근데 제가 직접 테스트해봤는데 그럴 필요는 없더라고요. 또한 특정 도메인 이름을 지정하려면 일반적으로 공개 사이트의 2차 도메인 이름인 *를 수정하면 됩니다.

위 내용은 내용의 측면을 포함하여 AJAX 교차 도메인 요청을 구현하는 Nginx를 소개하는 내용이 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿