Справочники, инструменты, документация

PHP: Кроссдоменный AJAX–запрос

В PHP существует такое понятие, как «CORS» – технология, позволяющая предоставить ресурсы другому домену. С помощью этой технологии реализовывается кроссдоменный запрос.

Предположим, что у вас есть два сайта, один с поддержкой PHP, а другой – нет. На том сайте, где есть поддержка PHP, в корне сайта вы размещаете PHP-файл, например, со следующим содержимым:

echo "Hello, world!";

А на сайте, где поддержки PHP нет, вы пытаетесь получить результат скрипта выше через jQuery:

<div id="result"></div>

<script>
$(function() {
    $('#result').load('http://domain-one.ru/test.php');
}); 
</script>

Но вы в таком случае не сможете получить данные с другого сайта. Чтобы добавить домен, на котором нужно вывести информацию в, так сказать, список доверия, вам необходимо в PHP-файле сразу после <?php вставить следующие строки:

header("Access-Control-Allow-Origin: http://domain-two.ru");
header("Access-Control-Allow-Credentials: true");

Где «domain-two.ru» – домен, которому мы разрешаем получать информацию. Сохраняем изменения, и уже в таком случае информация на другом домене будет получена.