From: Nick R. <ni...@en...> - 2004-01-06 01:19:47
|
Jim, From the information you provide I'd say the connection *is* being made between Apache and WebWare (from mod_webkit to the application server). At least at the socket level. And likely at the request level too. Your message didn't include any content from the WebWare logs (Logs/{Activity,Errors}.csv) which might be helpful. Also, make sure you've elected all the debug options in the configurations so the application server can provide debug messages. (q.v., line 468 of application.py.) A quick look at the archives tells me you're not alone on this problem, however. I searched on "301." Something like your symptoms have been around since 2000; here's a typical one: -- http://sourceforge.net/mailarchive/message.php?msg_id=1307195 So, the localhost->127.0.0.1 workaround might be working for you. Although I did basic connection tests for the workaround in all combinations of that configuration (in apache, webkit, appserver), I didn't run the test suites. So it may only be a partial w/a. I've moved on in my configuration using the patch I mentioned so it's not convenient to try to match (parts of) your configuration (including IPv6-related configurations for your Apache compile). I *did*, however run the test suite on the patch (provided below in patch(1) format, wrapped a shar(1) archive); but only on my configuration. (So be prepared to patch -R and make; make install.) I'm just new to this too, so I may be missing something obvious. Luckily we're provided with great debugging tools on the application server side ... starting with Python. Also, mod_webkit2.c is a good place to insert debug or tracing messages. Line 420 has a (context-only) instruction just waiting to be uncommented. And the lines immediately after that one offer a template for printing some of the other data related to the request -- which will help you create a context+content tracing. If you decide to apply the patch, you might as well also make a few of these changes. Good luck; let me hear how it goes. Best, --Nick ===========cut from here============== #!/bin/sh # This is a shell archive (produced by GNU sharutils 4.2c). # To extract the files from this archive, save it to some FILE, remove # everything before the `!/bin/sh' line above, then type `sh FILE'. # # Made on 2004-01-05 16:38 PST by <>. # Source directory was `'. # # Existing files will *not* be overwritten unless `-c' is specified. # This format requires very little intelligence at unshar time. # "if test", "echo", "mkdir", and "sed" may be needed. # # This shar contains: # length mode name # ------ ---------- ------------------------------------------ # 1976 -rw-r--r-- patch1 # echo=echo shar_tty= shar_n= shar_c=' ' mkdir _sh29362 || ( echo 'failed to create locking directory' '_sh29362'; exit 1 ) # ============= patch1 ============== if test -f 'patch1' && test "$first_param" != -c; then $echo 'x -' SKIPPING 'patch1' '(file already exists)' else $echo 'x -' extracting 'patch1' '(text)' sed 's/^X//' << 'SHAR_EOF' > 'patch1' && XPatch Webware-0.8.1/WebKit/Adapters/mod_webkit2/mod_webkit.c XFor use on TCP/IPv6-capable host under Apache2 XUntil WebKit is TCP/IPv6 aware, ask Apache2 to prefer IPv4 sockets XNick Ragouzis, 3Jan04 X XApply: save patch file (or email containing patch) to mod_webkit2 dir, as "patch1" X % cd WebKit/Adapters/mod_webkit2 X % patch -N < patch1 X X*** mod_webkit.c Fri Jan 24 02:49:54 2003 X--- mod_webkit_ipv4.c Sat Jan 3 12:00:00 2004 X*************** static const char *handle_wkserver(cmd_p X*** 101,105 **** X if (word1 != NULL) cfg->host = (char*)word1; X if (word2 != NULL) cfg->port = atoi(word2); X! err = apr_sockaddr_info_get(&apraddr, (char*)apr_pstrdup(cmd->server->process->pool, cfg->host), APR_UNSPEC, cfg->port, 0, cmd->server->process->pool); X cfg->apraddr = apraddr; X if (err !=APR_SUCCESS) log_error("Couldn't resolve hostname for WebKit Server", cmd->server); X--- 101,105 ---- X if (word1 != NULL) cfg->host = (char*)word1; X if (word2 != NULL) cfg->port = atoi(word2); X! err = apr_sockaddr_info_get(&apraddr, (char*)apr_pstrdup(cmd->server->process->pool, cfg->host), APR_UNSPEC, cfg->port, APR_IPV4_ADDR_OK, cmd->server->process->pool); /* in trans to IPv6, prefer IPv4 (NR-Nick Ragouzis) */ X cfg->apraddr = apraddr; X if (err !=APR_SUCCESS) log_error("Couldn't resolve hostname for WebKit Server", cmd->server); X*************** static void *webkit_create_dir_config(ap X*** 177,181 **** X // cfg->addr = resolve_host(cfg->host); X X! rv=apr_sockaddr_info_get(&apraddr, cfg->host,APR_UNSPEC, cfg->port, 0, p); X /* X * Now fill in the defaults. If there are any `parent' configuration X--- 177,181 ---- X // cfg->addr = resolve_host(cfg->host); X X! rv=apr_sockaddr_info_get(&apraddr, cfg->host,APR_UNSPEC, cfg->port, APR_IPV4_ADDR_OK, p); /* in trans to IPv6, prefer IPv4 (NR-Nick Ragouzis) */ X /* X * Now fill in the defaults. If there are any `parent' configuration SHAR_EOF : || $echo 'restore of' 'patch1' 'failed' fi $echo $shar_n 'x -' 'lock directory' "\`_sh29362': " $shar_c if rm -fr _sh29362; then $echo 'removed' else $echo 'failed to remove' fi exit 0 ===========cut to here ============== -----Original Message----- From: Jim [mailto:jb...@cn...] Sent: Monday, January 05, 2004 09:14 AM To: Nick Ragouzis Subject: Re: [Webware-discuss] mod_webkit cannot connect using 'localhost'; invokes IPv6 Thanks. I have this same problem. I changed to 127.0.0.1 and now I get this message in the apache error_log. [Mon Jan 05 11:01:29 2004] [debug] mod_webkit.c(73): In webkit_handler [Mon Jan 05 11:01:29 2004] [debug] mod_webkit.c(73): dictionaries built [Mon Jan 05 11:01:29 2004] [debug] mod_webkit.c(73): Status: 301 [Mon Jan 05 11:01:29 2004] [debug] mod_webkit.c(73): In webkit_handler [Mon Jan 05 11:01:29 2004] [debug] mod_webkit.c(73): dictionaries built [Mon Jan 05 11:01:29 2004] [debug] mod_webkit.c(73): Status: 301 ... Mozilla gives the error - Redirection limit for this URL exceeded. |