Мне нужно узнать IP-адрес моего сервера веб-хостинга. Он находится на сервере общего хостинга и, как показывает опыт, обычно не совпадает с входящим IP-адресом, который вы получили бы, просто пингуя доменное имя. Есть ли скрипт php, который я могу запустить или что-то, чтобы найти наш исходящий IP-адрес, который мой веб-сайт использует, например, при подключении к SMTP-серверу?
4 ответа
У меня есть успех, когда я пытаюсь
curl -s ip.appspot.com
Или с PHP:
<?php
echo file_get_contents("http://ip.appspot.com");
?>
Вы можете выполнить веб-запрос из кода (PHP или другой) и запросить URL-адрес, например www.whatismyip.com, и сохранить его как файл, который вы открываете и просматриваете.
Чтение удаленного URL HTML Source в PHP показывает несколько примеров. Если ваша установка PHP позволяет это сделать, то это может быть так же просто, как создать файл со следующим, а затем указать браузер на него:
<?php
// See http://www.whatismyip.com/automation for the exact URL
echo file_get_contents(
"http://www.whatismyip.com/automation/n09230945.asp");
?>
Исходящий IP-адрес сервера хоста - это тот, который вы видите при проверке связи, независимо от того, является ли общий хост именем или IP.
Для общих хостов на основе имен (все сайты имеют один и тот же IP-адрес), пользовательский агент добавит имя хоста в свои запросы, что позволит серверу определить, какой веб-сайт показывать.
Для общих хостов на основе IP (каждый веб-сайт имеет свой собственный IP), разрешение имен является простым.
Если вместо этого вы ищете внутренний IP-адрес, используемый вашим сервером в его сети, вы можете получить доступ к этой информации, подключившись к вашему серверу через безопасную оболочку, которую предоставляет большинство веб-хостов.
Я думаю, что вы ищете это ...
<?php echo $_SERVER['SERVER_ADDR']; ?>