この記事では、Access-Control-Allow-Origin を設定することでクロスドメインを実現します。たとえば、クライアントのドメイン名は client.php.cn で、要求されたドメイン名は server.php.cn です。 ajax を使用して直接アクセスすると、次のエラーが表示されます:
XMLHttpRequest は http:/server.php.cn/server.php を読み込めません。No 'Access-Control-Allow-Origin ' ヘッダーが要求されたリソースに存在します。オリジン 'http://client.php.cn' はアクセスを許可されません。
1. 単一ドメイン名のアクセスを許可します
指定 特定のドメイン名 (http://client.php.cn) へのクロスドメイン アクセスの場合、http://server.php.cn のヘッダーに次のコードを追加するだけです。 /server.php ファイル:
<?php header('Access-Control-Allow-Origin:http://client.php.cn');
2. 複数のドメイン名によるアクセスを許可する
複数のドメイン名を指定した場合 (http://client1.php.cn、 http://client2.php.cn など) クロスドメイン アクセスの場合は、http://server.php.cn/server.php ファイルのヘッダーに次のコードを追加するだけです。
<?php $origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : ''; $allow_origin = array( 'http://client1.php.cn', 'http://client2.php.cn' );
3. すべてのドメイン名にアクセスを許可する
すべてのドメイン名にアクセスを許可する 次に、http://server.php.cn のヘッダーに次のコードを追加するだけです。 /server.php ファイル:<?php header('Access-Control-Allow-Origin:*');
PHP 中国語 Web サイトをご覧ください。
以上がPHP クロスドメイン問題の解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。