          WWWOFFLE - World Wide Web Offline Explorer - Version 2.9
          ========================================================

The configuration file 'wwwoffle.conf' has had a number of changes made to it in
recent versions.  This file lists the conversion that you need to apply to
convert existing configuration files (from version 1.3 onwards) to make them
work with the current version.

More details about any of the sections in the configuration file can be found in
the README.CONF file.


Automatic Configuration File Upgrading [Requires Perl]
======================================

The configuration file can be automatically changed by using the supplied perl
script upgrade-config.pl.  This makes any changes from version 2.6 to the latest
version, other programs can make changes from any version 2.x config files, but
not from a version 1.x config file.

  Usage: upgrade-config.pl [(conf-dir)/]wwwoffle.conf

The named configuration file is moved to wwwoffle.conf.old in the same directory
and a new file of the same name is created that contains the updated
configuration options.  If there is a file called wwwoffle.conf.install in
either the current directory or in the configuration directory (as there will be
if you do a 'make install') then the comments from that file are used in the new
file, otherwise no comments are used as they would be wrong and confusing.


Changes From Version 2.9f to Version 2.9g
=========================================

CensorHeader
------------

    New in version 2.9g
    -------------------

[<URL-SPEC>] pass-url-unchanged = yes | no
        Forces WWWOFFLE to ignore the requirements on the correct formatting of
        URLs and to pass through to the server the URL that was passed to it by
        the browser (default=no).


Changes From Version 2.9e to Version 2.9f
=========================================

SSLOptions
----------

    New in version 2.9f
    -------------------

quick-key-gen   = yes | no
expiration-time = 1y



Changes From Version 2.9 to Version 2.9a
========================================

ModifyHTML
----------

    New in version 2.9a
    -------------------

[<URL-SPEC>] disable-iframe = yes | no



Changes From Version 2.8e to Version 2.9
========================================

StartUp
-------

    New in version 2.9
    ------------------

    https-port = (port)


Options
-------

    Removed in version 2.9
    ----------------------

    ssl-allow-port = (integer)


OnlineOptions
-------------

    New in version 2.9
    ------------------

    [<URL-SPEC>] cookies-force-refresh = yes | no


SSLOptions
----------

    New in version 2.9
    ------------------

    enable-caching = yes | no

    allow-tunnel    = (host:[port])
    disallow-tunnel = (host:[port])

    allow-cache    = (host:[port])
    disallow-cache = (host:[port])

    [The host and port options allow wildcard matching]



Changes From Version 2.8d to Version 2.8e
=========================================

OnlineOptions
-------------

    New in version 2.8e
    -------------------

    [<URL-SPEC>] cache-control-max-age-0 = yes | no


OfflineOptions
--------------

    New in version 2.8e
    -------------------

    [<URL-SPEC>] cache-control-max-age-0 = yes | no



Changes From Version 2.8c to Version 2.8d
=========================================

ModifyHTML
----------

    New in version 2.8d
    -------------------

    [<URL-SPEC>] disable-marquee = yes | no

    [<URL-SPEC>] fix-mixed-cyrillic = yes | no



Changes From Version 2.8a to Version 2.8b
=========================================

OnlineOptions
-------------

    New in version 2.8b
    -------------------

    [<URL-SPEC>] keep-cache-if-not-found = no



Changes From Version 2.7g to Version 2.8
========================================

Options
-------

    New in version 2.8
    ------------------

    reply-chunked-data = yes | no


OnlineOptions
-------------

    New in version 2.8
    ------------------

    [<URL-SPEC>] pragma-no-cache = yes | no

    [<URL-SPEC>] cache-control-no-cache = yes | no

    [<URL-SPEC>] request-conditional = yes | no

    [<URL-SPEC>] validate-with-etag = yes | no

    [<URL-SPEC>] request-chunked-data = yes | no


FetchOptions
------------

    New in version 2.8
    ------------------

    [<URL-SPEC>] icon-images = yes | no


ModifyHTML
----------

    Removed in version 2.8
    ----------------------

    enable-modify-online = yes | no

    New in version 2.8
    ------------------

    [<URL-SPEC>] disable-meta-set-cookie = yes | no


CensorHeader
------------

    New in version 2.8
    ------------------

    [<URL-SPEC>] force-user-agent = yes | no



Changes From Version 2.7e to Version 2.7g
=========================================

