Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> protokół komunikacyjny w php
Jabol
post
Post #1





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Ostatnio udzielałem odpowiedzi w poście i tknęło mnie, że można zrobić coś bardzo ciekawego. Mam na myśli protokół komunikacyjny w php, za pomocą fsocketopen, print i fgets na kliencie oraz readline oraz print na serwerze? Czy tak by się dało. Do zastosowań mniejszych lub nawet większych. Wszystko można by tak było zrobić (nawet serwer www, ale po co wyważać otwarte drzwi). Mam na myśli coś takiego.
  1. <?php
  2. #klient:
  3. $serw=fsockopen($host, $serwer);
  4. #serwer:
  5. print &#092;"HELLO I AM php BASED WEB SERWERnLOGINnREADYn\";
  6. $user=readline();
  7. #klient:
  8. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"LOGIN\"){
  9. do_kommand($komenda);
  10. }
  11. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"READY\"){
  12. //czekaj na ready
  13. }
  14. fputs($serw, 'TEST');
  15. #serwer:
  16. print &#092;"PASSnREADYn\";
  17. $pass=readline();
  18. #klient:
  19. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"PASS\"){
  20. //czekaj na pass
  21. }
  22. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"READY\"){
  23. //czekaj na ready
  24. }
  25. fputs($serw, 'TEST_PASS');
  26. #server:
  27. if(test_auth($user, $pass)){
  28. print &#092;"LOGIN CORRECTnREADY\";
  29. }
  30. else{
  31. print &#092;"LOGIN INCORRECTnSERVER IS GOING DOWNn\";
  32. die('BYE');
  33. };
  34. $kommand=readline();
  35. #klient:
  36. if(fgets($serw='LOGIN CORRECT')){
  37. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"READY\"){
  38. //czekaj na ready
  39. }
  40. print 'LOGGOUTnEXITn';
  41. }
  42. ?>

Mam pytanie czy coś takiego wogóle by działało (oczywiście by się dało w linuxie odpowiednią konfigurację, wiem, że tak sie da). Tak co do możliwości to uważam, że są spore aczkolwiek niewydajne i myśle, ze lepiej to napisać w czym innym, ale tak się po prostu zastanawiam...
Napiszcie co o tym myślicie i czy macie już może tego typu doświadczenia?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dragossani
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 398
Pomógł: 0
Dołączył: --
Skąd: Poznań

Ostrzeżenie: (0%)
-----


W Mandrake'u jest xinetd o ile się orientuję. Co do serwerów http napisanych w php, to jest już coś takiego (był na ten temat post na forum) - trzeba być nieco nawiedzonym, żeby brać się za coś takiego :wink:. Sam pomysł ustawienia skryptu php bezpośrednio na porcie jest niezły i mógłby się sprawdzić na przykład jako element podnoszenia bezpieczeństwa jakiegoś bardziej złożonego systemu. Zastanawiam się właśnie nad zastosowaniami. Jak coś wymyślę to napiszę.

Jedno skojarzenie: jak to się ma do SOAP i XML-RPC?
Drugie skojarzenie: WDDX jako format przesyłu zmiennych przez taki port.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.09.2025 - 03:24