Połączenie z serwerem przez port

0

Witam,

Jak mogę uruchomić usługę/deamona na serwerze 1 na danym porcie? A następnie jak się połączyć z innego dowolnego serwera z serwerem 1 i pobrać np wiadomość, którą serwuje daemon z serwera1?

Czy mam wykorzystać do tego połączenie przez gniazdo? socket_connect, socket_bind, socket_accept, socket_read. Czy korzystać z takiego zestawu funkcji? Czy wystarczy taka funkcja fsockopen? Chodzi mi raczej o wysyłanie prostego komunikatu i następnie pobraniu go. Takie Hello World! :)

0

jeżeli chcesz wykorzystywać do tego protokół http (najlepiej, najprościej) to wystarczy i file_get_contents

1

Odpisuj na temat raczej w poście.
Serwer HTTP może byc na porcie 80, 2000, 666, 1337 i każdym innym, tak samo jak FTP może nie być na porcie 21 tylko na 3333, 1234, albo np 80, dla przekory. Port to tylko port. Umownie stosuje się zawsze jeden, żeby nie trzeba było dopisywać jeszcze do adresu IP/domeny jeszcze portu ekstra.
Sockety są do obsługi czystych połączeń - HTTP to prosty protokół, który ma już gotowe nagłówki i piszesz "http://domena.pl/jakis_folder/nazwa.php?parametr=1&parametr=2", natomiast w czystym połączeniu nie ma tak fajnie.

Dla Twojego problemu - niech to stoi na http i tyle.

0

ok, zostawię . czy możesz mi napisać czego mam teraz szukać, żeby poszerzyć swoją wiedzę na ten temat? czego szukać i gdzie? coś kumam, ale nie wszystko i chcę więcej :) Jak ustawiać porty, gniazda, jak z nich korzystać etc?

1

nie potrzebujesz to nie kombinuj z socketami. poczytać sobie możesz np. googlując "sending mail via telnet" - sprawdzisz jak w praktyce wygląda połączenie z serwerem, gdzie sam decydujesz o wysyłanych treściach. potem spróbuj sobie pobrać np. podstronę onetu (wtedy telnetem łączysz się na port 80, ale równie dobrze możesz znaleźć sobie serwer http działający na innym porcie - wysztko będzie to samo, tylko port inny). Podglądnij sobie zapytanie np. w Firebugu, pooglądaj odpowiedź serwera - dokłanie to samo z ręki wklepiesz do telneta.
kiedy już poznasz jedno i drugie, zauważysz, że SMTP przyjmuje komendy jedna za drugą i odpowiada na nie, HTTP z kolei oczekuje na ukończenie wpisywania żadania i też odpowiada jednym długim - to socket służyłby Ci np. do ręcznej obsługi wpisywania takich komend, zamiast użycia file_get_contents. Kiedy postawiłbyś całkiem własny serwer, do którego byś się łączył i wysyłał mu własne polecenia i odbierał własne dane - to wtedy sockety to mus, bo do uproszczonej obsługi Twojego własnego protokołu w php funkcji nie byłoby (dopóki byś jej nie stworzył)

0

dzięki dzek69

1 użytkowników online, w tym zalogowanych: 0, gości: 1