OfflineOptions
--------------

    New in version 2.7g
    -------------------

    [<URL-SPEC>] cache-control-no-cache = yes | no


IndexOptions
------------

    Version 2.7f Was                    Version 2.7g Is
    ----------------                    ---------------

    no-lasttime-index = yes | no        create-history-indexes = yes | no

    The meaning of this item is reversed and the default values also reversed.



Changes From Version 2.7b to Version 2.7e
=========================================

FetchOptions
------------

    New in version 2.7e
    -------------------

    [<URL-SPEC>] only-same-host-images = yes | no



Changes From Version 2.7a to Version 2.7b
=========================================

Options
-------

    New in version 2.7b
    -------------------

    exec-cgi = (pathname)



Changes From Version 2.6d to Version 2.7
========================================

OnlineOptions
-------------

    New in version 2.7
    ------------------

    [<URL-SPEC>] request-redirection = yes | no


FetchOptions
------------

    Version 2.6d Was                    Version 2.7 Is
    ----------------                    --------------

    stylesheets = yes | no              [<URL-SPEC>] stylesheets = yes | no
    images = yes | no                   [<URL-SPEC>] images = yes | no
    webbug-images = yes | no            [<URL-SPEC>] webbug-images = yes | no
    frames = yes | no                   [<URL-SPEC>] frames = yes | no
    scripts = yes | no                  [<URL-SPEC>] scripts = yes | no
    objects = yes | no                  [<URL-SPEC>] objects = yes | no


ModifyHTML
----------

    New in version 2.7
    ------------------

    [<URL-SPEC>] disable-dontget-iframes = yes | no
    [<URL-SPEC>] disable-flash           = yes | no


IndexOptions
------------

    New in version 2.7
    ------------------

    cycle-indexes-daily = yes | no



Changes From Version 2.6c to Version 2.6d
=========================================

StartUp
-------

    New in version 2.6d
    -------------------

    bind-ipv4 = (hostname) | (ip-address) | none
    bind-ipv6 = (hostname) | (ip-address) | none



Changes From Version 2.6b to Version 2.6c
=========================================

FetchOptions
------------

    New in version 2.6c
    -------------------

    webbug-images = yes | no


ModifyHTML
----------

    New in version 2.6c
    -------------------

    [<URL-SPEC>] disable-applet = yes | no
    [<URL-SPEC>] disable-style  = yes | no

    [<URL-SPEC>] disable-dontget-links  = yes | no
    [<URL-SPEC>] replace-dontget-images = yes | no
    [<URL-SPEC>] replacement-dontget-image = (URL)

    [<URL-SPEC>] replace-webbug-images    = yes | no
    [<URL-SPEC>] replacement-webbug-image = (URL)



Changes From Version 2.6 to Version 2.6b
========================================

DontCompress
------------

    New section in version 2.6b
    ---------------------------

    mime-type = (mime-type)/(subtype)
    file-ext = .(file-ext)


Options
-------

    New in version 2.6b
    -------------------

    reply-compressed-data = yes | no


OnlineOptions
-------------

    New in version 2.6b
    -------------------

    [<URL-SPEC>] request-compressed-data = yes | no


Purge
-----

    New in version 2.6b
    -------------------

    [<URL-SPEC>] compress-age = (age)



Changes From Version 2.5 to Version 2.6
=======================================

StartUp
-------

The following options have been moved to the Options section.

        dir-perm, file-perm, run-online, run-offline, run-autodial.

Options
-------

The following options have been moved to the new OnlineOptions section.

        request-changed, request-changed-once, request-expired, request-no-cache
        intr-download-keep, intr-download-size, intr-download-percent
        timeout-download-keep

The following options have been moved to the new OfflineOptions section.

        confirm-requests, pragma-no-cache

The following options have been moved to the new IndexOptions section.

        index-latest-days, no-lasttime-index

The following options from the StartUp section have been moved to this section.

        dir-perm, file-perm, run-online, run-offline, run-autodial.


    New in version 2.6
    ------------------

    dns-timeout = (time)

    run-fetch = (filename)

    lock-files = yes | no


OnlineOptions
-------------

All of the options can be preceded by a URL-SPECIFICATION enclosed between
'<' & '>' which means that the option only applies to URLs that match the
URL-SPECIFICATION.

The following options from the Options section of the configuration file have
been moved to this new section.

        request-changed, request-changed-once, request-expired, request-no-cache
        intr-download-keep, intr-download-size, intr-download-percent
        timeout-download-keep


    New in version 2.6
    ------------------

    [<URL-SPEC>] try-without-password = yes | no


