apaceh 구성:
<VirtualHost *:80> ServerAdmin xxx@qq.com DocumentRoot "C:/htdocs/demo" ServerName dev.dd.cn ##ErrorLog "logs/dummy-host.localhost-error.log" ##CustomLog "logs/dummy-host.localhost-access.log" combined <Directory "C:/htdocs/demo"> #Require all denied Header set Access-Control-Allow-Origin * </Directory> </VirtualHost>
PHP 파일 설정:
<?php header("Access-Control-Allow-Origin:*"); //处理请求输出数据 ?>
구성의 의미는 모든 도메인에서 시작된 요청이 현재 서버의 데이터를 얻을 수 있도록 허용하는 것입니다. 물론 이는 매우 위험하며, 악성 사이트가 XSS를 통해 당사 서버를 공격할 수도 있습니다. 따라서 우리는 보안 소스를 타겟 방식으로 제한하기 위해 최선을 다해야 합니다. 예를 들어 다음 설정은 도메인 http://feng.com만 도메인 간에 서버의 API에 액세스하도록 허용합니다.
httpd.conf:
<VirtualHost *:80> ServerAdmin xxx@qq.com DocumentRoot "C:/htdocs/demo" ServerName dev.dd.cn ##ErrorLog "logs/dummy-host.localhost-error.log" ##CustomLog "logs/dummy-host.localhost-access.log" combined <Directory "C:/htdocs/demo"> #Require all denied Header set Access-Control-Allow-Origin http://feng.com </Directory> </VirtualHost>
PHP 파일:
header("Access-Control-Allow-Origin:http://feng.com");