Michiel Boland | 2 Oct 2003 14:34

New beta (Re: A wish for a Mathopd feature)

On Tue, 23 Sep 2003, Steve Gibson wrote:

>
> A feature sometimes offered by HTTP servers is "post dating" the expiration
> of content with the "Expires" header.  The benefit of this for highly
> static content, such as Mathopd is so proficient in delivering, is that
> users' web browsers will then not even bother connecting and issuing
> "If-Modified-Since" requests which require the server to almost always
> return a "304 Not Modified" response.
>
> If an option could be added to specify the number of minutes or hours in
> the future for content expiration, perhaps with wildcards so that certain
> directories or certain content types could be given differing expirations,
> it could make Mathopd perform even faster in many situations.

I have made a new beta with a "ExtraHeaders" keyword so that you can
insert your own "Expires:"  header. (The extra headers must be static, so
it is probably more useful to send a Cache-Control rather than an Expires
header.)

If anyone could try out whether sending expires (or cache-control) headers
actually reduces network traffic, please let me know. I do not have the
means to test this out at the moment.

Cheers
Michiel

Steve Gibson | 5 Oct 2003 22:03

Re: A wish for a Mathopd feature


>I have made a new beta with a "ExtraHeaders" keyword so that you can 
>insert your own "Expires:"  header. (The extra headers must be static, so 
>it is probably more useful to send a Cache-Control rather than an Expires 
>header.)
>
>If anyone could try out whether sending expires (or cache-control) headers 
>actually reduces network traffic, please let me know. I do not have the 
>means to test this out at the moment.

I don't have any direct experience with Mathopd yet, but I can state with 
authority that when I started deliberately post-dating the expiration of my 
active site's <http://grc.com> static images, our incoming bandwidth 
utilization dropped to 1/3rd of what it had been.  There was a 
corresponding, though much smaller, reduction in outgoing bandwidth, and 
our server's average connection count dropped significantly as well.

Looking at our logs, a few browsers appear to ignore the post-dated 
resource expirations, but the huge majority obey it and they completely 
stop issuing conditional "If-Modified-Since" GET requests.  For sites like 
mine with graphical navigation toolbars on every page this can make a huge 
difference.

Thanks for the new "ExtraHeaders" keyword Michiel!

______________________________________________________________________
Steve.

Michiel Boland | 7 Oct 2003 14:20

New beta 1.5b3 with byte-range support (fwd)

Hi.

A new beta has been released at www.mathopd.org. Get it while it's hot.

The new beta now supports - drumroll - the `Range' header, which means
that browsers should now be able to resume a previously interrupted
download, whereas previously they would have to start from scratch.

I have only tested this very briefly with FreeBSD's `fetch' program. I
don't have have an internet connection in the proper sense of the word, so
if everyone can please try the new beta out in the wild and report
anomalies here I would be very grateful. Success stories like `you reduced
my traffic by 50%' are also welcome of course. :)

Currently mathopd does not support multiple byte-ranges per request. That
would require massive rewriting, with no obvious benefit.

Next on the to-do list is support for Chunked encoding. This must surely
be one of the silliest things ever invented, but I'll give it a try.

Cheers
Michiel

Michiel Boland | 14 Oct 2003 15:40

New beta: 1.5b5

Hi.

Majordomo appears to have eaten my announcement for 1.5b4 so we have
jumped straight to b5. As of this version, the phpstub program has been
integrated into mathopd, so it is now possible to run CGI without any
hacks (well, hopefully.)

Cheers
Michiel

Piotr Kasztelowicz | 21 Oct 2003 11:07
Picon

Error at compilation on Solaris 2.6

Hello

I'll compile mathopd 1.4 on Solaris 2.6 (Sun ultrasprac)
with gcc 2.95.2 but such error has been presented

sun:5 ~/src/mathopd-1.4p1/src% make
gcc -c -O -Wall  core.c -o core.o
core.c: In function `accept_connection':
core.c:142: `socklen_t' undeclared (first use in this function)
core.c:142: (Each undeclared identifier is reported only once
core.c:142: for each function it appears in.)
core.c:142: parse error before `lsa'
core.c:147: `lsa' undeclared (first use in this function)
make: *** [core.o] Error 1

Please help :)

Piotr
--
Piotr Kasztelowicz                  Piotr.Kasztelowicz <at> lodz.ptkardio.pl
http://www.am.torun.pl/~pekasz

Mikko Työläjärvi | 21 Oct 2003 14:44

Re: Error at compilation on Solaris 2.6

On Tue, 21 Oct 2003, Piotr Kasztelowicz wrote:

> Hello
>
> I'll compile mathopd 1.4 on Solaris 2.6 (Sun ultrasprac)
> with gcc 2.95.2 but such error has been presented
>
> sun:5 ~/src/mathopd-1.4p1/src% make
> gcc -c -O -Wall  core.c -o core.o
> core.c: In function `accept_connection':
> core.c:142: `socklen_t' undeclared (first use in this function)
> core.c:142: (Each undeclared identifier is reported only once
> core.c:142: for each function it appears in.)
> core.c:142: parse error before `lsa'
> core.c:147: `lsa' undeclared (first use in this function)
> make: *** [core.o] Error 1
>
> Please help :)

Solaris 2.6 is old...  Try compiling with -Dsocklen_t=int

  $.02,
  /Mikko

Michiel Boland | 22 Oct 2003 11:43

Re: Error at compilation on Solaris 2.6

> Hello
>
> I'll compile mathopd 1.4 on Solaris 2.6 (Sun ultrasprac)
> with gcc 2.95.2 but such error has been presented

Uncomment the line with NEED_SOCKLEN_T in the makefile.

Cheers
Michiel

Piotr Kasztelowicz | 23 Oct 2003 12:20
Picon

Log analizer for mathopd

Hello

I'm seeking a log analizer provided directly for mathopd without
necesseirty to convert it by mattoclf.

Piotr
--
Piotr Kasztelowicz                  Piotr.Kasztelowicz <at> lodz.ptkardio.pl
http://www.am.torun.pl/~pekasz

Frank Tobin | 23 Oct 2003 14:42

Re: Log analizer for mathopd

Piotr Kasztelowicz, on 2003-10-23, wrote:

> I'm seeking a log analizer provided directly for mathopd without
> necesseirty to convert it by mattoclf.

Why directly?  webalizer is great analyzer, and the conversion is trivial.
Surely it would be wasteful for any log analyer to analyze mathopd logs
directly, given that a conversion layer is so cheap.

--

-- 
Frank Tobin			http://www.neverending.org/~ftobin/

michiel | 25 Oct 2003 21:41

new beta released

Hi.

After a lot of fiddling I have come up with a new release: 1.5b6. Get it
at www.mathopd.org.

The new beta has a MAJOR advantage over all previous releases. I think
everyone should give this a try. Mathopd now uses chunked encoding for CGI
script output, unless the CGI script itself sends a Content-Length header,
or the client does not speak HTTP/1.1. This means that connections can now
be reused after a request that uses CGI/external scripts.

Lots of care has gone in to this version, but I suspect that there might
still be bugs in it. But we shall never know the bugs of course if nobody
runs any tests. So that is why I invite everyone once again to thoroughly
test this beastie out.

Cheers
Michiel


Gmane