OfflineOptions
--------------

All of the options can be preceded by a URL-SPECIFICATION enclosed between
'<' & '>' which means that the option only applies to URLs that match the
URL-SPECIFICATION.

The following options from the Options section of the configuration file have
been moved to this new section.

    confirm-requests, pragma-no-cache

The options from the DontRequestOffline section of the configuration file have
been moved to this new section (with a change in format).

    Version 2.5 Was                     Version 2.6 Is
    (DontRequestOffline)
    ---------------                     --------------

    URL-SPECIFICATION                   [<URL-SPEC>] dont-request = yes | no


IndexOptions
------------

The following options from the Options section of the configuration file have
been moved to this new section.

        index-latest-days, no-lasttime-index

The index-latest-days option has been removed totally.

The options from the DontIndex section of the configuration file have been moved
to this new section (with a change in format).

    Version 2.5 Was                     Version 2.6 Is
    (DontIndex)
    ---------------                     --------------

    outgoing = [!]URL-SPECIFICATION     <URL-SPEC> list-outgoing = yes | no
    latest   = [!]URL-SPECIFICATION     <URL-SPEC> list-latest   = yes | no
    monitor  = [!]URL-SPECIFICATION     <URL-SPEC> list-monitor  = yes | no
    host     = [!]URL-SPECIFICATION     <URL-SPEC> list-host     = yes | no
    [!]URL-SPECIFICATION                <URL-SPEC> list-any      = yes | no


ModifyHTML
----------

All of the options can now be preceded by a URL-SPECIFICATION enclosed between
'<' & '>' which means that the option only applies to URLs that match the
URL-SPECIFICATION.

    New in version 2.6
    ------------------

    [<URL-SPEC>] disable-meta-refresh      = yes | no
    [<URL-SPEC>] disable-meta-refresh-self = yes | no

    [<URL-SPEC>] demoronise-ms-chars       = yes | no

    [<URL-SPEC>] enable-modify-online      = yes | no


DontGet
-------

    Version 2.5 Was                     Version 2.6 Is
    ---------------                     --------------

    [!]URL-SPECIFICATION [ = (URL) ]    [!]URL-SPECIFICATION
                                        <URL-SPECIFICATION> replacement = (URL)

The options from the DontGetRecursive section of the configuration file have
been moved to this section (with a change in format).

    Version 2.5 Was                     Version 2.6 Is
    (DontGetRecursive)
    ---------------                     --------------

    [!]URL-SPECIFICATION                <URL-SPEC> get-recursive = yes | no

    New in version 2.6
    ------------------

    [<URL-SPEC>] location-error = yes | no


CensorHeader
------------

    Version 2.5 Was                     Version 2.6 Is
    ---------------                     --------------

    (header) = (string)                 (header) = yes | no | (string)

All of the options can now be preceded by a URL-SPECIFICATION enclosed between
'<' & '>' which means that the option only applies to URLs that match the
URL-SPECIFICATION.


FTPOptions
----------

    Version 2.5 Was                     Version 2.6 Is
    ---------------                     --------------

    auth-hostname = (host:[port])       Use host[:port] in the URL-SPECs below.
    auth-username = (username)          <URL-SPEC> auth-username = (username)
    auth-password = (password)          <URL-SPEC> auth-password = (password)


Proxy
-----

    Version 2.5 Was                     Version 2.6 Is
    ---------------                     --------------

    auth-hostname = (host:[port])       Use host[:port] in the URL-SPECs below.
    auth-username = (username)          <URL-SPEC> auth-username = (username)
    auth-password = (password)          <URL-SPEC> auth-password = (password)

    default           = (host:[port])   proxy                     =(host:[port])
    URL-SPECIFICATION = (host:[port])   <URL-SPECIFICATION> proxy =(host:[port])

All of the options can now be preceded by a URL-SPECIFICATION enclosed between
'<' & '>' which means that the option only applies to URLs that match the
URL-SPECIFICATION.


Purge
-----

    Version 2.5 Was                     Version 2.6 Is
    ---------------                     --------------

    default           = (age)           age                       =(age)
    URL-SPECIFICATION = (age)           <URL-SPECIFICATION> proxy =(age)



Changes From Version 2.4c to Version 2.5
========================================

Note: The URL-SPECIFICATION has changed slightly to allow matching of URLs with
      arguments following a '?' character see the updated README.CONF file.

