1241 lines
36 KiB
HTML
1241 lines
36 KiB
HTML
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML><HEAD><TITLE>Man page of URI</TITLE>
|
|
</HEAD><BODY>
|
|
<H1>URI</H1>
|
|
Section: User Contributed Perl Documentation (3pm)<BR>Updated: 2020-02-08<BR><A HREF="#index">Index</A>
|
|
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<A NAME="lbAB"> </A>
|
|
<H2>NAME</H2>
|
|
|
|
URI - Uniform Resource Identifiers (absolute and relative)
|
|
<A NAME="lbAC"> </A>
|
|
<H2>SYNOPSIS</H2>
|
|
|
|
|
|
|
|
|
|
|
|
<PRE>
|
|
use URI;
|
|
|
|
$u1 = URI->new("<A HREF="http://www.perl.com">http://www.perl.com</A>");
|
|
$u2 = URI->new("foo", "http");
|
|
$u3 = $u2->abs($u1);
|
|
$u4 = $u3->clone;
|
|
$u5 = URI->new("HTTP://WWW.perl.com:80")->canonical;
|
|
|
|
$str = $u->as_string;
|
|
$str = "$u";
|
|
|
|
$scheme = $u->scheme;
|
|
$opaque = $u->opaque;
|
|
$path = $u->path;
|
|
$frag = $u->fragment;
|
|
|
|
$u->scheme("ftp");
|
|
$u->host("<A HREF="ftp://ftp.perl.com">ftp.perl.com</A>");
|
|
$u->path("cpan/");
|
|
|
|
</PRE>
|
|
|
|
|
|
<A NAME="lbAD"> </A>
|
|
<H2>DESCRIPTION</H2>
|
|
|
|
|
|
|
|
This module implements the <TT>"URI"</TT> class. Objects of this class
|
|
represent ``Uniform Resource Identifier references'' as specified in <FONT SIZE="-1">RFC
|
|
2396</FONT> (and updated by <FONT SIZE="-1">RFC 2732</FONT>).
|
|
<P>
|
|
|
|
A Uniform Resource Identifier is a compact string of characters that
|
|
identifies an abstract or physical resource. A Uniform Resource
|
|
Identifier can be further classified as either a Uniform Resource Locator
|
|
(<FONT SIZE="-1">URL</FONT>) or a Uniform Resource Name (<FONT SIZE="-1">URN</FONT>). The distinction between <FONT SIZE="-1">URL</FONT>
|
|
and <FONT SIZE="-1">URN</FONT> does not matter to the <TT>"URI"</TT> class interface. A
|
|
``URI-reference'' is a <FONT SIZE="-1">URI</FONT> that may have additional information attached
|
|
in the form of a fragment identifier.
|
|
<P>
|
|
|
|
An absolute <FONT SIZE="-1">URI</FONT> reference consists of three parts: a <I>scheme</I>, a
|
|
<I>scheme-specific part</I> and a <I>fragment</I> identifier. A subset of <FONT SIZE="-1">URI</FONT>
|
|
references share a common syntax for hierarchical namespaces. For
|
|
these, the scheme-specific part is further broken down into
|
|
<I>authority</I>, <I>path</I> and <I>query</I> components. These URIs can also
|
|
take the form of relative <FONT SIZE="-1">URI</FONT> references, where the scheme (and
|
|
usually also the authority) component is missing, but implied by the
|
|
context of the <FONT SIZE="-1">URI</FONT> reference. The three forms of <FONT SIZE="-1">URI</FONT> reference
|
|
syntax are summarized as follows:
|
|
<P>
|
|
|
|
|
|
|
|
<PRE>
|
|
<scheme>:<scheme-specific-part>#<fragment>
|
|
<scheme>://<authority><path>?<query>#<fragment>
|
|
<path>?<query>#<fragment>
|
|
|
|
</PRE>
|
|
|
|
|
|
<P>
|
|
|
|
The components into which a <FONT SIZE="-1">URI</FONT> reference can be divided depend on the
|
|
<I>scheme</I>. The <TT>"URI"</TT> class provides methods to get and set the
|
|
individual components. The methods available for a specific
|
|
<TT>"URI"</TT> object depend on the scheme.
|
|
<A NAME="lbAE"> </A>
|
|
<H2>CONSTRUCTORS</H2>
|
|
|
|
|
|
|
|
The following methods construct new <TT>"URI"</TT> objects:
|
|
<DL COMPACT>
|
|
<DT id="1">$uri = <FONT SIZE="-1">URI-</FONT>>new( $str )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="2">$uri = <FONT SIZE="-1">URI-</FONT>>new( $str, $scheme )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Constructs a new <FONT SIZE="-1">URI</FONT> object. The string
|
|
representation of a <FONT SIZE="-1">URI</FONT> is given as argument, together with an optional
|
|
scheme specification. Common <FONT SIZE="-1">URI</FONT> wrappers like "" and <>, as well as
|
|
leading and trailing white space, are automatically removed from
|
|
the <TT>$str</TT> argument before it is processed further.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The constructor determines the scheme, maps this to an appropriate
|
|
<FONT SIZE="-1">URI</FONT> subclass, constructs a new object of that class and returns it.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
If the scheme isn't one of those that <FONT SIZE="-1">URI</FONT> recognizes, you still get
|
|
an <FONT SIZE="-1">URI</FONT> object back that you can access the generic methods on. The
|
|
<TT>"$uri->has_recognized_scheme"</TT> method can be used to test for
|
|
this.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The <TT>$scheme</TT> argument is only used when <TT>$str</TT> is a
|
|
relative <FONT SIZE="-1">URI.</FONT> It can be either a simple string that
|
|
denotes the scheme, a string containing an absolute <FONT SIZE="-1">URI</FONT> reference, or
|
|
an absolute <TT>"URI"</TT> object. If no <TT>$scheme</TT> is specified for a relative
|
|
<FONT SIZE="-1">URI</FONT> <TT>$str</TT>, then <TT>$str</TT> is simply treated as a generic <FONT SIZE="-1">URI</FONT> (no scheme-specific
|
|
methods available).
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The set of characters available for building <FONT SIZE="-1">URI</FONT> references is
|
|
restricted (see URI::Escape). Characters outside this set are
|
|
automatically escaped by the <FONT SIZE="-1">URI</FONT> constructor.
|
|
<DT id="3">$uri = <FONT SIZE="-1">URI-</FONT>>new_abs( $str, $base_uri )<DD>
|
|
|
|
|
|
|
|
|
|
Constructs a new absolute <FONT SIZE="-1">URI</FONT> object. The <TT>$str</TT> argument can
|
|
denote a relative or absolute <FONT SIZE="-1">URI.</FONT> If relative, then it is
|
|
absolutized using <TT>$base_uri</TT> as base. The <TT>$base_uri</TT> must be an absolute
|
|
<FONT SIZE="-1">URI.</FONT>
|
|
<DT id="4">$uri = URI::file->new( $filename )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="5">$uri = URI::file->new( $filename, $os )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Constructs a new <I>file</I> <FONT SIZE="-1">URI</FONT> from a file name. See URI::file.
|
|
<DT id="6">$uri = URI::file->new_abs( $filename )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="7">$uri = URI::file->new_abs( $filename, $os )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Constructs a new absolute <I>file</I> <FONT SIZE="-1">URI</FONT> from a file name. See
|
|
URI::file.
|
|
<DT id="8">$uri = URI::file->cwd<DD>
|
|
|
|
|
|
|
|
|
|
Returns the current working directory as a <I>file</I> <FONT SIZE="-1">URI.</FONT> See
|
|
URI::file.
|
|
<DT id="9">$uri->clone<DD>
|
|
|
|
|
|
|
|
|
|
Returns a copy of the <TT>$uri</TT>.
|
|
</DL>
|
|
<A NAME="lbAF"> </A>
|
|
<H2>COMMON METHODS</H2>
|
|
|
|
|
|
|
|
The methods described in this section are available for all <TT>"URI"</TT>
|
|
objects.
|
|
<P>
|
|
|
|
Methods that give access to components of a <FONT SIZE="-1">URI</FONT> always return the
|
|
old value of the component. The value returned is <TT>"undef"</TT> if the
|
|
component was not present. There is generally a difference between a
|
|
component that is empty (represented as <TT>""</TT>) and a component that is
|
|
missing (represented as <TT>"undef"</TT>). If an accessor method is given an
|
|
argument, it updates the corresponding component in addition to
|
|
returning the old value of the component. Passing an undefined
|
|
argument removes the component (if possible). The description of
|
|
each accessor method indicates whether the component is passed as
|
|
an escaped (percent-encoded) or an unescaped string. A component that can be further
|
|
divided into sub-parts are usually passed escaped, as unescaping might
|
|
change its semantics.
|
|
<P>
|
|
|
|
The common methods available for all <FONT SIZE="-1">URI</FONT> are:
|
|
<DL COMPACT>
|
|
<DT id="10">$uri->scheme<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="11">$uri->scheme( $new_scheme )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the scheme part of the <TT>$uri</TT>. If the <TT>$uri</TT> is
|
|
relative, then <TT>$uri</TT>->scheme returns <TT>"undef"</TT>. If called with an
|
|
argument, it updates the scheme of <TT>$uri</TT>, possibly changing the
|
|
class of <TT>$uri</TT>, and returns the old scheme value. The method croaks
|
|
if the new scheme name is illegal; a scheme name must begin with a
|
|
letter and must consist of only US-ASCII letters, numbers, and a few
|
|
special marks: ``.'', ``+'', ``-''. This restriction effectively means
|
|
that the scheme must be passed unescaped. Passing an undefined
|
|
argument to the scheme method makes the <FONT SIZE="-1">URI</FONT> relative (if possible).
|
|
|
|
|
|
<P>
|
|
|
|
|
|
Letter case does not matter for scheme names. The string
|
|
returned by <TT>$uri</TT>->scheme is always lowercase. If you want the scheme
|
|
just as it was written in the <FONT SIZE="-1">URI</FONT> in its original case,
|
|
you can use the <TT>$uri</TT>->_scheme method instead.
|
|
<DT id="12">$uri->has_recognized_scheme<DD>
|
|
|
|
|
|
|
|
|
|
Returns <FONT SIZE="-1">TRUE</FONT> if the <FONT SIZE="-1">URI</FONT> scheme is one that <FONT SIZE="-1">URI</FONT> recognizes.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
It will also be <FONT SIZE="-1">TRUE</FONT> for relative URLs where a recognized
|
|
scheme was provided to the constructor, even if <TT>"$uri->scheme"</TT>
|
|
returns <TT>"undef"</TT> for these.
|
|
<DT id="13">$uri->opaque<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="14">$uri->opaque( $new_opaque )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the scheme-specific part of the <TT>$uri</TT>
|
|
(everything between the scheme and the fragment)
|
|
as an escaped string.
|
|
<DT id="15">$uri->path<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="16">$uri->path( $new_path )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the same value as <TT>$uri</TT>->opaque unless the <FONT SIZE="-1">URI</FONT>
|
|
supports the generic syntax for hierarchical namespaces.
|
|
In that case the generic method is overridden to set and return
|
|
the part of the <FONT SIZE="-1">URI</FONT> between the <I>host name</I> and the <I>fragment</I>.
|
|
<DT id="17">$uri->fragment<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="18">$uri->fragment( $new_frag )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Returns the fragment identifier of a <FONT SIZE="-1">URI</FONT> reference
|
|
as an escaped string.
|
|
<DT id="19">$uri->as_string<DD>
|
|
|
|
|
|
|
|
|
|
Returns a <FONT SIZE="-1">URI</FONT> object to a plain <FONT SIZE="-1">ASCII</FONT> string. <FONT SIZE="-1">URI</FONT> objects are
|
|
also converted to plain strings automatically by overloading. This
|
|
means that <TT>$uri</TT> objects can be used as plain strings in most Perl
|
|
constructs.
|
|
<DT id="20">$uri->as_iri<DD>
|
|
|
|
|
|
|
|
|
|
Returns a Unicode string representing the <FONT SIZE="-1">URI.</FONT> Escaped <FONT SIZE="-1">UTF-8</FONT> sequences
|
|
representing non-ASCII characters are turned into their corresponding Unicode
|
|
code point.
|
|
<DT id="21">$uri->canonical<DD>
|
|
|
|
|
|
|
|
|
|
Returns a normalized version of the <FONT SIZE="-1">URI.</FONT> The rules
|
|
for normalization are scheme-dependent. They usually involve
|
|
lowercasing the scheme and Internet host name components,
|
|
removing the explicit port specification if it matches the default port,
|
|
uppercasing all escape sequences, and unescaping octets that can be
|
|
better represented as plain characters.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
For efficiency reasons, if the <TT>$uri</TT> is already in normalized form,
|
|
then a reference to it is returned instead of a copy.
|
|
<DT id="22">$uri->eq( $other_uri )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="23">URI::eq( $first_uri, $other_uri )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Tests whether two <FONT SIZE="-1">URI</FONT> references are equal. <FONT SIZE="-1">URI</FONT> references
|
|
that normalize to the same string are considered equal. The method
|
|
can also be used as a plain function which can also test two string
|
|
arguments.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
If you need to test whether two <TT>"URI"</TT> object references denote the
|
|
same object, use the '==' operator.
|
|
<DT id="24">$uri->abs( $base_uri )<DD>
|
|
|
|
|
|
|
|
|
|
Returns an absolute <FONT SIZE="-1">URI</FONT> reference. If <TT>$uri</TT> is already
|
|
absolute, then a reference to it is simply returned. If the <TT>$uri</TT>
|
|
is relative, then a new absolute <FONT SIZE="-1">URI</FONT> is constructed by combining the
|
|
<TT>$uri</TT> and the <TT>$base_uri</TT>, and returned.
|
|
<DT id="25">$uri->rel( $base_uri )<DD>
|
|
|
|
|
|
|
|
|
|
Returns a relative <FONT SIZE="-1">URI</FONT> reference if it is possible to
|
|
make one that denotes the same resource relative to <TT>$base_uri</TT>.
|
|
If not, then <TT>$uri</TT> is simply returned.
|
|
<DT id="26">$uri->secure<DD>
|
|
|
|
|
|
|
|
|
|
Returns a <FONT SIZE="-1">TRUE</FONT> value if the <FONT SIZE="-1">URI</FONT> is considered to point to a resource on
|
|
a secure channel, such as an <FONT SIZE="-1">SSL</FONT> or <FONT SIZE="-1">TLS</FONT> encrypted one.
|
|
</DL>
|
|
<A NAME="lbAG"> </A>
|
|
<H2>GENERIC METHODS</H2>
|
|
|
|
|
|
|
|
The following methods are available to schemes that use the
|
|
common/generic syntax for hierarchical namespaces. The descriptions of
|
|
schemes below indicate which these are. Unrecognized schemes are
|
|
assumed to support the generic syntax, and therefore the following
|
|
methods:
|
|
<DL COMPACT>
|
|
<DT id="27">$uri->authority<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="28">$uri->authority( $new_authority )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the escaped authority component
|
|
of the <TT>$uri</TT>.
|
|
<DT id="29">$uri->path<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="30">$uri->path( $new_path )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the escaped path component of
|
|
the <TT>$uri</TT> (the part between the host name and the query or fragment).
|
|
The path can never be undefined, but it can be the empty string.
|
|
<DT id="31">$uri->path_query<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="32">$uri->path_query( $new_path_query )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the escaped path and query
|
|
components as a single entity. The path and the query are
|
|
separated by a ``?'' character, but the query can itself contain ``?''.
|
|
<DT id="33">$uri->path_segments<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="34">$uri->path_segments( $segment, ... )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the path. In a scalar context, it returns
|
|
the same value as <TT>$uri</TT>->path. In a list context, it returns the
|
|
unescaped path segments that make up the path. Path segments that
|
|
have parameters are returned as an anonymous array. The first element
|
|
is the unescaped path segment proper; subsequent elements are escaped
|
|
parameter strings. Such an anonymous array uses overloading so it can
|
|
be treated as a string too, but this string does not include the
|
|
parameters.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
Note that absolute paths have the empty string as their first
|
|
<I>path_segment</I>, i.e. the <I>path</I> <TT>"/foo/bar"</TT> have 3
|
|
<I>path_segments</I>; "``, ''foo`` and ''bar".
|
|
<DT id="35">$uri->query<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="36">$uri->query( $new_query )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the escaped query component of
|
|
the <TT>$uri</TT>.
|
|
<DT id="37">$uri->query_form<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="38">$uri->query_form( $key1 => $val1, $key2 => $val2, ... )<DD>
|
|
|
|
|
|
|
|
|
|
<DT id="39">$uri->query_form( $key1 => $val1, $key2 => $val2, ..., $delim )<DD>
|
|
|
|
|
|
|
|
|
|
<DT id="40">$uri->query_form( \@key_value_pairs )<DD>
|
|
|
|
|
|
|
|
|
|
<DT id="41">$uri->query_form( \@key_value_pairs, $delim )<DD>
|
|
|
|
|
|
|
|
|
|
<DT id="42">$uri->query_form( \%hash )<DD>
|
|
|
|
|
|
|
|
|
|
<DT id="43">$uri->query_form( \%hash, $delim )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns query components that use the
|
|
<I>application/x-www-form-urlencoded</I> format. Key/value pairs are
|
|
separated by ``&'', and the key is separated from the value by a ``=''
|
|
character.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The form can be set either by passing separate key/value pairs, or via
|
|
an array or hash reference. Passing an empty array or an empty hash
|
|
removes the query component, whereas passing no arguments at all leaves
|
|
the component unchanged. The order of keys is undefined if a hash
|
|
reference is passed. The old value is always returned as a list of
|
|
separate key/value pairs. Assigning this list to a hash is unwise as
|
|
the keys returned might repeat.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The values passed when setting the form can be plain strings or
|
|
references to arrays of strings. Passing an array of values has the
|
|
same effect as passing the key repeatedly with one value at a time.
|
|
All the following statements have the same effect:
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
|
|
<PRE>
|
|
$uri->query_form(foo => 1, foo => 2);
|
|
$uri->query_form(foo => [1, 2]);
|
|
$uri->query_form([ foo => 1, foo => 2 ]);
|
|
$uri->query_form([ foo => [1, 2] ]);
|
|
$uri->query_form({ foo => [1, 2] });
|
|
|
|
</PRE>
|
|
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The <TT>$delim</TT> parameter can be passed as ``;'' to force the key/value pairs
|
|
to be delimited by ``;'' instead of ``&'' in the query string. This
|
|
practice is often recommended for URLs embedded in <FONT SIZE="-1">HTML</FONT> or <FONT SIZE="-1">XML</FONT>
|
|
documents as this avoids the trouble of escaping the ``&'' character.
|
|
You might also set the <TT>$URI::DEFAULT_QUERY_FORM_DELIMITER</TT> variable to
|
|
``;'' for the same global effect.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The <TT>"URI::QueryParam"</TT> module can be loaded to add further methods to
|
|
manipulate the form of a <FONT SIZE="-1">URI.</FONT> See URI::QueryParam for details.
|
|
<DT id="44">$uri->query_keywords<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="45">$uri->query_keywords( $keywords, ... )<DD>
|
|
|
|
|
|
|
|
|
|
<DT id="46">$uri->query_keywords( \@keywords )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns query components that use the
|
|
keywords separated by ``+'' format.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The keywords can be set either by passing separate keywords directly
|
|
or by passing a reference to an array of keywords. Passing an empty
|
|
array removes the query component, whereas passing no arguments at
|
|
all leaves the component unchanged. The old value is always returned
|
|
as a list of separate words.
|
|
</DL>
|
|
<A NAME="lbAH"> </A>
|
|
<H2>SERVER METHODS</H2>
|
|
|
|
|
|
|
|
For schemes where the <I>authority</I> component denotes an Internet host,
|
|
the following methods are available in addition to the generic
|
|
methods.
|
|
<DL COMPACT>
|
|
<DT id="47">$uri->userinfo<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="48">$uri->userinfo( $new_userinfo )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the escaped userinfo part of the
|
|
authority component.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
For some schemes this is a user name and a password separated by
|
|
a colon. This practice is not recommended. Embedding passwords in
|
|
clear text (such as <FONT SIZE="-1">URI</FONT>) has proven to be a security risk in almost
|
|
every case where it has been used.
|
|
<DT id="49">$uri->host<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="50">$uri->host( $new_host )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the unescaped hostname.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
If the <TT>$new_host</TT> string ends with a colon and a number, then this
|
|
number also sets the port.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
For IPv6 addresses the brackets around the raw address is removed in the return
|
|
value from <TT>$uri</TT>->host. When setting the host attribute to an IPv6 address you
|
|
can use a raw address or one enclosed in brackets. The address needs to be
|
|
enclosed in brackets if you want to pass in a new port value as well.
|
|
<DT id="51">$uri->ihost<DD>
|
|
|
|
|
|
|
|
|
|
Returns the host in Unicode form. Any <FONT SIZE="-1">IDNA</FONT> A-labels are turned into U-labels.
|
|
<DT id="52">$uri->port<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="53">$uri->port( $new_port )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the port. The port is a simple integer
|
|
that should be greater than 0.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
If a port is not specified explicitly in the <FONT SIZE="-1">URI,</FONT> then the <FONT SIZE="-1">URI</FONT> scheme's default port
|
|
is returned. If you don't want the default port
|
|
substituted, then you can use the <TT>$uri</TT>->_port method instead.
|
|
<DT id="54">$uri->host_port<DD>
|
|
|
|
|
|
|
|
|
|
|
|
<DT id="55">$uri->host_port( $new_host_port )<DD>
|
|
|
|
|
|
|
|
|
|
|
|
Sets and returns the host and port as a single
|
|
unit. The returned value includes a port, even if it matches the
|
|
default port. The host part and the port part are separated by a
|
|
colon: ``:''.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
For IPv6 addresses the bracketing is preserved; thus
|
|
<FONT SIZE="-1">URI-</FONT>>new(``<A HREF="http://[::1]/'')-">http://[::1]/'')-</A>>host_port returns ``[::1]:80''. Contrast this with
|
|
<TT>$uri</TT>->host which will remove the brackets.
|
|
<DT id="56">$uri->default_port<DD>
|
|
|
|
|
|
|
|
|
|
Returns the default port of the <FONT SIZE="-1">URI</FONT> scheme to which <TT>$uri</TT>
|
|
belongs. For <I>http</I> this is the number 80, for <I>ftp</I> this
|
|
is the number 21, etc. The default port for a scheme can not be
|
|
changed.
|
|
</DL>
|
|
<A NAME="lbAI"> </A>
|
|
<H2>SCHEME-SPECIFIC SUPPORT</H2>
|
|
|
|
|
|
|
|
Scheme-specific support is provided for the following <FONT SIZE="-1">URI</FONT> schemes. For <TT>"URI"</TT>
|
|
objects that do not belong to one of these, you can only use the common and
|
|
generic methods.
|
|
<DL COMPACT>
|
|
<DT id="57"><B>data</B>:<DD>
|
|
|
|
|
|
The <I>data</I> <FONT SIZE="-1">URI</FONT> scheme is specified in <FONT SIZE="-1">RFC 2397.</FONT> It allows inclusion
|
|
of small data items as ``immediate'' data, as if it had been included
|
|
externally.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the data scheme support the common methods
|
|
and two new methods to access their scheme-specific components:
|
|
<TT>$uri</TT>->media_type and <TT>$uri</TT>->data. See URI::data for details.
|
|
<DT id="58"><B>file</B>:<DD>
|
|
|
|
|
|
An old specification of the <I>file</I> <FONT SIZE="-1">URI</FONT> scheme is found in <FONT SIZE="-1">RFC 1738.
|
|
A</FONT> new <FONT SIZE="-1">RFC 2396</FONT> based specification in not available yet, but file <FONT SIZE="-1">URI</FONT>
|
|
references are in common use.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the file scheme support the common and
|
|
generic methods. In addition, they provide two methods for mapping file URIs
|
|
back to local file names; <TT>$uri</TT>->file and <TT>$uri</TT>->dir. See URI::file
|
|
for details.
|
|
<DT id="59"><B>ftp</B>:<DD>
|
|
|
|
|
|
An old specification of the <I>ftp</I> <FONT SIZE="-1">URI</FONT> scheme is found in <FONT SIZE="-1">RFC 1738.</FONT> A
|
|
new <FONT SIZE="-1">RFC 2396</FONT> based specification in not available yet, but ftp <FONT SIZE="-1">URI</FONT>
|
|
references are in common use.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the ftp scheme support the common,
|
|
generic and server methods. In addition, they provide two methods for
|
|
accessing the userinfo sub-components: <TT>$uri</TT>->user and <TT>$uri</TT>->password.
|
|
<DT id="60"><B>gopher</B>:<DD>
|
|
|
|
|
|
The <I>gopher</I> <FONT SIZE="-1">URI</FONT> scheme is specified in
|
|
<draft-murali-url-gopher-1996-12-04> and will hopefully be available
|
|
as a <FONT SIZE="-1">RFC 2396</FONT> based specification.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the gopher scheme support the common,
|
|
generic and server methods. In addition, they support some methods for
|
|
accessing gopher-specific path components: <TT>$uri</TT>->gopher_type,
|
|
<TT>$uri</TT>->selector, <TT>$uri</TT>->search, <TT>$uri</TT>->string.
|
|
<DT id="61"><B>http</B>:<DD>
|
|
|
|
|
|
The <I>http</I> <FONT SIZE="-1">URI</FONT> scheme is specified in <FONT SIZE="-1">RFC 2616.</FONT>
|
|
The scheme is used to reference resources hosted by <FONT SIZE="-1">HTTP</FONT> servers.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the http scheme support the common,
|
|
generic and server methods.
|
|
<DT id="62"><B>https</B>:<DD>
|
|
|
|
|
|
The <I>https</I> <FONT SIZE="-1">URI</FONT> scheme is a Netscape invention which is commonly
|
|
implemented. The scheme is used to reference <FONT SIZE="-1">HTTP</FONT> servers through <FONT SIZE="-1">SSL</FONT>
|
|
connections. Its syntax is the same as http, but the default
|
|
port is different.
|
|
<DT id="63"><B>ldap</B>:<DD>
|
|
|
|
|
|
The <I>ldap</I> <FONT SIZE="-1">URI</FONT> scheme is specified in <FONT SIZE="-1">RFC 2255.</FONT> <FONT SIZE="-1">LDAP</FONT> is the
|
|
Lightweight Directory Access Protocol. An ldap <FONT SIZE="-1">URI</FONT> describes an <FONT SIZE="-1">LDAP</FONT>
|
|
search operation to perform to retrieve information from an <FONT SIZE="-1">LDAP</FONT>
|
|
directory.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the ldap scheme support the common,
|
|
generic and server methods as well as ldap-specific methods: <TT>$uri</TT>->dn,
|
|
<TT>$uri</TT>->attributes, <TT>$uri</TT>->scope, <TT>$uri</TT>->filter, <TT>$uri</TT>->extensions. See
|
|
URI::ldap for details.
|
|
<DT id="64"><B>ldapi</B>:<DD>
|
|
|
|
|
|
Like the <I>ldap</I> <FONT SIZE="-1">URI</FONT> scheme, but uses a <FONT SIZE="-1">UNIX</FONT> domain socket. The
|
|
server methods are not supported, and the local socket path is
|
|
available as <TT>$uri</TT>->un_path. The <I>ldapi</I> scheme is used by the
|
|
OpenLDAP package. There is no real specification for it, but it is
|
|
mentioned in various OpenLDAP manual pages.
|
|
<DT id="65"><B>ldaps</B>:<DD>
|
|
|
|
|
|
Like the <I>ldap</I> <FONT SIZE="-1">URI</FONT> scheme, but uses an <FONT SIZE="-1">SSL</FONT> connection. This
|
|
scheme is deprecated, as the preferred way is to use the <I>start_tls</I>
|
|
mechanism.
|
|
<DT id="66"><B>mailto</B>:<DD>
|
|
|
|
|
|
The <I>mailto</I> <FONT SIZE="-1">URI</FONT> scheme is specified in <FONT SIZE="-1">RFC 2368.</FONT> The scheme was
|
|
originally used to designate the Internet mailing address of an
|
|
individual or service. It has (in <FONT SIZE="-1">RFC 2368</FONT>) been extended to allow
|
|
setting of other mail header fields and the message body.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the mailto scheme support the common
|
|
methods and the generic query methods. In addition, they support the
|
|
following mailto-specific methods: <TT>$uri</TT>->to, <TT>$uri</TT>->headers.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
Note that the ``<A HREF="mailto:foo@example.com">foo@example.com</A>'' part of a mailto is <I>not</I> the
|
|
<TT>"userinfo"</TT> and <TT>"host"</TT> but instead the <TT>"path"</TT>. This allows a
|
|
mailto <FONT SIZE="-1">URI</FONT> to contain multiple comma separated email addresses.
|
|
<DT id="67"><B>mms</B>:<DD>
|
|
|
|
|
|
The <I>mms</I> <FONT SIZE="-1">URL</FONT> specification can be found at <<A HREF="http://sdp.ppona.com/">http://sdp.ppona.com/</A>>.
|
|
<TT>"URI"</TT> objects belonging to the mms scheme support the common,
|
|
generic, and server methods, with the exception of userinfo and
|
|
query-related sub-components.
|
|
<DT id="68"><B>news</B>:<DD>
|
|
|
|
|
|
The <I>news</I>, <I>nntp</I> and <I>snews</I> <FONT SIZE="-1">URI</FONT> schemes are specified in
|
|
<draft-gilman-news-url-01> and will hopefully be available as an <FONT SIZE="-1">RFC
|
|
2396</FONT> based specification soon.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the news scheme support the common,
|
|
generic and server methods. In addition, they provide some methods to
|
|
access the path: <TT>$uri</TT>->group and <TT>$uri</TT>->message.
|
|
<DT id="69"><B>nntp</B>:<DD>
|
|
|
|
|
|
See <I>news</I> scheme.
|
|
<DT id="70"><B>pop</B>:<DD>
|
|
|
|
|
|
The <I>pop</I> <FONT SIZE="-1">URI</FONT> scheme is specified in <FONT SIZE="-1">RFC 2384.</FONT> The scheme is used to
|
|
reference a <FONT SIZE="-1">POP3</FONT> mailbox.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the pop scheme support the common, generic
|
|
and server methods. In addition, they provide two methods to access the
|
|
userinfo components: <TT>$uri</TT>->user and <TT>$uri</TT>->auth
|
|
<DT id="71"><B>rlogin</B>:<DD>
|
|
|
|
|
|
An old specification of the <I>rlogin</I> <FONT SIZE="-1">URI</FONT> scheme is found in <FONT SIZE="-1">RFC
|
|
1738.</FONT> <TT>"URI"</TT> objects belonging to the rlogin scheme support the
|
|
common, generic and server methods.
|
|
<DT id="72"><B>rtsp</B>:<DD>
|
|
|
|
|
|
The <I>rtsp</I> <FONT SIZE="-1">URL</FONT> specification can be found in section 3.2 of <FONT SIZE="-1">RFC 2326.</FONT>
|
|
<TT>"URI"</TT> objects belonging to the rtsp scheme support the common,
|
|
generic, and server methods, with the exception of userinfo and
|
|
query-related sub-components.
|
|
<DT id="73"><B>rtspu</B>:<DD>
|
|
|
|
|
|
The <I>rtspu</I> <FONT SIZE="-1">URI</FONT> scheme is used to talk to <FONT SIZE="-1">RTSP</FONT> servers over <FONT SIZE="-1">UDP</FONT>
|
|
instead of <FONT SIZE="-1">TCP.</FONT> The syntax is the same as rtsp.
|
|
<DT id="74"><B>rsync</B>:<DD>
|
|
|
|
|
|
Information about rsync is available from <<A HREF="http://rsync.samba.org/">http://rsync.samba.org/</A>>.
|
|
<TT>"URI"</TT> objects belonging to the rsync scheme support the common,
|
|
generic and server methods. In addition, they provide methods to
|
|
access the userinfo sub-components: <TT>$uri</TT>->user and <TT>$uri</TT>->password.
|
|
<DT id="75"><B>sip</B>:<DD>
|
|
|
|
|
|
The <I>sip</I> <FONT SIZE="-1">URI</FONT> specification is described in sections 19.1 and 25
|
|
of <FONT SIZE="-1">RFC 3261.</FONT> <TT>"URI"</TT> objects belonging to the sip scheme support the
|
|
common, generic, and server methods with the exception of path related
|
|
sub-components. In addition, they provide two methods to get and set
|
|
<I>sip</I> parameters: <TT>$uri</TT>->params_form and <TT>$uri</TT>->params.
|
|
<DT id="76"><B>sips</B>:<DD>
|
|
|
|
|
|
See <I>sip</I> scheme. Its syntax is the same as sip, but the default
|
|
port is different.
|
|
<DT id="77"><B>snews</B>:<DD>
|
|
|
|
|
|
See <I>news</I> scheme. Its syntax is the same as news, but the default
|
|
port is different.
|
|
<DT id="78"><B>telnet</B>:<DD>
|
|
|
|
|
|
An old specification of the <I>telnet</I> <FONT SIZE="-1">URI</FONT> scheme is found in <FONT SIZE="-1">RFC
|
|
1738.</FONT> <TT>"URI"</TT> objects belonging to the telnet scheme support the
|
|
common, generic and server methods.
|
|
<DT id="79"><B>tn3270</B>:<DD>
|
|
|
|
|
|
These URIs are used like <I>telnet</I> URIs but for connections to <FONT SIZE="-1">IBM</FONT>
|
|
mainframes. <TT>"URI"</TT> objects belonging to the tn3270 scheme support the
|
|
common, generic and server methods.
|
|
<DT id="80"><B>ssh</B>:<DD>
|
|
|
|
|
|
Information about ssh is available at <<A HREF="http://www.openssh.com/">http://www.openssh.com/</A>>.
|
|
<TT>"URI"</TT> objects belonging to the ssh scheme support the common,
|
|
generic and server methods. In addition, they provide methods to
|
|
access the userinfo sub-components: <TT>$uri</TT>->user and <TT>$uri</TT>->password.
|
|
<DT id="81"><B>sftp</B>:<DD>
|
|
|
|
|
|
<TT>"URI"</TT> objects belonging to the sftp scheme support the common,
|
|
generic and server methods. In addition, they provide methods to
|
|
access the userinfo sub-components: <TT>$uri</TT>->user and <TT>$uri</TT>->password.
|
|
<DT id="82"><B>urn</B>:<DD>
|
|
|
|
|
|
The syntax of Uniform Resource Names is specified in <FONT SIZE="-1">RFC 2141.</FONT> <TT>"URI"</TT>
|
|
objects belonging to the urn scheme provide the common methods, and also the
|
|
methods <TT>$uri</TT>->nid and <TT>$uri</TT>->nss, which return the Namespace Identifier
|
|
and the Namespace-Specific String respectively.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
The Namespace Identifier basically works like the Scheme identifier of
|
|
URIs, and further divides the <FONT SIZE="-1">URN</FONT> namespace. Namespace Identifier
|
|
assignments are maintained at
|
|
<<A HREF="http://www.iana.org/assignments/urn-namespaces">http://www.iana.org/assignments/urn-namespaces</A>>.
|
|
|
|
|
|
<P>
|
|
|
|
|
|
Letter case is not significant for the Namespace Identifier. It is
|
|
always returned in lower case by the <TT>$uri</TT>->nid method. The <TT>$uri</TT>->_nid
|
|
method can be used if you want it in its original case.
|
|
<DT id="83"><B>urn</B>:<B>isbn</B>:<DD>
|
|
|
|
|
|
The <TT>"urn:isbn:"</TT> namespace contains International Standard Book
|
|
Numbers (ISBNs) and is described in <FONT SIZE="-1">RFC 3187.</FONT> A <TT>"URI"</TT> object belonging
|
|
to this namespace has the following extra methods (if the
|
|
Business::ISBN module is available): <TT>$uri</TT>->isbn,
|
|
<TT>$uri</TT>->isbn_publisher_code, <TT>$uri</TT>->isbn_group_code (formerly isbn_country_code,
|
|
which is still supported by issues a deprecation warning), <TT>$uri</TT>->isbn_as_ean.
|
|
<DT id="84"><B>urn</B>:<B>oid</B>:<DD>
|
|
|
|
|
|
The <TT>"urn:oid:"</TT> namespace contains Object Identifiers (OIDs) and is
|
|
described in <FONT SIZE="-1">RFC 3061.</FONT> An object identifier consists of sequences of digits
|
|
separated by dots. A <TT>"URI"</TT> object belonging to this namespace has an
|
|
additional method called <TT>$uri</TT>->oid that can be used to get/set the oid
|
|
value. In a list context, oid numbers are returned as separate elements.
|
|
</DL>
|
|
<A NAME="lbAJ"> </A>
|
|
<H2>CONFIGURATION VARIABLES</H2>
|
|
|
|
|
|
|
|
The following configuration variables influence how the class and its
|
|
methods behave:
|
|
<DL COMPACT>
|
|
<DT id="85">$URI::ABS_ALLOW_RELATIVE_SCHEME<DD>
|
|
|
|
|
|
|
|
|
|
Some older parsers used to allow the scheme name to be present in the
|
|
relative <FONT SIZE="-1">URL</FONT> if it was the same as the base <FONT SIZE="-1">URL</FONT> scheme. <FONT SIZE="-1">RFC 2396</FONT> says
|
|
that this should be avoided, but you can enable this old behaviour by
|
|
setting the <TT>$URI::ABS_ALLOW_RELATIVE_SCHEME</TT> variable to a <FONT SIZE="-1">TRUE</FONT> value.
|
|
The difference is demonstrated by the following examples:
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
|
|
<PRE>
|
|
URI->new("http:foo")->abs("<A HREF="http://host/a/b">http://host/a/b</A>")
|
|
==> "http:foo"
|
|
|
|
local $URI::ABS_ALLOW_RELATIVE_SCHEME = 1;
|
|
URI->new("http:foo")->abs("<A HREF="http://host/a/b">http://host/a/b</A>")
|
|
==> "http:/host/a/foo"
|
|
|
|
</PRE>
|
|
|
|
|
|
<DT id="86">$URI::ABS_REMOTE_LEADING_DOTS<DD>
|
|
|
|
|
|
|
|
|
|
You can also have the <B>abs()</B> method ignore excess ``..''
|
|
segments in the relative <FONT SIZE="-1">URI</FONT> by setting <TT>$URI::ABS_REMOTE_LEADING_DOTS</TT>
|
|
to a <FONT SIZE="-1">TRUE</FONT> value. The difference is demonstrated by the following
|
|
examples:
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
|
|
<PRE>
|
|
URI->new("../../../foo")->abs("<A HREF="http://host/a/b">http://host/a/b</A>")
|
|
==> "<A HREF="http://host/../../foo">http://host/../../foo</A>"
|
|
|
|
local $URI::ABS_REMOTE_LEADING_DOTS = 1;
|
|
URI->new("../../../foo")->abs("<A HREF="http://host/a/b">http://host/a/b</A>")
|
|
==> "<A HREF="http://host/foo">http://host/foo</A>"
|
|
|
|
</PRE>
|
|
|
|
|
|
<DT id="87">$URI::DEFAULT_QUERY_FORM_DELIMITER<DD>
|
|
|
|
|
|
|
|
|
|
This value can be set to ``;'' to have the query form <TT>"key=value"</TT> pairs
|
|
delimited by ``;'' instead of ``&'' which is the default.
|
|
</DL>
|
|
<A NAME="lbAK"> </A>
|
|
<H2>BUGS</H2>
|
|
|
|
|
|
|
|
There are some things that are not quite right:
|
|
<DL COMPACT>
|
|
<DT id="88">•<DD>
|
|
Using regexp variables like <TT>$1</TT> directly as arguments to the <FONT SIZE="-1">URI</FONT> accessor methods
|
|
does not work too well with current perl implementations. I would argue
|
|
that this is actually a bug in perl. The workaround is to quote
|
|
them. Example:
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
|
|
<PRE>
|
|
/(...)/ || die;
|
|
$u->query("$1");
|
|
|
|
</PRE>
|
|
|
|
|
|
<DT id="89">•<DD>
|
|
The escaping (percent encoding) of chars in the 128 .. 255 range passed to the
|
|
<FONT SIZE="-1">URI</FONT> constructor or when setting <FONT SIZE="-1">URI</FONT> parts using the accessor methods depend on
|
|
the state of the internal <FONT SIZE="-1">UTF8</FONT> flag (see utf8::is_utf8) of the string passed.
|
|
If the <FONT SIZE="-1">UTF8</FONT> flag is set the <FONT SIZE="-1">UTF-8</FONT> encoded version of the character is percent
|
|
encoded. If the <FONT SIZE="-1">UTF8</FONT> flag isn't set the Latin-1 version (byte) of the
|
|
character is percent encoded. This basically exposes the internal encoding of
|
|
Perl strings.
|
|
</DL>
|
|
<A NAME="lbAL"> </A>
|
|
<H2>PARSING URIs WITH REGEXP</H2>
|
|
|
|
|
|
|
|
As an alternative to this module, the following (official) regular
|
|
expression can be used to decode a <FONT SIZE="-1">URI:</FONT>
|
|
<P>
|
|
|
|
|
|
|
|
<PRE>
|
|
my($scheme, $authority, $path, $query, $fragment) =
|
|
$uri =~ m|(?:([^:/?#]+):)?(?://([^/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?|;
|
|
|
|
</PRE>
|
|
|
|
|
|
<P>
|
|
|
|
The <TT>"URI::Split"</TT> module provides the function <B>uri_split()</B> as a
|
|
readable alternative.
|
|
<A NAME="lbAM"> </A>
|
|
<H2>SEE ALSO</H2>
|
|
|
|
|
|
|
|
URI::file, URI::WithBase, URI::QueryParam, URI::Escape,
|
|
URI::Split, URI::Heuristic
|
|
<P>
|
|
|
|
<FONT SIZE="-1">RFC 2396:</FONT> ``Uniform Resource Identifiers (<FONT SIZE="-1">URI</FONT>): Generic Syntax'',
|
|
Berners-Lee, Fielding, Masinter, August 1998.
|
|
<P>
|
|
|
|
<<A HREF="http://www.iana.org/assignments/uri-schemes">http://www.iana.org/assignments/uri-schemes</A>>
|
|
<P>
|
|
|
|
<<A HREF="http://www.iana.org/assignments/urn-namespaces">http://www.iana.org/assignments/urn-namespaces</A>>
|
|
<P>
|
|
|
|
<<A HREF="http://www.w3.org/Addressing/">http://www.w3.org/Addressing/</A>>
|
|
<A NAME="lbAN"> </A>
|
|
<H2>COPYRIGHT</H2>
|
|
|
|
|
|
|
|
Copyright 1995-2009 Gisle Aas.
|
|
<P>
|
|
|
|
Copyright 1995 Martijn Koster.
|
|
<P>
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the same terms as Perl itself.
|
|
<A NAME="lbAO"> </A>
|
|
<H2>AUTHORS / ACKNOWLEDGMENTS</H2>
|
|
|
|
|
|
|
|
This module is based on the <TT>"URI::URL"</TT> module, which in turn was
|
|
(distantly) based on the <TT>"wwwurl.pl"</TT> code in the libwww-perl for
|
|
perl4 developed by Roy Fielding, as part of the Arcadia project at the
|
|
University of California, Irvine, with contributions from Brooks
|
|
Cutter.
|
|
<P>
|
|
|
|
<TT>"URI::URL"</TT> was developed by Gisle Aas, Tim Bunce, Roy Fielding and
|
|
Martijn Koster with input from other people on the libwww-perl mailing
|
|
list.
|
|
<P>
|
|
|
|
<TT>"URI"</TT> and related subclasses was developed by Gisle Aas.
|
|
<P>
|
|
|
|
<HR>
|
|
<A NAME="index"> </A><H2>Index</H2>
|
|
<DL>
|
|
<DT id="90"><A HREF="#lbAB">NAME</A><DD>
|
|
<DT id="91"><A HREF="#lbAC">SYNOPSIS</A><DD>
|
|
<DT id="92"><A HREF="#lbAD">DESCRIPTION</A><DD>
|
|
<DT id="93"><A HREF="#lbAE">CONSTRUCTORS</A><DD>
|
|
<DT id="94"><A HREF="#lbAF">COMMON METHODS</A><DD>
|
|
<DT id="95"><A HREF="#lbAG">GENERIC METHODS</A><DD>
|
|
<DT id="96"><A HREF="#lbAH">SERVER METHODS</A><DD>
|
|
<DT id="97"><A HREF="#lbAI">SCHEME-SPECIFIC SUPPORT</A><DD>
|
|
<DT id="98"><A HREF="#lbAJ">CONFIGURATION VARIABLES</A><DD>
|
|
<DT id="99"><A HREF="#lbAK">BUGS</A><DD>
|
|
<DT id="100"><A HREF="#lbAL">PARSING URIs WITH REGEXP</A><DD>
|
|
<DT id="101"><A HREF="#lbAM">SEE ALSO</A><DD>
|
|
<DT id="102"><A HREF="#lbAN">COPYRIGHT</A><DD>
|
|
<DT id="103"><A HREF="#lbAO">AUTHORS / ACKNOWLEDGMENTS</A><DD>
|
|
</DL>
|
|
<HR>
|
|
This document was created by
|
|
<A HREF="/cgi-bin/man/man2html">man2html</A>,
|
|
using the manual pages.<BR>
|
|
Time: 00:05:59 GMT, March 31, 2021
|
|
</BODY>
|
|
</HTML>
|