교차 도메인이란 무엇인가요?
교차 도메인은 브라우저가 다른 웹사이트의 스크립트를 실행할 수 없음을 의미합니다. 이는 브라우저가 부과하는 보안 제한인 브라우저의 동일 출처 정책(Same Origin Policy)으로 인해 발생합니다.
소위 동일한 출처라는 것은 도메인 이름, 프로토콜 및 포트가 동일하다는 것을 의미합니다.
1. 모든 도메인 이름 액세스 허용
header('Access-Control-Allow-Origin: *');
2. 단일 도메인 이름 액세스 허용
header('Access-Control-Allow-Origin: https://test.com');
3. 여러 도메인 이름 액세스 허용
실제 프로젝트에서는 액세스 가능한 도메인 이름을 지정하는 것이 가장 좋습니다. 도메인 전반에 걸쳐 보안을 강화합니다. 메소드 호출을 캡슐화하기 위해 공개 클래스에 작성할 수 있습니다.
// 设置能访问的域名 static public $originarr = [ 'https://test1.com', 'https://test2.com', ]; /** * 公共方法调用 */ static public function setheader() { // 获取当前跨域域名 $origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : ''; if (in_array($origin, self::$originarr)) { // 允许 $originarr 数组内的 域名跨域访问 header('Access-Control-Allow-Origin:' . $origin); // 响应类型 header('Access-Control-Allow-Methods:POST,GET'); // 带 cookie 的跨域访问 header('Access-Control-Allow-Credentials: true'); // 响应头设置 header('Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token'); } }
관련 권장 사항: php 튜토리얼
위 내용은 PHP에서 도메인 간 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!