Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk melaksanakan permintaan merentas domain dalam php
Cara melaksanakan permintaan merentas domain dalam PHP: Anda boleh membenarkan akses kepada semua nama domain dengan menetapkan [header('Access-Control-Allow-Origin:*');].
Persekitaran pengendalian artikel ini: sistem Windows 10, PHP 7, komputer thinkpad t480.
Dalam PHP, jika kita perlu melaksanakan merentas domain, kita boleh melakukannya dengan menetapkan Access-Control-Allow-Origin. Seterusnya kami memberikan contoh untuk membantu anda memahami dengan lebih baik.
Andaikan bahawa nama domain klien semasa ialah client.runoob.com dan nama domain yang diminta ialah server.runoob.com.
Jika kami terus menggunakan ajax untuk mengakses, ralat berikut akan berlaku:
XMLHttpRequest cannot load http://server.runoob.com/server.php. No 'Access-Control-Allow-Origin' header is present on the requested resource.Origin 'http://client.runoob.com' is therefore not allowed access.
1. Benarkan satu nama domain mengakses
Nyatakan nama domain (http ://client. runoob.com) untuk akses merentas domain, anda hanya perlu menambah kod berikut pada pengepala fail http://server.runoob.com/server.php:
header('Access-Control-Allow-Origin:http://client.runoob.com');
2. Benarkan berbilang nama domain mengakses
Nyatakan berbilang nama domain (http://client1.runoob.com, http://client2.runoob.com, dsb.) untuk akses merentas domain, kemudian hanya gunakan http://server.runoob.com/server Tambahkan kod berikut pada pengepala fail php:
$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : ''; $allow_origin = array( 'http://client1.runoob.com', 'http://client2.runoob.com' ); if(in_array($origin, $allow_origin)){ header('Access-Control-Allow-Origin:'.$origin); }
3. Benarkan akses kepada semua nama domain
Untuk membenarkan akses kepada semua nama domain, hanya http://server.runoob.com/ Tambahkan kod berikut pada pengepala fail server.php:
header('Access-Control-Allow-Origin:*');
Pembelajaran yang disyorkan: latihan php
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan permintaan merentas domain dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!