FP Socket Server Local vs. VPS en línea -- php campo con sockets campo con vps camp Relacionados El problema

php socket server Local VS. online vps


1
vote

problema

Español

Estoy tratando de crear un simple servidor de socket. Cuando lo estoy ejecutando en localhost, todo funciona bien.

Pero cuando estoy cargando el servidor de socket a mi VPS y lo ejecuta, Comienza al servidor, pero no pasa nada cuando intenta escribirlo. (el cliente.php se ejecuta en localhost, no sepa si eso es incluso posible para hacer).

Cliente PHP:

  <?php  $host = "93.191.155.164"; //localhost: $host = "127.0.0.1";  $port = 4643;  ?>  <html> <head>     <title>Client</title> </head> <body>     <form method="post">         <input type="text" name="input" />         <input type="submit" name="btn" />     </form>     <?php         if(isset($_POST['btn'])){             if($_POST['input'] != ''){                 $message = $_POST['input'];                  $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket ");                 socket_connect($socket, $host, $port) or die("Could not connect to server ");                 socket_write($socket, $message, strlen($message)) or die("Could not send data to server ");                  if (false == (@$result = socket_read($socket, 1024))) {                     echo "socket_read() failed: reason: " . socket_strerror(socket_last_error($socket)) . " ";                 }else{                     echo "Svar fra Server  :".$result . " ";                 }                 socket_close($socket);             }         }     ?> </body> </html>   

