.30? Wait a moment...
I'd like to propose a radical new notion for releases. Prior to tag, we use perl-framework to actually check that the current server is fully operational [as defined by our wonderful test-dev group!!!] If that passes, tag. Let other platforms run it through the test suite. If they pass, we roll. If noone speaks up for three days after the tag [on a given platform] ohy veh - try again later. The SSL randomness is a showstopper, right now, for tagging .30. We shouldn't be releasing any new segfaults, least of all with something we can test [vis a vie the test suite.] No sense in wasting a perfectly good tag on a perfectly invalid point in code development. Bill
Re: More basics on the perl-framework stuff..
On Sun, 23 Dec 2001, Stas Bekman wrote: That means two different ways to add configuration. yup. because we're doing different things. and for the record: there are already more than 2 ways to add configuration. tho only one to run the CONFIGURE routine. Why cannot we make the .pm scanner more generic? because it was designed to be specific to modperl and it will stay that way. in fact, it might become even more specific to modperl in the future. The magic is not mod_perl specific. most of configure_pm_tests is mod_perl specific. The __DATA__ section can work for non-modperl, so does APACHE_TEST_CONFIGURE. right, which is why i pointed out that we should just run add_module_config() and run_apache_test_config() on these other files, which are generic routines.
Re: [patch] don't complain about old core files
On Mon, 24 Dec 2001, Stas Bekman wrote: this patch: - s/scan/scan_core/ for consistency with warn_core - don't complain aload when an old core from some old run is found (i'm tired of remembering to remove old core files) nice, +1
Re: Running Apache in the foreground
On Fri, Dec 28, 2001 at 05:46:58PM -0800, Aaron Bannert wrote: On Fri, Dec 28, 2001 at 01:16:56PM -0801, Jos Backus wrote: OK, I overreacted, sorry. But the macro names should match. Justin committed a fix for this, let us know if it doesn't work for you. Thank you, I will. -- Jos Backus _/ _/_/_/Santa Clara, CA _/ _/ _/ _/ _/_/_/ _/ _/ _/_/ [EMAIL PROTECTED] _/_/ _/_/_/use Std::Disclaimer;
Re: [PATCH] mod_proxy infinite cpu eating loop
I spent a bit of time looking at this one and I am pretty sure this is not the right patch. The problem is that ap_proxy_string_read() is completely broken. Among other things, it completely chokes if the 'string' spans multiple brigades. ap_proxy_string_read should be trashed and something like this patch should be used instead (not tested): Index: proxy_http.c === RCS file: /home/cvs/httpd-2.0/modules/proxy/proxy_http.c,v retrieving revision 1.114 diff -u -r1.114 proxy_http.c --- proxy_http.c 19 Dec 2001 16:32:01 - 1.114 +++ proxy_http.c 29 Dec 2001 12:57:09 - @@ -657,6 +657,22 @@ while (received_continue) { apr_brigade_cleanup(bb); +while ((len = ap_getline(buffer, sizeof(buffer), rp, 0)) = 0) { +if (len 0) { +/* return status... what? timeout? connection dropped? + * for now, just use what was returned in the original broken code + * set rp-aborted? + */ +apr_socket_close(p_conn-sock); +backend-connection = NULL; +ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r, + proxy: error reading status line from remote + server %s, p_conn-name); +return ap_proxyerror(r, HTTP_BAD_GATEWAY, + Error reading from remote server); +} +} +#if 0 if (APR_SUCCESS != (rv = ap_proxy_string_read(origin, bb, buffer, sizeof(buffer), eos))) { apr_socket_close(p_conn-sock); backend-connection = NULL; @@ -667,7 +683,7 @@ Error reading from remote server); } len = strlen(buffer); - +#endif /* Is it an HTTP/1 response? * This is buggy if we ever see an HTTP/1.10 */ - Original Message - From: Adam Sussman [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, December 28, 2001 8:24 PM Subject: [PATCH] mod_proxy infinite cpu eating loop ap_proxy_string_read currently goes into an infinite loop when the proxied server closes the connection without sending any data. This patch fixes the problem but I am not sure that this is the right way to do it. -adam Index: modules/proxy/proxy_util.c === RCS file: /home/cvspublic/httpd-2.0/modules/proxy/proxy_util.c,v retrieving revision 1.73 diff -u -r1.73 proxy_util.c --- modules/proxy/proxy_util.c 28 Nov 2001 21:07:32 - 1.73 +++ modules/proxy/proxy_util.c 29 Dec 2001 00:14:18 - @@ -1039,6 +1039,7 @@ APR_BUCKET_REMOVE(e); apr_bucket_destroy(e); } +if (APR_BRIGADE_EMPTY(bb)) break; } return APR_SUCCESS; proxy_http.patch Description: Binary data
Re: .30? Wait a moment...
William A. Rowe, Jr. wrote: Prior to tag, we use perl-framework to actually check that the current server is fully operational [as defined by our wonderful test-dev group!!!] I have this running automatically, on a nightly basis, for worker, prefork, and perchild. The tests run on Red Hat 5.2 x86, RH 6.2 Alpha, RH 6.2 x86, and Tru64 UNIX 4.0. I'm going to add AIX and maybe FreeBSD next week. The nightly results are online at URL:http://Source-Zone.Org/Apaceh/regression/. -- #kenP-)} Ken Coar, Sanagendamgagwedweinini http://Golux.Com/coar/ Author, developer, opinionist http://Apache-Server.Com/ All right everyone! Step away from the glowing hamburger!
Re: connections are hanging for 2.0 cvs on Cygwin 1.x (worker mpm)
Yup, it is. So, this isn't just FreeBSD. Good. Or, not so good. This may be our bug. -- justin If you have traced that error, can you point me to the location the code where this is happening and I'll try to check this on the Cygwin platform. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
reg* symbols in OS 10.1 libm???
After removing a duplicate ap_coredump_dir symbol - this is the error I'm left with on OSX building threaded [no such error on worker !?!] Thoughts? Bill /bin/sh /clean/httpd-2.0/srclib/apr/libtool --silent --mode=compile cc -g -O2-DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -traditional-cpp -DAP_HAVE_DESIGNATED_INITIALIZER -I. -I/clean/httpd-2.0/os/unix -I/clean/httpd-2.0/server/mpm/worker -I/clean/httpd-2.0/modules/http -I/clean/httpd-2.0/modules/proxy -I/clean/httpd-2.0/include -I/clean/httpd-2.0/srclib/apr/include -I/clean/httpd-2.0/srclib/apr- util/include -I/clean/httpd-2.0/modules/dav/main -c modules.c touch modules.lo /bin/sh /clean/httpd-2.0/srclib/apr/libtool --silent --mode=link cc -g -O2-DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -traditional-cpp -DAP_HAVE_DESIGNATED_INITIALIZER -I. -I/clean/httpd-2.0/os/unix -I/clean/httpd-2.0/server/mpm/worker -I/clean/httpd-2.0/modules/http -I/clean/httpd-2.0/modules/proxy -I/clean/httpd-2.0/include -I/clean/httpd-2.0/srclib/apr/include -I/clean/httpd-2.0/srclib/apr- util/include -I/clean/httpd-2.0/modules/dav/main -export-dynamic-o httpd modules.lo modules/aaa/mod_access.la modules/aaa/mod_auth.la modules/filters/mod_include.la modules/loggers/mod_log_config.la modules/metadata/mod_env.la modules/metadata/mod_setenvif.la modules/http/mod_http.la modules/http/mod_mime.la modules/generators/mod_status.la modules/generators/mod_autoindex.la modules/generators/mod_asis.la modules/generators/mod_cgid.la modules/mappers/mod_negotiation.la modules/mappers/mod_dir.la modules/mappers/mod_imap.la modules/mappers/mod_actions.la modules/mappers/mod_userdir.la modules/mappers/mod_alias.la modules/mappers/mod_so.la server/mpm/worker/libworker.la server/libmain.la os/unix/libos.la /clean/httpd-2.0/srclib/pcre/libpcre.la /clean/httpd-2.0/srclib/apr- util/libaprutil.la /clean/httpd-2.0/srclib/apr/libapr.la -lm /clean/httpd-2.0/srclib/apr-util/xml/expat/lib/libexpat.la usage: basename string [suffix] usage: basename string [suffix] usage: basename string [suffix] usage: basename string [suffix] usage: basename string [suffix] /usr/bin/ld: multiple definitions of symbol _ap_coredump_dir server/mpm/worker/.libs/libworker.al(worker.lo) definition of _ap_coredump_dir in section (__DATA,__common) server/.libs/libmain.al(mpm_common.lo) definition of _ap_coredump_dir in section (__DATA,__common) /usr/bin/ld: warning multiple definitions of symbol _regcomp /clean/httpd-2.0/srclib/pcre/.libs/libpcre.al(pcreposix.lo) definition of _regcomp in section (__TEXT,__text) /usr/lib/libm.dylib(regcomp.o) definition of _regcomp /usr/bin/ld: warning multiple definitions of symbol _regexec /clean/httpd-2.0/srclib/pcre/.libs/libpcre.al(pcreposix.lo) definition of _regexec in section (__TEXT,__text) /usr/lib/libm.dylib(regexec.o) definition of _regexec /usr/bin/ld: warning multiple definitions of symbol _regfree /clean/httpd-2.0/srclib/pcre/.libs/libpcre.al(pcreposix.lo) definition of _regfree in section (__TEXT,__text) /usr/lib/libm.dylib(regfree.o) definition of _regfree make[1]: *** [httpd] Error 1 make: *** [all-recursive] Error 1
Re: .30? Wait a moment...
From: Rodent of Unusual Size [EMAIL PROTECTED] Sent: Saturday, December 29, 2001 10:02 AM William A. Rowe, Jr. wrote: Prior to tag, we use perl-framework to actually check that the current server is fully operational [as defined by our wonderful test-dev group!!!] I have this running automatically, on a nightly basis, for worker, prefork, and perchild. The tests run on Red Hat 5.2 x86, RH 6.2 Alpha, RH 6.2 x86, and Tru64 UNIX 4.0. I'm going to add AIX and maybe FreeBSD next week. The nightly results are online at URL:http://Source-Zone.Org/Apaceh/regression/. Very nice, thanks! Although if anyone else wants a peek, try this URL instead... URL:http://Source-Zone.Org/Apache/regression/ Well done Ken! Nice to see some 64 bit output in the mix, to let the rest of us help catch some bitness snafus. Bill
Re: related config directives
On Wednesday 26 December 2001 08:10 am, Greg Ames wrote: Ryan Bloom wrote: Since we already know that we need this general ability for some of the auth directives (see John Sterling's posts about some of the problems with AuthType and AuthName), I would much rather have a generic function that will manipulate the tree itself. Swapping things in the config tree breaks if the nodes involved are in different scopes: AuthType basic Directory /docroot/flintstone AuthName Fred /Directory Directory /docroot/rubble AuthName Barney /Directory I think that's a legitimate config. But if we swapped AuthName AuthType, we would destroy it. That shouldn't be a legitimate config IMHO. However, I would suggest that the swap function should only be used to swap things on the same level of the config tree. Ryan __ Ryan Bloom [EMAIL PROTECTED] Covalent Technologies [EMAIL PROTECTED] --
Re: reg* symbols in OS 10.1 libm???
After removing a duplicate ap_coredump_dir symbol - this is the error I'm left with on OSX building threaded [no such error on worker !?!] You're breaking on those? I remember just seeing them as warnings. They are symbol conflicts between the regular expression stuff in the Math library (see regex(3)) and PCRE. Under normal circumstances, PCRE wins and we end up actually using our own symbols. As long as there is no namespace protection or two-level linking (which we shied away from earlier), we're stuck with the existence of multiple symbols. From the man page of ld(1): When creating a output file with the static link editor that links against dynamic libraries, the references to symbols in those libraries can be recorded at static link time to bind to a specific library definition (two-level namespace) or left to be bound at execution time to the first library in the search order of the program (flat namespace). A program, its dynamic libraries and its bun- dles may each be either two-level or flat namespace images. The dynamic linker will bind each image according to how it was built. As far as I have taken the time to figure this out (AFAIHFTO?), the PCRE library is linked statically into httpd, so its symbols don't have to be satisfied at runtime. Feel free to shoot me down on this though. S. -- Covalent Technologies [EMAIL PROTECTED] Engineering groupVoice: (415) 536 5214 645 Howard St. Fax: (415) 536 5210 San Francisco CA 94105 PGP Fingerprint: 1E74 4E58 DFAC 2CF5 6A03 5531 AFB1 96AF B584 0AB1 === This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message ===
Re: reg* symbols in OS 10.1 libm???
From: Sander Temme [EMAIL PROTECTED] Sent: Saturday, December 29, 2001 12:22 PM After removing a duplicate ap_coredump_dir symbol - this is the error I'm left with on OSX building threaded [no such error on worker !?!] You're breaking on those? I remember just seeing them as warnings. It appears you are right, and I didn't purge enough files (nor did the make properly rebuild a few targets automatically) after I fixed the problem with the duplicate ap_coredump_dir symbol. Thanks though! All seems well again. Of course, I had to modify the installed build script for the -flat-namespace cruft, but other than that, no problems {right}. Bill
Re: reg* symbols in OS 10.1 libm???
Thanks though! All seems well again. Of course, I had to modify the installed build script for the -flat-namespace cruft, but other than that, no problems {right}. The -flat_namespace flag is best set inside ltconfig before the libtoolize step. However, for the last two dev tools revisions Apple has not done this, so to use the supplied libtool installation requires a patch to ltconfig: --- /usr/share/libtool/ltconfig.bak Tue Oct 2 17:53:33 2001 +++ /usr/share/libtool/ltconfig Wed Dec 12 22:30:16 2001 @@ -1372,7 +1372,7 @@ ;; darwin* | rhapsody*) -allow_undefined_flag='-undefined warning' +allow_undefined_flag='-undefined warning -flat_namespace' archive_cmds='$CC $(if test .$module = .yes; then echo -bundle; else echo -dynamiclib; fi) $allow_undefined_flag -o $lib $libobjs $deplibs $linkopts' #archive_expsym_cmds=$archive_cmds' strip -s $export_symbols $lib' hardcode_direct=yes I know Fred has filed this as a bug but apparently it hasn't drifted to the surface yet at Apple. S. -- Covalent Technologies [EMAIL PROTECTED] Engineering groupVoice: (415) 536 5214 645 Howard St. Fax: (415) 536 5210 San Francisco CA 94105 PGP Fingerprint: 1E74 4E58 DFAC 2CF5 6A03 5531 AFB1 96AF B584 0AB1 === This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message ===
Re: connections are hanging for 2.0 cvs on Cygwin 1.x (worker mpm)
On Sat, Dec 29, 2001 at 06:10:41PM +0100, Stipe Tolj wrote: Yup, it is. So, this isn't just FreeBSD. Good. Or, not so good. This may be our bug. -- justin If you have traced that error, can you point me to the location the code where this is happening and I'll try to check this on the Cygwin platform. The problem is there is no debug tools on FreeBSD that can follow forks, so I have no idea what is going on. kdump is the only thing I can find and it is too low-level to show any lock calls (which is where I think the problem is). I hope you can find out the problem on Cygwin. -- justin
I'm sorry to ask this.
I am new, and normally i read all the info, then re read it, and then if I have a problem, then i ask you guys, but this question is probable the silliest you have ever seen. I have a webserver, and now I have to use apache in my office to emulate what happens on the web. I installed apache, and it installed pretty well. I installed PHP and the same happened. Aparently it's working, but couldn't really tell, so I opened the browser and typed http://localhost/ and voila, the server is there :) Now I'm trying to start adding our websites to the server, and I cant find it on our HD. I have looked everywhere, located the path where the documentation and localhost/index.html is, but other than that no luck. Can anyone tell me where to move my files to, in order I can see them on the browser? Thanks. Elliot J. Balanza
Re: [PATCH] mod_proxy infinite cpu eating loop
hmm, so I tried out this patch and found that it does work correctly for most cases and it does solve the original infinite loop problem. However, it appears to have introduced a new infinite loop problem as well as some truncation of proxy data. Once status and header data have been read (or attempted to be read in the case of HTTP/0.9), mod_proxy is busy waiting for body content. This shows up as 100% cpu on my setup. The loop where this is happening is based on a non-blocking call to ap_get_brigade() in proxy_http.c:856. Can anyone tell me why this call should not block? In the case of a HTTP/0.9 response, the line feed on the first line (where status is tested) is eaten and never shows up in the output. I suspect that is because of ap_rgetline(). Lastly, proxy_ftp also uses ap_proxy_string_read and will need to be dealt with if we trash that function. -adam On Sat, Dec 29, 2001 at 08:02:32AM -0500, Bill Stoddard wrote: I spent a bit of time looking at this one and I am pretty sure this is not the right patch. The problem is that ap_proxy_string_read() is completely broken. Among other things, it completely chokes if the 'string' spans multiple brigades. ap_proxy_string_read should be trashed and something like this patch should be used instead (not tested): Index: proxy_http.c === RCS file: /home/cvs/httpd-2.0/modules/proxy/proxy_http.c,v retrieving revision 1.114 diff -u -r1.114 proxy_http.c --- proxy_http.c 19 Dec 2001 16:32:01 - 1.114 +++ proxy_http.c 29 Dec 2001 12:57:09 - @@ -657,6 +657,22 @@ while (received_continue) { apr_brigade_cleanup(bb); +while ((len = ap_getline(buffer, sizeof(buffer), rp, 0)) = 0) { +if (len 0) { +/* return status... what? timeout? connection dropped? + * for now, just use what was returned in the original broken code + * set rp-aborted? + */ +apr_socket_close(p_conn-sock); +backend-connection = NULL; +ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r, + proxy: error reading status line from remote + server %s, p_conn-name); +return ap_proxyerror(r, HTTP_BAD_GATEWAY, + Error reading from remote server); +} +} +#if 0 if (APR_SUCCESS != (rv = ap_proxy_string_read(origin, bb, buffer, sizeof(buffer), eos))) { apr_socket_close(p_conn-sock); backend-connection = NULL; @@ -667,7 +683,7 @@ Error reading from remote server); } len = strlen(buffer); - +#endif /* Is it an HTTP/1 response? * This is buggy if we ever see an HTTP/1.10 */ - Original Message - From: Adam Sussman [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, December 28, 2001 8:24 PM Subject: [PATCH] mod_proxy infinite cpu eating loop ap_proxy_string_read currently goes into an infinite loop when the proxied server closes the connection without sending any data. This patch fixes the problem but I am not sure that this is the right way to do it. -adam Index: modules/proxy/proxy_util.c === RCS file: /home/cvspublic/httpd-2.0/modules/proxy/proxy_util.c,v retrieving revision 1.73 diff -u -r1.73 proxy_util.c --- modules/proxy/proxy_util.c 28 Nov 2001 21:07:32 - 1.73 +++ modules/proxy/proxy_util.c 29 Dec 2001 00:14:18 - @@ -1039,6 +1039,7 @@ APR_BUCKET_REMOVE(e); apr_bucket_destroy(e); } +if (APR_BRIGADE_EMPTY(bb)) break; } return APR_SUCCESS; -- I believe in Kadath in the cold waste, and Ultima Thule. But you cannot prove to me that Harvard Law School actually exists. - Theodora Goss I'm not like that, I have a cat, I don't need you.. My cat, and about 18 lines of bourne shell code replace you in life. - anonymous Adam Sussman Vidya Media Ventures [EMAIL PROTECTED]
RE: I'm sorry to ask this.
I am new, and normally i read all the info, then re read it, and then if I have a problem, then i ask you guys, but this question is probable the silliest you have ever seen. There is no need to apologize for asking questions. But you do need to ask them in the right place. In the case of basic configuration questions, the right place is: http://httpd.apache.org/userslist.html Joshua.
Re: connections are hanging for 2.0 cvs on Cygwin 1.x (worker mpm)
On Sat, Dec 29, 2001 at 11:49:10AM -0800, Justin Erenkrantz wrote: The problem is there is no debug tools on FreeBSD that can follow forks, so I have no idea what is going on. kdump is the only thing I can find and it is too low-level to show any lock calls (which is where I think the problem is). What about the -d and -i flags of ktrace? I use those all the time and I am running -current. -- Jos Backus _/ _/_/_/Santa Clara, CA _/ _/ _/ _/ _/_/_/ _/ _/ _/_/ [EMAIL PROTECTED] _/_/ _/_/_/use Std::Disclaimer;
Re: APR_HAS_CREATE_LOCKS_NP not defined where it should be
On Sat, Dec 29, 2001 at 04:48:12PM -0500, Jeff Trawick wrote: I would prefer moving to a situation where the function that allows you to specify the implementation is always available and APR_LOCK_DEFAULT is always available. One way to do that: . get rid of apr_lock_create_np() and apr_proc_mutex_create_np() . add new required parameter to apr_lock_create() and apr_proc_mutex_create() for specifying implementation (expecting most callers to pass APR_LOCK_DEFAULT) This patch would seem to implement this: ++1 (in concept, untested). Let's get this committed, work out the kinks and go with it. -aaron
Re: APR_HAS_CREATE_LOCKS_NP not defined where it should be
Aaron Bannert [EMAIL PROTECTED] writes: On Sat, Dec 29, 2001 at 04:48:12PM -0500, Jeff Trawick wrote: I would prefer moving to a situation where the function that allows you to specify the implementation is always available and APR_LOCK_DEFAULT is always available. One way to do that: . get rid of apr_lock_create_np() and apr_proc_mutex_create_np() . add new required parameter to apr_lock_create() and apr_proc_mutex_create() for specifying implementation (expecting most callers to pass APR_LOCK_DEFAULT) This patch would seem to implement this: ++1 (in concept, untested). Let's get this committed, work out the kinks and go with it. will-do, probably in next half-hour -- Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site: http://www.geocities.com/SiliconValley/Park/9289/ Born in Roswell... married an alien...
Re: cvs commit: httpd-2.0/modules/filters mod_include.c
This patch is wrong. Only text/html output is valid for consideration. Just because no handler has been associated to the handler doesn't mean we should blindly accept the file. Contrawise, even another handler (e.g. PHP) could be xbithacked using the new filtering features. So perhaps this is a better test; if (!r-content_type || strcmp(r-content_type, text/html)) { return DECLINED; } However, I'm of a mind that we should perhaps allow any text/* types that the administrator is interested in to be considered for xbit testing. That would include things like xml content, etc. What about changing the xbithack enable to something like XBitHackByType text/html text/xml text/application-xml or some such? This array could be skimmed in place of this test, and the absense of a match would decline include's xbit-toggled participation in serving the request. Just a thought. Bill - Original Message - From: [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Saturday, December 29, 2001 3:34 PM Subject: cvs commit: httpd-2.0/modules/filters mod_include.c brianp 01/12/29 13:34:04 Modified:modules/filters mod_include.c Log: Fix to make xbithack work again Revision ChangesPath 1.175 +1 -1 httpd-2.0/modules/filters/mod_include.c Index: mod_include.c === RCS file: /home/cvs/httpd-2.0/modules/filters/mod_include.c,v retrieving revision 1.174 retrieving revision 1.175 diff -u -r1.174 -r1.175 --- mod_include.c 28 Dec 2001 17:44:28 - 1.174 +++ mod_include.c 29 Dec 2001 21:34:04 - 1.175 @@ -3220,7 +3220,7 @@ return DECLINED; } -if (!r-handler || strcmp(r-handler, text/html)) { +if (r-handler strcmp(r-handler, text/html)) { return DECLINED; } }
Re: Time for and Apache 2.0 Tag and Roll?
I say commit and we'll review. I've also got a patch that I'll try to get to the list tomorrow once I have time to tidy it up a little. david - Original Message - From: Aaron Bannert [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, December 27, 2001 4:31 PM Subject: Re: Time for and Apache 2.0 Tag and Roll? On Thu, Dec 27, 2001 at 11:24:33AM -0500, Jeff Trawick wrote: Bill Stoddard [EMAIL PROTECTED] writes: I'll tag in a few days if I don't hear any dissent. Hopefully Aaron can get his thread-exit fixes in soon? I can commit them right now if we would prefer C-T-R. -aaron
Re: cvs commit: httpd-2.0/modules/mappers mod_negotiation.c
wrowe 01/12/29 20:14:20 Modified:modules/mappers mod_negotiation.c Log: Introduce the ForceLanguagePriority options; Prefer will circumvent a Multiple Choices by electing the first matching language from the LanaguagePriority list. Fallback will circumvent a None Acceptable by electing the first language found from the LanaguagePriority list. This breaks [expectedly] the negotiation tests. They need review. My test results will be posted to dev. Notice; this patch breaks an earlier [backwards-broken] behavior, which could be reintroduced if folks care. We once served the first listed accept-language when no quality values were present. The essential question is; do we trust the user to list them in order, or do we trust the administrators' list of languages as authoritative? Another side issue that I notice; we should _REALLY_ be presenting MULTIPLE CHOICES rather than serving the smallest file. The smallest file -hack- is exactly that, someone worthless for reasons debated on this list many times. It's better for the site maintainer to observe that one of two files could be served, and do something about it (a better naming convention, or whatever!) Do I hear any agreement? Finally, the promised test is attached. Notice that by default, the french document is smaller than the english, so it wins [again, should have been an MC.] [The choice of Arabic as my not-found case is in no way a slight! We simply don't have a translation of the manual in arabic {yet}, and it's a code I can remember.] The test was constructed with a very simple config; Alias /priority/none c:/Apache2/manual Location /priority/none ForceLanguagePriority None /Location Alias /priority/pre c:/Apache2/manual Location /priority/pre ForceLanguagePriority Prefer /Location Alias /priority/fall c:/Apache2/manual Location /priority/fall ForceLanguagePriority Fallback /Location Alias /priority/prefall c:/Apache2/manual Location /priority/prefall ForceLanguagePriority Prefer Fallback /Location The obvious next change is to the /errors config, I'm changing that now. The ultimate resolution would be internal server Q values for languages, content types, and other variables. I'm not up to that in the next few months, if anyone else thinks that sounds like an interesting project (for themselves to hack), feel free to discuss. Bill HEAD /priority/none/ HTTP/1.1 Host: localhost Accept-Language: ar HTTP/1.1 406 Not Acceptable Date: Sun, 30 Dec 2001 03:47:57 GMT Server: Apache/2.0.30-dev (Win32) DAV/2 mod_ssl/3.0a0 OpenSSL/0.9.6b mod_perl/1.99_01-dev Perl/v5.6.1 Alternates: {index.html.en 1 {type text/html} {language en} {length 9647}}, {index.html.fr 1 {type text/html} {language fr} {length 8490}}, {index.html.ja.jis 1 {type text/html} {charset iso-2022-jp} {language ja} {length 5793}} Vary: negotiate,accept-language,accept-charset TCN: list Content-Type: text/html; charset=iso-8859-1 HEAD /priority/none/ HTTP/1.1 Host: localhost Accept-Language: en,fr HTTP/1.1 200 OK Date: Sun, 30 Dec 2001 03:47:57 GMT Server: Apache/2.0.30-dev (Win32) DAV/2 mod_ssl/3.0a0 OpenSSL/0.9.6b mod_perl/1.99_01-dev Perl/v5.6.1 Content-Location: index.html.fr Vary: negotiate,accept-language,accept-charset TCN: choice Last-Modified: Mon, 24 Sep 2001 21:48:26 GMT ETag: 0-212a-2e3f5e80 Accept-Ranges: bytes Content-Length: 8490 Content-Type: text/html; charset=ISO-8859-1 Content-Language: fr HEAD /priority/none/ HTTP/1.1 Host: localhost Accept-Language: en;q=.3,fr;q=.7 HTTP/1.1 200 OK Date: Sun, 30 Dec 2001 03:47:57 GMT Server: Apache/2.0.30-dev (Win32) DAV/2 mod_ssl/3.0a0 OpenSSL/0.9.6b mod_perl/1.99_01-dev Perl/v5.6.1 Content-Location: index.html.fr Vary: negotiate,accept-language,accept-charset TCN: choice Last-Modified: Mon, 24 Sep 2001 21:48:26 GMT ETag: 0-212a-2e3f5e80 Accept-Ranges: bytes Content-Length: 8490 Content-Type: text/html; charset=ISO-8859-1 Content-Language: fr HEAD /priority/none/ HTTP/1.1 Host: localhost Accept-Language: en;q=.7,fr;q=.3 HTTP/1.1 200 OK Date: Sun, 30 Dec 2001 03:47:57 GMT Server: Apache/2.0.30-dev (Win32) DAV/2 mod_ssl/3.0a0 OpenSSL/0.9.6b mod_perl/1.99_01-dev Perl/v5.6.1 Content-Location: index.html.en Vary: negotiate,accept-language,accept-charset TCN: choice Last-Modified: Mon, 03 Dec 2001 19:50:48 GMT ETag: 0-25af-b2731600 Accept-Ranges: bytes Content-Length: 9647 Content-Type: text/html; charset=ISO-8859-1 Content-Language: en HEAD /priority/pre/ HTTP/1.1 Host: localhost Accept-Language: ar HTTP/1.1 406 Not Acceptable Date: Sun, 30 Dec 2001 03:47:57 GMT Server: Apache/2.0.30-dev (Win32) DAV/2 mod_ssl/3.0a0 OpenSSL/0.9.6b mod_perl/1.99_01-dev Perl/v5.6.1 Alternates: {index.html.en 1 {type text/html} {language en} {length 9647}}, {index.html.fr 1 {type text/html} {language fr} {length 8490}}, {index.html.ja.jis 1 {type text/html} {charset iso-2022-jp} {language ja} {length 5793}} Vary: negotiate,accept-language,accept-charset TCN:
Re: cvs commit: httpd-2.0/docs/conf httpd-nw.conf httpd-std.conf httpd-win.conf
wrowe 01/12/29 21:23:36 Modified:docs/conf httpd-nw.conf httpd-std.conf httpd-win.conf Log: Gotta have an error doc to serve, even if it's not their favorite language. From the http://www.ethnologue.com/ survey of languages, their data is, in descending order [in millions, by primary and pri+sec speakers] EN 341 508 ES 322 417 DE 100 128 FR 77 128 So that's the order I chose, and why. +# ForceLanguagePriority allows you to serve a result page rather than +# MULTIPLE CHOICES (Prefer) [in case of a tie] or NOT ACCEPTABLE (Fallback) +# [in case no accepted languages matched the available variants] +# +ForceLanguagePriority Prefer Fallback + +# I have no strong preference if this should be toggled (one, the other, or both) by default for the entire server. Opinions?
Re: Running Apache in the foreground
On Fri, Dec 28, 2001 at 11:38:01PM -0800, Jos Backus wrote: [massive snippage] So I am really hoping that the Samba people will adopt my patch :-) Update: Jeremy Allison has committed a variation of my patch to the Samba tree. See http://cvs.samba.org/cgi-bin/cvsweb/samba/source/smbd/server.c.diff?r1=1.350r2=1.351f=h -- Jos Backus _/ _/_/_/Santa Clara, CA _/ _/ _/ _/ _/_/_/ _/ _/ _/_/ [EMAIL PROTECTED] _/_/ _/_/_/use Std::Disclaimer;