После нескольких дней просмотра в Интернете и попыток всевозможных действий я узнал о проблемах с моим хост-сервером. Он был отключен моим хост-сервером. Итак, я подумал о том, чтобы опубликовать свой код в Stackoverflow, так что никто больше на SO не теряет время, как я.
Фрагмент кода отлично работает на IE, Safari, Mozilla и Chrome.
Код Javascript для клиентской стороны
<script type='text/javascript'> // function for making an object for making AJAX request function getXMLHTTPRequest() { try { req = new XMLHttpRequest(); } catch(err1) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (err2) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (err3) { req = false; } } } return req; } var http899 = getXMLHTTPRequest(); function searchFabIndia() { var myurl = "http://my2nddomain.com/yebhi.php"; myRand = parseInt(Math.random()*999999999999999); var modurl = myurl+"?rand="+myRand; http899.open("GET", modurl, true); http899.onreadystatechange = useHttpResponse899; http899.send(null); } function useHttpResponse899() { if (http899.readyState == 4) { if(http899.status == 200) { // do all processings with the obtained values / response here } } } </script> <body onload='searchFabIndia();'>
Часть кода, требуемая на стороне сервера. Вам нужно указать источник (источники), которые могут запрашивать содержимое страницы, разрешать методы и заголовки. Эти настройки могут быть сохранены либо в файле .htaccess вместе для всех файлов второго домена, на который вы выполняете запрос, либо можете поместить их в свой конкретный файл PHP, как показано: –
<?php header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, DELETE"); header("Access-Control-Allow-Headers: Content-Type, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control"); header("Access-Control-Max-Age: 18000"); // Put it in your PHP file ?>
ИЛИ иначе вы можете указать эти параметры для всего домена / субдомена вместе, указав то же самое в файле .htaccess, как показано: –
<IfModule mod_headers.c> <FilesMatch "\.(php)$"> Header set Access-Control-Allow-Origin: * Header set Access-Control-Allow-Methods : POST,GET,OPTIONS,PUT,DELETE </FilesMatch> </IfModule>
Также не обязательно, чтобы учетные данные для всех рефереров иногда не нужны, поэтому в этом случае вы можете указать конкретный домен / поддомен, называя их, каждый из которых разделяется запятой (,), как показано
Header set Access-Control-Allow-Origin: http://abc.com,http://def.com,http://ghi.com
Прошу прокомментировать, если вы сталкиваетесь с некоторыми трудностями при реализации любого из них. Вы можете увидеть живое демо того, что я упомянул здесь