I notice Filter::HTTPD uses the exported function, url(), from URI::URL. Well, the version of HTTP::Request isn't happy with it anymore, probably because I upgraded my libwww-perl.
This fix seems to work, at least with full URLs. I haven't tested anything weird with it yet (line 124 latest POE CVS of Filter::HTTPD.pm): use URI(); my $r = HTTP::Request->new($1, URI->new($2)); $r->protocol($proto); Before, it would barf with this (from HTTP:::Request): "Carp::croak("Can't use a " . ref($uri) . " object as a URI") unless $uri->can('scheme');" I guess URI::URL doesn't support 'scheme'. The docs don't mention anything about the source has no reference to it. URI() has 'scheme', though. Actually, the docs for URI::URL seem to indicate indirectly that usage of it is becoming depreciated in favor of URI(): "This module is provided for backwards compatibility with modules that depend on the interface provided by the "URI::URL" class that used to be distributed with the lib- www-perl library."