ОсновноеRadiotalkПользовательское
Общие вопросы по интернет радио вещанию
6   •   Посмотреть все темы

dyndns и скрипты

 

10
SanYA @SanYA
У меня динамический IP.
В скриптах (например на проверку online/offline) нужно указывать IP, а он у меня динаамический.

Как обойти?

1400
Pheoru @Pheoru
Если сервер у тебя на компе, то 127.0.0.1 в ип.

2605
Александр @AlexIT
В названии вашей темы уже есть ответ.
Юзайте dyndns либо no-ip.

10
SanYA @SanYA
Я имел в виду что в скриптах нужно указать IP адрес.
Если я указываю хост, допустим ntagil.no-ip.org, то скрипт не работает....

А может все дело в том, что он лежит на бесплатном хостинге php?

162
arseny @arseny
Бесплатный хостинг виноват - врядли.
А 80 порт у тебя провайдер не блокирует?

284
jerry007 @jerry007
Послушайте,ноу айпи не очень хорошая весч,т.к за траффик большой счёт придёт.
Узаёте безсплатный хостинг с привязкой норм домена и без рекламы я знаю 1 такой.

10
SanYA @SanYA
Какой? У меня безлимитка, так что на счет трафика не напрягаюсь...

Сейчас попробовал IP ввести (текущий) - тоже скрипт не отработал (radio_stats.php выдал OFFLINE, а status.php вообще ничего не выдал).

Хостинг jino-net..ru
arseny пишет:

Бесплатный хостинг виноват - врядли.
А 80 порт у тебя провайдер не блокирует?

не должен.

10
SanYA @SanYA
проверил: 80 порт не блокируется.

Попробовал скрипт "Full SHOUTcast Server Stats" - тоже offline.

Похоже виноват хостинг. Подскажите еще сайты с бесплатным хостингом php, где эти скрипты точно работают??

162
arseny @arseny
awardspace.com
110mb.com

P.S. Дай ссылочку на твой сервер вещания, я попробую своим скриптом пропарсить.

10
SanYA @SanYA
ntagil.no-ip.org:8000

порт 80 сейчас закрыт (фаер)

Отредактировано SanYA - 26.07.2007
162
arseny @arseny
Я добавил твою станцию в наш каталог: ********** она успешно отобразилась!
Каталог работает на скриптах, т.е. ты добавляешь айпи станции и порт, а движок парсит страницу сервера и вытаскивает оттуда нужную инфу. Так что как видишь у меня все нормально!

10
SanYA @SanYA
Да... а вот у меня не пашет... :(

awardspace.com пишет
Warning: fsockopen() has been disabled for security reasons

h18.ru пишет
Warning: fsockopen(): unable to connect to 90.150.128.160:8000 in /home/e/*****.h18.ru/WWW/phpscript/radio_stats.php on line 16


даже не знаю что делать....

Отредактировано SanYA - 26.07.2007
162
arseny @arseny
Да уж! не думал что они все такие ******, боятся, что ты Пентагон взломаешь с помощью их хостинга!
Поставь у себя дома сервер и не мучайся! будет адрес прям такой же: **********/

10
SanYA @SanYA
Блин, других выходов похоже нету...

Там дело в чем: у меня комп не всегда включен, и хотелось чтоб работал какой-то внешний индикатор online/offline...

162
arseny @arseny
Я погуглил, вот эти хостинги вроде поддерживают сокеты:

**********
и еще
**********

Пробуй! Потом только отпишись!

10
SanYA @SanYA
Ага, оба поддерживают. Только у обоих проблемы с FTP-доступом. ну да ладно, главное - работает. Осталось самую малость...:))

Заставить это все работать не с IP адресом, а с именем сайта...
Вот тут во втором посте есть функция gethostbyname, но не могу заставить ее работать: там пример не совсем подходит, но все же...
**********

пробовал и
[mono]$server = "ekoradio.no-ip.org";
$ip = gethostbyname($server);
$check = @fsockopen ($ip, "8000", $errno, $errstr,1);[/mono]
и
[mono]$ip = gethostbyname("ekoradio.no-ip.org";
$check = @fsockopen ($ip, "8000", $errno, $errstr,1);[/mono]
, но все равно что-то не то...


Пытаюсь добиться чтобы заработал вот этот простенький скрипт
[mono]<?php
$check = @fsockopen ("127.0.0.1", "8000", $errno, $errstr,1); // измените 127.0.0.1 на IP, либо URL где стоит ваш шауткаст сервер и порт 8000 на тот, который используете
if($check) {
header('content-type: image/gif');
readfile('online.gif'); // графический файл отображения статуса "Включен"
} else {
header('content-type: image/gif');
readfile('offline.gif'); // графический файл отображения статуса "Выключен"

}
?> [/mono]

Отредактировано SanYA - 28.07.2007
10
SanYA @SanYA
Мда... заработался %) хост вообще левый написал ))))


в общем оставил в таком виде
[mono]$check = @fsockopen (gethostbyname('ntagil.no-ip.org'),"8000",$errno, $errstr,1);[/mono]

162
arseny @arseny
ок! вот этим я пользовалсо, надежно работает и кода всего 3 строчки:

<?php
$check = @fsockopen ("ntagil.no-ip.org","8000",$errno, $errstr,0);
if($check) {
$open = fsockopen("ntagil.no-ip.org","8000");
if ($open) {
fputs($open,"GET /7.html HTTP/1.1\nUser-Agent:Mozilla\n\n");
$read = fread($open,1000);
$text = explode(",",$read);
if ($text[1]==1) { echo "Здесь выводишь нужные тебе переменные, к примеру эта выводит название исполнителя и песню: $text[6]"; } else echo "Извините, жопа!";
} else { $text="Извините, жопа!"; }
} else { echo "Извините, жопа!";
}
?>

2605
Александр @AlexIT
Код лучше заключать в теги:
<?php?>