Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2014, 16:32   #1
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию Определить ip по домену

Код:
function check_http_status($url) {
$url = "http://ya.ru/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSLVERSION, 3);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$page = curl_exec($ch);
$err = curl_error($ch);
if (!empty($err))
return $err;
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $httpcode; 
}
$answer = check_http_status($url);
echo "HTTP: ".$answer;
Есть вот такой пример определяет HTTP код ответа от сервера, как сдесь же можно определить ip сайт?

Последний раз редактировалось UKRtortik; 26.04.2014 в 16:35.
UKRtortik вне форума Ответить с цитированием
Старый 26.04.2014, 18:26   #2
ATL
Форумчанин
 
Аватар для ATL
 
Регистрация: 26.01.2007
Сообщений: 278
По умолчанию

PHP код:
$url parse_url('http://programmersforum.ru');

foreach(
gethostbynamel($url['host']) as $ip) {
    echo 
$ip"<br/>";

Функция возвращает массив. IP адресов может быть более чем один (напр. http://google.ru), по этому используется foreach.
ATL вне форума Ответить с цитированием
Старый 27.04.2014, 11:11   #3
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию

хм, а почему может быть несколько ip? Это я так понимаю у поддоменов разные ip типа как у vk.com? А можно узнать только основной ip проверяемого домена?
UKRtortik вне форума Ответить с цитированием
Старый 27.04.2014, 15:16   #4
ATL
Форумчанин
 
Аватар для ATL
 
Регистрация: 26.01.2007
Сообщений: 278
По умолчанию

Если нужен 1 - используйте функцию gethostbyname
ATL вне форума Ответить с цитированием
Старый 28.04.2014, 13:23   #5
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию

Цитата:
Сообщение от ATL Посмотреть сообщение
Если нужен 1 - используйте функцию gethostbyname
Я пробывал, но почему то возвращает вместо ip, проверяемый домен.
UKRtortik вне форума Ответить с цитированием
Старый 28.04.2014, 13:29   #6
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию

Понял почему, нужно проверять так "www.ya.ru", а можно как то определить ip по такой ссылке: "http://ya.ru/", "ya.ru"
UKRtortik вне форума Ответить с цитированием
Старый 28.04.2014, 14:18   #7
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

Цитата:
Сообщение от UKRtortik Посмотреть сообщение
Понял почему, нужно проверять так "www.ya.ru", а можно как то определить ip по такой ссылке: "http://ya.ru/", "ya.ru"
А что мешает привести все адреса в одинаковый вид, который вам нужен?!
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Старый 28.04.2014, 15:42   #8
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
По умолчанию

а как это можно сделать?
UKRtortik вне форума Ответить с цитированием
Старый 28.04.2014, 16:21   #9
ATL
Форумчанин
 
Аватар для ATL
 
Регистрация: 26.01.2007
Сообщений: 278
По умолчанию

А откуда Вы эти данные берёте?
ATL вне форума Ответить с цитированием
Старый 28.04.2014, 16:30   #10
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

PHP код:
<?
function uri($url) {
    
$url trim($url); // Удаляем пробелы по краям, если есть
    
$url strtolower($url); // приводим все символы к нижнему регистру, нужно если адрес попал такой HTTP://siTe.coM
    
if(substr($url,0,7) == "http://") {
    
// Убираем приставку http:// если она есть
        
$url substr($url,7,strlen($url));
    }
    if(
substr($url,0,8) == "https://") {
        
// Убираем приставку https:// если она есть
        
$url substr($url,8,strlen($url));
    }
    if(
substr($url,0,4) != "www.") {
        
// если нет www. добавляем его
        
$url "www.".$url;
    }
}

?>
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Windows Server 2003 подключение к домену PadrivNICK Windows 2 28.09.2013 13:29
запрет доступа на сайт по домену Roidesrois PHP 2 08.12.2012 22:28
Привязка плеера к домену Safura WordPress и другие CMS 2 09.10.2011 16:04
Привязка к домену makar3000 PHP 5 27.08.2011 13:12
Вопрос по домену org.ua vlad777 Помощь студентам 5 26.02.2011 22:37