From: Michael M. <ya...@au...> - 2005-04-25 04:33:30
|
I have yaws running just fine on both port 80 and port 443. I can access both http:// and https:// with a browser doing a GET. The appmod I have running works with POST data (Arg#arg.clidata). I am accessing the appmod using an Erlang client from another machine across the Internet and it works great when I use port 80. For example, http://myserver.example.com/apppath but if I access using httpS://myserver.example.com/apppath then I receive the error {error,session_remotly_closed} at my Erlang client. QUESTIONS: 1) any suggestions for troubleshooting? 2) is the data passed to an appmod already decrypted when yaws passes the Arg record? 3) are there certain header settings I need to send when I access yaws from my Erlang client (that is, to make ssl work) thanks for any suggestions, ~Michael P.S. I can send an =ERROR REPORT==== if needed |
From: Claes W. <kl...@gm...> - 2005-04-25 14:26:04
|
Hi, On 4/25/05, Michael McDaniel <ya...@au...> wrote: > I have yaws running just fine on both port 80 and port 443. > I can access both http:// and https:// with a browser doing > a GET. >=20 > The appmod I have running works with POST data (Arg#arg.clidata). >=20 > I am accessing the appmod using an Erlang client from another machine > across the Internet and it works great when I use port 80. > For example, http://myserver.example.com/apppath but if I access > using httpS://myserver.example.com/apppath then I receive > the error {error,session_remotly_closed} at my Erlang client. >=20 > QUESTIONS: > 1) any suggestions for troubleshooting? Make sure the Erlang client talks correct HTTP Make sure certs are ok. Try to # openssl s_client to the https server to rule out any problems with the=20 erlang http client. I don't really trust the code in the erlang http client. It has crashed on me a couple of times. If openssl s_client works, talk HTTP by hand through the s_client "shell" I.e type: GET / HTTP/1.0 in the s_client shell Turn on tracing in the server, both HTTP and also traffic trace=20 might be interesting. As a last resort, recompile the server as 'make debug' This typically produces enormous amounts of developer only output. > 2) is the data passed to an appmod already decrypted when yaws passes > the Arg record? Absolutely, all decryption is already done then. > 3) are there certain header settings I need to send when I access yaws > from my Erlang client (that is, to make ssl work) >=20 No, it should work even without any headers at all.=20 > thanks for any suggestions, >=20 > ~Michael > P.S. I can send an =3DERROR REPORT=3D=3D=3D=3D if needed >=20 Yes, post any relevant error reports. And finally, there are bugs in the erlang ssl implementation which are POST related: A fix has been posted on erlang-questions for esock.c Large POSTs just get truncated/dropped/broken ... --- esock.c~ 2004-09-14 14:02:44.000000000 +0200 +++ esock.c 2005-04-07 11:25:43.068624336 +0200 @@ -138,7 +138,7 @@ #define MAJOR_VERSION 2 #define MINOR_VERSION 0 #define MAXREPLYBUF 256 -#define RWBUFLEN 4096 +#define RWBUFLEN (32*1024) #define IS_CLIENT 0 #define IS_SERVER 1 #define SELECT_TIMEOUT 2 /* seconds */ /klacke |
From: Michael M. <ya...@au...> - 2005-04-25 18:32:43
|
On Mon, Apr 25, 2005 at 04:26:00PM +0200, Claes Wikstrom wrote: > Hi, > > > On 4/25/05, Michael McDaniel <ya...@au...> wrote: > > I have yaws running just fine on both port 80 and port 443. > > I can access both http:// and https:// with a browser doing > > a GET. > > > > The appmod I have running works with POST data (Arg#arg.clidata). > > > > I am accessing the appmod using an Erlang client from another machine > > across the Internet and it works great when I use port 80. > > For example, http://myserver.example.com/apppath but if I access > > using httpS://myserver.example.com/apppath then I receive > > the error {error,session_remotly_closed} at my Erlang client. > > > > QUESTIONS: > > 1) any suggestions for troubleshooting? > > Make sure the Erlang client talks correct HTTP > > Make sure certs are ok. Try to > > # openssl s_client > > to the https server to rule out any problems with the > erlang http client. I don't really trust the code in the erlang > http client. It has crashed on me a couple of times. > > If openssl s_client works, talk HTTP by hand through the > s_client "shell" > I.e type: > > GET / HTTP/1.0 > > in the s_client shell > > Turn on tracing in the server, both HTTP and also traffic trace > might be interesting. > > As a last resort, recompile the server as 'make debug' > This typically produces enormous amounts of developer only > output. > > > > 2) is the data passed to an appmod already decrypted when yaws passes > > the Arg record? > > Absolutely, all decryption is already done then. > > > 3) are there certain header settings I need to send when I access yaws > > from my Erlang client (that is, to make ssl work) > > > > No, it should work even without any headers at all. > > thanks for any suggestions, > > > > ~Michael > > P.S. I can send an =ERROR REPORT==== if needed > > > > Yes, post any relevant error reports. > > > And finally, there are bugs in the erlang ssl implementation which are POST > related: A fix has been posted on erlang-questions for esock.c > Large POSTs just get truncated/dropped/broken ... > > > --- esock.c~ 2004-09-14 14:02:44.000000000 +0200 > +++ esock.c 2005-04-07 11:25:43.068624336 +0200 > @@ -138,7 +138,7 @@ > #define MAJOR_VERSION 2 > #define MINOR_VERSION 0 > #define MAXREPLYBUF 256 > -#define RWBUFLEN 4096 > +#define RWBUFLEN (32*1024) > #define IS_CLIENT 0 > #define IS_SERVER 1 > #define SELECT_TIMEOUT 2 /* seconds */ > > > /klacke ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Thank you very much - I will try the items you suggest and send the =ERROR REPORT==== I just got called to a client site and this will have to wait. Darn, this is much more fun! ~~Michael |