StartUp
-------

        New in version 2.5
        ------------------

        dir-perm  = (octal mode)
        file-perm = (octal mode)

        run-online   = (filename)
        run-offline  = (filename)
        run-autodial = (filename)


Options
-------

        New in version 2.5
        ------------------

        request-expired  = yes | no
        request-no-cache = yes | no

        connect-timeout = (time)

        intr-download-keep    = yes | no
        intr-download-size    = (integer)
        intr-download-percent = (integer)

        timeout-download-keep = yes | no


DontGet
-------

        Version 2.4 Was                         Version 2.5 Is
        ---------------                         --------------

        URL-SPECIFICATION                       URL-SPECIFICATION [ = (URL) ]


ModifyHTML
----------

        New in version 2.5
        ------------------

        disable-script  = yes | no
        disable-blink   = yes | no

        disable-animated-gif = yes | no



Changes From Version 2.4 to Version 2.4c
========================================

Options
-------

        New in version 2.4c
        -------------------

        no-lasttime-index = yes | no


ModifyHTML
----------

        New in version 2.4c
        -------------------

        anchor-requested-begin  = (HTML code)
        anchor-requested-end    = (HTML code)


Purge
-----

Note: The meaning of the max-size parameter has changed.  It now includes the
      size of hosts that are never purged but will not purge them.

        New in version 2.4c
        -------------------

        min-free = (integer)



Changes From Version 2.3 to Version 2.4
=======================================

Note: The URL-SPECIFICATION has changed slightly to allow wildcard matches using
      '*' and is described in the version 2.4 README.CONF file.


Options
-------

        Version 2.3 Was                         Version 2.4 Is
        ---------------                         --------------

        offline-requests = yes | no             [Replaced by DontRequestOffline
                                                 section]

                                                request-changed-once = yes | no

                                                ssl-allow-port = (integer)
                                                [Use 443 to allow https]

        monitor-interval = (integer)            [Removed due to the new
                                                 improved monitor options]

        add-info-refresh = yes | no             [Renamed add-cache-info in the
                                                 ModifyHTML section]


ModifyHTML
----------

New section specifying how the cached HTML pages are modified before display.

        New in version 2.4
        ------------------

        enable-modify-html = yes | no

        add-cache-info = yes | no

        anchor-cached-begin     = (HTML code)
        anchor-cached-end       = (HTML code)

        anchor-not-cached-begin = (HTML code)
        anchor-not-cached-end   = (HTML code)


AllowedConnect
--------------

Renamed to AllowedConnectHosts.

In this version the hostnames match using wildcards and not just using matching
from the left or right as they did before.  See README.CONF for details.


LocalNet
--------

In this version the hostnames match using wildcards and not just using matching
from the left or right as they did before.  See README.CONF for details.


AllowedConnectUsers
-------------------

New section that users authentication of users before access to cache is allowed.

        New in version 2.4
        ------------------

        username:password



DontRequestOffline
------------------

New section, same format as DontCache, DontGet, DontGetRecursive.


CensorHeader
------------

        Version 2.3 Was                         Version 2.4 Is
        ---------------                         --------------

                                                referer-self = yes | no
                                                referer-self-dir = yes | no


DontIndex
---------

        New in version 2.4
        ------------------

        outgoing = URL-SPECIFICATION
        latest   = URL-SPECIFICATION
        monitor  = URL-SPECIFICATION
        host     = URL-SPECIFICATION


Proxy
-----

        Version 2.3 Was                         Version 2.4 Is
        ---------------                         --------------

                                                ssl = (hostname[:integer])



Changes From Version 2.2 to Version 2.3
=======================================

Note: HOST-SPECIFICATION and FILE-SPECIFICATION are described in the version
      2.1/2.2 README.CONF file.
      URL-SPECIFICATION is described in the version 2.3 README.CONF file.


Options
-------

        New in Version 2.3
        ------------------

        connect-retry = yes | no

        confirm-requests = yes | no


DontIndex
---------

New section, same format as DontCache, DontGet, DontGetRecursive.


DontCache, DontGetRecursive
---------------------------

        Version 2.2 Was                         Version 2.3 Is
        ---------------                         --------------

HOST-SPECIFICATION = FILE-SPECIFICATION         URL-SPECIFICATION


DontGet
-------

        Version 2.2 Was                         Version 2.3 Is
        ---------------                         --------------