Server PHP:

  <?php  $host    = "0.0.0.0"; $port    = 4643;  set_time_limit(0);  if (($socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {     echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . " "; }else{     echo "Master socket er oprettet OK "; }  if (socket_bind($socket, $host, $port) === false) {     echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($socket)) . " "; }else{     echo "Binding af port og adresse er OK "; }  if (socket_listen($socket, 5) === false) {     echo "socket_listen() failed: reason: " . socket_strerror(socket_last_error($socket)) . " "; }else{     echo "Lytter for inkommende data OK "; }  while(true){ // lav en ny socket til at håntere komunikation. $spawn = socket_accept($socket) or die("Kan ikke acceptere indkommende data ");   //inputtet fra clienten. //input indeholder dataen der er sendt fra clienten. $input = socket_read($spawn, 1024) or die("Kan ikke lease dataen "); $output = "Denne besked kommer fra serveren.";  echo $input . " MSG er modtaget.";   socket_write($spawn, $output, strlen($output)) or die("Kunne ikke skrive tilbage ");  socket_close($spawn);  }  socket_close($socket); ?>   

Seré grande para cualquier ayuda que pueda obtener, y THX por su tiempo.

Original en ingles

im trying to create a simple socket server. When im running it on localhost everything works just fine.

But when im uploading the socket server to my vps and runs it, it starts the server but nothing happens when it try to write to it. (The client.php runs on localhost, dont know if thats even posible to do).

Client PHP:

<?php  $host = "93.191.155.164"; //localhost: $host = "127.0.0.1";  $port = 4643;  ?>  <html> <head>     <title>Client</title> </head> <body>     <form method="post">         <input type="text" name="input" />         <input type="submit" name="btn" />     </form>     <?php         if(isset($_POST['btn'])){             if($_POST['input'] != ''){                 $message = $_POST['input'];                  $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");                 socket_connect($socket, $host, $port) or die("Could not connect to server\n");                 socket_write($socket, $message, strlen($message)) or die("Could not send data to server\n");                  if (false == (@$result = socket_read($socket, 1024))) {                     echo "socket_read() failed: reason: " . socket_strerror(socket_last_error($socket)) . "\n";                 }else{                     echo "Svar fra Server  :".$result . "\n";                 }                 socket_close($socket);             }         }     ?> </body> </html> 

Server PHP:

<?php  $host    = "0.0.0.0"; $port    = 4643;  set_time_limit(0);  if (($socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {     echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n"; }else{     echo "Master socket er oprettet OK\n"; }  if (socket_bind($socket, $host, $port) === false) {     echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($socket)) . "\n"; }else{     echo "Binding af port og adresse er OK\n"; }  if (socket_listen($socket, 5) === false) {     echo "socket_listen() failed: reason: " . socket_strerror(socket_last_error($socket)) . "\n"; }else{     echo "Lytter for inkommende data OK\n"; }  while(true){ // lav en ny socket til at hxc3xa5ntere komunikation. $spawn = socket_accept($socket) or die("Kan ikke acceptere indkommende data\n");   //inputtet fra clienten. //input indeholder dataen der er sendt fra clienten. $input = socket_read($spawn, 1024) or die("Kan ikke lease dataen\n"); $output = "Denne besked kommer fra serveren.";  echo $input . " MSG er modtaget.";   socket_write($spawn, $output, strlen($output)) or die("Kunne ikke skrive tilbage\n");  socket_close($spawn);  }  socket_close($socket); ?> 

I will be greatefull for any help i can get, and thx for your time.

        

Lista de respuestas

0
 
vote

Estoy bastante seguro de que tienes firewall en su lugar. Trate de ejecutar el cliente en el servidor. Y luego estudiar iptables.

 

I'm quite sure you have firewall in place. Try to run the client on server. And then study iptables.

 
 

Relacionados problema

5  Rubí en los rieles corriendo en una rebanada de VPS  ( Ruby on rails running on a vps slice ) 
¿Cuáles son los principales gotchas y trucos al correr rieles en una pequeña rebanada (256MB)? ¿Cuál es la mejor configuración del servidor para cuartos estre...

4  Contenedor de servlet Java en un pequeño VPS  ( Java servlet container on a small vps ) 
A MIENTRAS GUERDO I Estaba usando un servidor privado virtual (VPS) que tenía una memoria RAM muy limitada. Lo usé para albergar el embarcadero. Fue tan lento...

4  Sube con PaperClip muy lento (unicornio)  ( Upload with paperclip very slow unicorn ) 
Sentado aquí con una aplicación Simple Rails 3 en la que tengo un modelo de galería simple y cada galería tiene muchas imágenes. El modelo de imagen se extien...

-1  Cómo ejecutar la aplicación Nodejs en VPS con Plesk Habilitar  ( How to run nodejs app in vps with plesk enable ) 
Hola, chicos Im Newbie en VPS ... He comprado un OVH no administrado VPS. Me gusta enfrentar problemas ... pero no encuentro ningún documento para estos. Es s...

0  Acceso denegado para archivos propiedad de Apache [CERRADO]  ( Access denied for files owned by apache ) 
cerrado. Esta pregunta es off-topic . Actualmente no está aceptando respuestas. ¿Quieres ...

1  Configuración de NODEJS en Windows VPS  ( Nodejs configuration on windows vps ) 
Soy bastante nuevo para los NODEJS (lo necesito para la aplicación en tiempo real) y obtuve un servidor de Windows VPS 2012 R2 (IP dedicado / estático). Ahora...

0  ¿Cómo instalar NGINX, PHP y Laravel en CENTOS6.9?  ( How to install nginx php and laravel on centos6 9 ) 
He comprado Godaddy VPS Server y, en eso, quiero instalar NGINX, LARIVE y PHP. Estaba tratando de instalar NGINX, estoy recibiendo problema: int tilex = ...

1  En algunos host, 755 es una carpeta grabable y en algunos no es así? ¿Cuáles son los cambios alguna vez deberían hacer de hacer una grabación de 755?  ( In some host 755 is writable folder and in some its not what are the changes o ) 
en algún host 755 es una carpeta grabable y en algunos no es así? ¿Cuáles son los cambios alguna vez deben hacer para hacer de 755 grabables? ¿Es ese proble...

0  Inicie GlassFish Dominio y asignación de memoria (en VPS)  ( Start glassfish domain and memory allocating in vps ) 
Conseguí un VPS y una edición de código abierto de glassfEFV3 descomprimido, mi VPS tiene 650 MB de RAM, cuando intento: sh asadmin start-dominio Tengo un...

0  Implementación de OpenSSL ... ¿Qué me estoy perdiendo?  ( Openssl implementation what am i missing ) 
He estado trabajando muy duro para instalar un Certificado OpenSSL para que mi aplicación web pueda mostrar "HTTPS" hermosa en la URL, ¡sin embargo, no puedo ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos