>php教程 >PHP开发 >서버측 CROS(교차 도메인 액세스) 솔루션

서버측 CROS(교차 도메인 액세스) 솔루션

高洛峰
高洛峰원래의
2016-12-14 13:07:402613검색

통로过设置Http Header方式允许跨域name请求

<?php
    header("Access-Control-Allow-Origin: http://www.requesting-page.com");
?>

자세한 내용

브라우저(클라이언트) 측 코드 예:

https://developer.mozilla .org/en-US/docs/Web/HTTP/Access_control_CORS


서버측 코드 예:

https://developer.mozilla.org/ en-US/docs/Web/HTTP/Server-Side_Access_Control

怎样配置Apache 服务器允许跨域name请求

교차 도메인 스크립팅 문제를 어떻게 해결합니까?

간단한 해결책은 요청이 이루어지는 서버가 임의의 도메인이나 도메인 목록에 대한 서버 요청을 허용하는 것입니다. 기억해야 할 중요한 점은 웹 서비스를 제공하는 서버에서 변경 작업이 수행된다는 것입니다.

방법은 여러 가지가 있습니다

1.  Apache의 httpd-vhosts.conf 파일에서 설정을 변경합니다(저는 Apache 2.2를 사용하고 있습니다)

<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.com
DocumentRoot “C:/apache-tomcat-6.0.29/webapps/myApplication”
ServerName skill-guru.com
ErrorLog “logs/skg1-error.log”
CustomLog “logs/skg1-access.log” common

Header set Access-Control-Allow-Origin “*”
<Directory “C:/apache-tomcat-6.0.29/webapps/myApplication”>
Options -Indexes FollowSymLinks
AllowOverride AuthConfig FileInfo
Order allow,deny
Allow from all
</Directory>
JkUnmount /*.jsp ajp13
</VirtualHost>

이제 Apache 서버에서 값을 설정하고 헤더를 보면
HTTP/가 표시됩니다. 1.1 200 OK
날짜: 2008년 12월 1일 월요일 00:23:53 GMT
서버: Apache/2.0.61
Access-Control-Allow-Origin: *
Keep-Alive: timeout= 2, max=100
연결: 연결 유지
전송 인코딩: 청크
콘텐츠 유형: application/xml

怎样配置Tomcat 服务器允许跨域name请求


Apache를 사용할 계획이 없고 어떤 이유로 필터를 지원하는 tomcat이나 기타 유사한 웹 컨테이너를 사용할 계획이 없다면 이미 준비된 솔루션인 Cors Filter가 있습니다.

이것은 모든 Java Servlet 2.5+ 웹 컨테이너와 호환되는 서블릿 필터를 제공합니다.

설치가 매우 간단합니다. 라이브러리에 항아리를 추가하세요

web.xml에서

이 줄을 추가하세요

<filter>
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.