HOST-SPECIFICATION = FILE-SPECIFICATION         URL-SPECIFICATION

                                                replacement = (URL)


Proxy
-----

        Version 2.2 Was                         Version 2.3 Is
        ---------------                         --------------

HOST-SPECIFICATION = (hostname[:integer])
                                       URL-SPECIFICATION = (hostname[:integer])


Alias (was Mirror)
------------------

        Version 2.2 Was                         Version 2.3 Is
        ---------------                         --------------

HOST-SPECIFICATION = HOST-SPECIFICATION
                                        URL-SPECIFICATION = URL-SPECIFICATION


Purge
-----

        Version 2.2 Was                         Version 2.3 Is
        ---------------                         --------------

HOST-SPECIFICATION = (integer)                  URL-SPECIFICATION = (integer)

                                                del-dontget   = yes | no
                                                del-dontcache = yes | no
                                                use-url       = yes | no



Changes From Version 2.1 to Version 2.2
=======================================

Note: The 'fetch-images' and 'fetch-frames' options are moved from the Options
      section to the FetchOptions section and renamed 'images' and 'frames'.

Options
-------

        New in Version 2.2                      Removed in Version 2.2
        ------------------                      ----------------------

        socket-timeout = (time)                 fetch-images = yes | no
        (default=120)                           fetch-frames = yes | no


FetchOptions
------------

        New in Version 2.2
        ------------------

        stylesheets = yes | no
        images      = yes | no
        frames      = yes | no
        scripts     = yes | no
        objects     = yes | no


CensorHeader
------------

        Version 2.1 Was                         Version 2.2 Is
        ---------------                         --------------

        (header)                                (header) =
                                                (header) = replacement-string



Changes From Version 2.0 to Version 2.1
=======================================

Note: The configuration parser is more fussy about having the correct types,
      previously a non-integer was allowed where an integer was expected etc.

Note: In the DontCache, DontGet, DontGetRecursive, Proxy and Purge sections the
      presence of a port number ( proto/host:port ) must match, a ':' with no
      port number is a wildcard and matches any port.  See the README.CONF file
      in the HOST-SPECIFICATION section for more details.


Options
-------

        Version 2.0 Was                         Version 2.1 Is
        ---------------                         --------------

        request-changed = yes | no              request-changed = (time)
                                                (use 600 for yes and -1 for no).


        New in version 2.1
        ------------------

        offline-requests = yes | no
        monitor-interval = (age)


FTPOptions
----------

        New in version 2.1
        ------------------

        auth-hostname = (host:[port])
        auth-username = (username)
        auth-password = (password)


Proxy
-----

        New in version 2.1
        ------------------

        auth-hostname = (host:[port])
        auth-username = (username)
        auth-password = (password)



Changes From Version 1.3 to Version 2.0
=======================================

StartUp, Options
----------------

Unchanged


LocalHost, LocalNet, AllowedConnect
-----------------------------------

Unchanged


DontCache, DontGet, DontGetRecursive
------------------------------------

        Version 1.3 Was                         Version 2.0 Is
        ---------------                         --------------

        host = (host)                           http/(host) = /
        file-ext = (ext)                        default     = .(ext)
        (host) = (path)                         http/(host) = (path)

                                                (proto)/       = ...
                                                (proto)/(host) = ...
                                                (host)         = ...
                                                ...            = .(file-ext)
                                                ...            = /(path)


CensorHeader
------------

Unchanged


Proxy
-----

        Version 1.3 Was                         Version 2.0 Is
        ---------------                         --------------

default = (hostname[:integer])          http/       = (hostname[:integer])
(host)  = (hostname[:integer])          http/(host) = (hostname[:integer])

                                        (proto)/       = (hostname[:integer])
                                        (proto)/(host) = (hostname[:integer])
                                        (host)         = (hostname[:integer])

(Where '(hostname[:integer])' can also be 'none' or left blank.)


Purge
-----

        Version 1.3 Was                         Version 2.0 Is
        ---------------                         --------------

        use-mtime   = yes | no                  use-mtime   = yes | no
        max-size    = (integer)                 max-size    = (integer)
        default     = (integer)                 default     = (integer)
        (host)      = (integer)                 http/(host) = (integer)

                                                (proto)/       = (integer)
                                                (proto)/(host) = (integer)
                                                (host)         = (integer)

FTPOptions, MIMETypes, Mirror
-----------------------------

All New
