Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Brak dostępu do UDP
Forum PHP.pl > Forum > Przedszkole
-mateusz-
Witam!
Problem mam taki. Chciałbym odebrać dane po UDP z poziomu PHP. Napisałem mały skrypt:
  1. <?
  2. $timeout=10;
  3. $host=$_SERVER['REMOTE_ADDR'];
  4. echo $host;
  5. $socket = socket_create(AF_INET, SOCK_RAW, 1);
  6. socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec' => $timeout, 'usec' => 0));
  7. $pom=socket_connect($socket, $host, null);
  8. if(!$pom)echo 'nie udało się';
  9. $from = '';
  10. $port = 2001;
  11. socket_recvfrom($socket, $buf, 12, 0, $from, $port);
  12. ?>

Niestety o ile działa mi to lokalnie to na serwerze (altblue.pl) rzuca mi błędy:
Kod
[16-Aug-2012 09:43:19 UTC] PHP Warning:  socket_create(): Unable to create socket [1]: Operation not permitted in [..] on line 5
Jak uzyskać dostęp do tych funkcji? Z góry dzięki za pomoc.
Crozin
Ale czego oczekujesz? Przetłumaczenia komunikatu błędu, który w pełni informuje o tym dlaczego nie możesz skorzystać z socketów?
-mateusz-
Chodzi mi o to czy można można to odblokować poprzez zmianę jakiś ustawień, czy nic na to nie poradzę ponieważ tak jest ustawione na tym hostingu i koniec.
erix
Widocznie administrator sobie tego nie życzy.

Bez dostępu do ustawień serwera raczej tego nie przeskoczysz. 90%, że to firewall, a na to PHP nie ma wpływu.
-mateusz-
I o taką informację mi chodziło. Dzieki!
redeemer
Nie jest to wina firewalla. Na unixach tylko root może tworzyć gniazda SOCK_RAW.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.