> 백엔드 개발 > PHP 문제 > PHP에서 도메인 간 문제를 해결하는 방법

PHP에서 도메인 간 문제를 해결하는 방법

王林
풀어 주다: 2023-03-08 06:20:01
앞으로
3453명이 탐색했습니다.

PHP에서 도메인 간 문제를 해결하는 방법

교차 도메인이란 무엇인가요?

교차 도메인은 브라우저가 다른 웹사이트의 스크립트를 실행할 수 없음을 의미합니다. 이는 브라우저가 부과하는 보안 제한인 브라우저의 동일 출처 정책(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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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