Webmaster общности: Predpriemach.com | SearchEngines.bg

    Как да получим информация за домейн , чрез XMLRPC и PHP

    Теория

    XML-RPC е протокол за отдалечено извикване на процедури, който използва HTTP за транспорт, а тялото на съобщението е в XML формат. Накратко казано, това е POST заявка с XML тяло

    Ето и малък пример за горното:

    Заявка

    XML
    
    <?xml version=”1.0”?>
    
    <methodCall>
    
    <methodName>spisanie.getrank</methodName>
    
    <params>
    
    <param>
    
    <value><string>http://spisanie.com</string></valie>
    
    </param>
    
    </params.
    
    </methodCall>
    

    Отговор

    XML
    
    <?xml version=”1.0”?>
    
    <methodResponse>
    
    <params>
    
    <param>
    
    <value><string>PageRank: 5</string></valie>
    
    </param>
    
    </params>
    
    </methodResponse>

    Настройка на системата.

    Има много пакети за РНР, но аз предпочитам един, които съм направил с малка модификация на пакета на Кейт Девънс. Модифицирания пакет, заедно с кода на тази статия можете да свалите от тук:

    http://spisanie.com/downloads.php (намира се в секция РНР)

    Инсталация

    Нямате нужда от нищо друго, само разархивирайте пакета в директория на сървъра си.- примерно XML. Трябва да се получи следната структура:

    service.php

    index.php

    service.php е модифицирания файл, който ще си комуникира с XML-RPC сървъра и ще обработва комуникацията от типа по-горе (само в XML) до разбираем за обработка (е PHP променливи).

    index.php – e файлът който извиква услугата за намиране на информация за името на домейна (whois)

    Код

    Нека да разгледаме код-а на index.php

    <?php
    
    require('service.php');
    
    $url="spisanie.cc";
    
    $s = XMLRPC_request("spisanie.com", "/RPC/", "spisanie.whois", array(XMLRPC_prepare($url)));
    
    echo "<pre>".$s[1]."</pre>";
    
    ?>
    

    1.Вмъкване, необходимият ни за обработката файл service.php

    2.Задаваме стойност на променлива, която в последствие ще подадем на функция. Стойността е името на домейна за който искаме информация

    3.Изпълняваме заявката , чрез функцията. Заявката като XML, можем да видим в началото на материала. Забележете, че се отнася до друга услуга, но структурата е същата.

    Функцията XMLRPC_request има следните параметри:

    • URL на XMLRPC сървъра, който извършва услугата
    • Път до директорията на сървъра
    • Име на услугата (уникално за всяка услуга)
    • Параметри на услугата (в случая името на домейна)

    Резултатът е във вид на масив, като елементите са следните:

    1. Статут на изпълнението на заявката
    2. Резултат

    В случая ни е необходим втория елемент на масива.

    Резултатът извежда данните на дадения домейн.

    Интересно

    За разлика от други услуги, Сървъра предлага много добра поддръжка за имената в .bg областта.

    Оставете коментар