proxy gateway service announcement/testing

altis@ibeam.jf.intel.com (Kevin Altis)
Errors-To: secret@www0.cern.ch
Date: Wed, 9 Feb 1994 23:55:52 --100
Message-id: <m0pUNiN-00042kC@ibeam.intel.com>
Errors-To: secret@www0.cern.ch
Reply-To: www-talk@www0.cern.ch
Originator: www-talk@info.cern.ch
Sender: www-talk@www0.cern.ch
Precedence: bulk
From: altis@ibeam.jf.intel.com (Kevin Altis)
To: Multiple recipients of list <www-talk@www0.cern.ch>
Subject: proxy gateway service announcement/testing
X-Listprocessor-Version: 6.0c -- ListProcessor by Anastasios Kotsikonas
Content-Length: 4566
I'm pleased to announce the availability of a new application level proxy
gateway service for the WWW. This is an adaptation of Tim Berners-Lee's
gateway code used in libWWW. Lou Montulli, Ari Luotonen, and I (Kevin
Altis) have been working together for the last month or so on this problem
and we now have something for you to try; the NCSA folks are working the
changes into their code as well. The proxy supports http, gopher, ftp,
wais, and news. Full HTTP 1.0 methods are supported including POST, PUT and
authentication.

The proxy service is based on the HTTP protocol, and for clients and
servers based on libWWW only requires a small number of changes. Eric Bina
has already made the changes for X Mosaic 2.2. Mosaic for the Mac and
Windows will soon also have support for the proxy service. Client and
server writers interested in supporting the proxy service should contact me
for more information until we get a full description up on the Web.

More messages will follow on this list for discussion of TESTING this proxy
gateway service, problems you might encounter, etc. This is not a general
release announcement for comp.infosystems.www.

CLIENTS CURRENTLY SUPPORTING PROXY: Lynx2-2, X Mosaic 2.2
The prerelease Lynx 2-2 source files are available at
<ftp://stat1.cc.ukans.edu/pub/lynx/lynx2-2.tar.Z> along with a lynx.cfg in
the same directory.

X Mosaic 2.2 is available at <ftp://ftp.ncsa.uiuc.edu/Mosaic>

Lynx 2-2 and X Mosaic 2.2 support the proxy service through environment
variables. The environment variables are of the form protocol_proxy and
expect a full URL. Within my company we use the following shell script to
launch lynx, which automatically sets the environment variables to the
appropriate proxy machine. Note, that we aren't proxying news since that is
always accessed from a local machine. No other setup is required on the
client side! NOTE: substitute your real gateway server and port number for
"somehost.intel.com:911" below.

#!/bin/sh
http_proxy=http://somehost.intel.com:911/
ftp_proxy=http://somehost.intel.com:911/
wais_proxy=http://somehost.intel.com:911/
gopher_proxy=http://somehost.intel.com:911/
export http_proxy
export ftp_proxy
export wais_proxy
export gopher_proxy
/usr/local/bin/lynx2-2


There is also a prerelease debug version of Win Mosaic with proxy support
at <ftp://ftp.ncsa.uiuc.edu/outgoing/jonm/proxy.zip>; a general release
version should be available sometime next week. Setup in Win Mosaic simply
requires the addition of the following lines in the mosaic.ini file:
[proxy information]
http_proxy=http://somehost.intel.com:911/
ftp_proxy=http://somehost.intel.com:911/
wais_proxy=http://somehost.intel.com:911/
gopher_proxy=http://somehost.intel.com:911/

PROXY SERVERS:
There is a test proxy server running at <http://www1.cern.ch:911/>. You can
run your own by getting the prerelease SUN4 binary of cern_httpd 2.15
available at
<ftp://info.cern.ch/pub/www/bin/sun4/httpd_2.15pre3-gcc-static-lresolv.Z>
supports the new proxy method. Ari will make the cern_httpd sources
available later this month for compilation on other Unix platforms.

You can start your copy of the cern_httpd server to run as a standalone
proxy server with a command line of:
        cern_httpd -p 911 -r httpd.conf -l access_log

The httpd.conf should look like:
pass    http:*
pass    ftp:*
pass    wais:*
pass    gopher:*
fail    news:*
fail    *

The cern_httpd can be used as a regular server at the same time, if
needed.  Just add normal mappings and passes to the end (before
last fail):

        Pass  /*  file:/document/root/*

However, for testing purposes, I would suggest that you run the cern_httpd
only as a proxy. The cern_httpd will automatically do setuid-nobody if it
runs as root. For more information on the cern_httpd server, see the
documentation at <http://info.cern.ch/hypertext/WWW/Daemon/Status.html>.

All requests using a proxy server such as the cern_httpd are logged exactly
the same as normal HTTP requests, except that full URLs appear in the log
file rather than partial URLs. The uniform log format currently being
discussed on www-talk will be used in the cern_httpd server when the format
is finalized.

ka

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kevin Altis                             2111 N.E. 25th.
Internet Program Architect              Hillsboro, OR 97124
Media Delivery Laboratory               Email: altis@ibeam.intel.com
Intel Corporation JF2-58                Phone: 503-696-8788
                                        Fax:   503-696-6067