hola a todos hace un tiempo hice un servidor web(esta incompleto pero tiene una buena funcionalidad) tuve reinventado la rueda un poquito pero tengo una duda con lo que realmente hice aqui va
abri el puerto 80 usando esta sentencia:
new ServerSocket(80); //me omito todo el demas codigo
luego hice algunos manejadores para las conexiones entrantes enviando una pagina de prueba y nada paso pero luego hice esto
new ServerSocket(80,5,InetAddress.getLocalHost());/*creo que esta bien escrito la clase pero lo que hice tome la ip local del pc*/
y hay funciono escribi en mi browser localhost y ahi funciono
ahi esta mi duda que hice realmente porque con uno funciono y no con otro ??
revise el fuente y me sale esto
public ServerSocket(int port, int backlog,InetAddres binadr){
//...
]
public ServerSocket(int port){
//...
}
que es backlog :huh: :huh:
espero que alguien sepa y me ayude
gracias de antemano
PS:y si ademas me puede pasar el protocolo http para poder terminar mi server es que un programa ftp usando http (???) me pide GET http://egyware y no se que devolverle y el browser me pide GET / en ese caso le devuelvo la pag /index.htm
mira lo que pasa es q el segundo constructor, no sólo crea un objeto de ServerSocket si no q además lo pone a escuchar, por el contrario el primer constructor de ServerSocket solo crea un objeto y para que escuche sera algo asi
new ServerSocket(80).accept();
o mas optimamente
ServerSocket servidor=new ServerSocket(80);
servidor.accept();
System.out.println("Conexion recibida de "+servidor.getRemoteAddress());
lo de http no lo tengo pero creo q en wikipedia está.
bueno si le puse eso pero el mozila firebird no leyo mi pagina web de prueba cuando le puse localhost y cuando use el segundo contructor funciono es esa mi duda que onda (osea que paso?? :huh:)
new ServerSocket(80).accept();
y naaninaa pero en otro pc (win vista) me sucedio algo extraño puse algo asi
new ServerSocket(1000).accept();
//otro programa
new Socket("localhost",1000);
//y me conecto
pero.... habia un metodo que ya ni me acuerdo y me devolvio esto
0.0.0.0/0.0.0.0
:¬¬ creo que mi problema es con el protocolo y no con java pero igual tengo la duda en java
y si revise wikipedia sobre http pero no sale lo que busco pero me sirve para mejorar algo