httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From r...@imdb.com (Rob Hartill)
Subject WWW Form Bug Report: "cache interaction problem with Netscape ver 3 beta" on OTHER:NetBSD (fwd)
Date Sat, 20 Jul 1996 17:50:45 GMT

not acked.


Message-Id: <199607200652.XAA15225@taz.hyperreal.com>
From: giles@nemeton.com.au
To: apache-bugs%apache.org@organic.com
Date: Fri Jul 19 23:52:06 1996
Subject: WWW Form Bug Report: "cache interaction problem with Netscape ver 3 beta" on OTHER:NetBSD

Submitter: giles@nemeton.com.au
Operating system: OTHER:NetBSD, version: 1.1/i386
Version of Apache Used: 1.1.1
Extra Modules used: proxy
URL exhibiting problem: 

Symptoms:
--
Netscape Navigator Version 3.0b5a

This is a problem I with the BSDI browser (3beta5) running on
NetBSD-1.1/i386 with X11R6-3.1.2 using the Apache-1.1.1 server with
proxy support enabled.

I am not able to tell if the problem is caused by Apache, Netscape
Navigator or some interaction between them.  The problem does not
appear if:

- another server is used (CERN)
- another browser is used (Chimera)
- memory caching is turned off in Netscape Navigator

I have been running with the Netscape Navigator disk cache turned off.

After all that preamble, the problem is that after a local page is
updated the browser won't necessarily pick up the gifs that are
referenced.

There are two HTML pages below; the first loads OK.  The second is
different only in that the <CENTER>...</CENTER> tags have been placed
around the images.

A reload will fail to find the gifs unless one of the workarounds
(different browser, different server of no memory cache) is used.

I have included the Apache configuration files below too.

Regards,

Giles Lean <giles@nemeton.com.au>

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	page1.html
#	access.conf
#	httpd.conf
#	srm.conf
#
echo x - page1.html
sed 's/^X//' >page1.html << 'END-of-page1.html'
X<!DOCTYPE HTML PUBLIC  "-//IETF//DTD HTML Strict//EN">
X<HTML>
X<HEAD>
X<TITLE>Nemeton Home Page</TITLE>
X<LINK REV="OWNER" HREF="mailto:giles@nemeton.com.au">
X</HEAD>
X
X<BODY BGCOLOR="#FFFFFF">
X
X<BLOCKQUOTE>
X
X<H1 ALIGN=CENTER>Nemeton Home Page</H1>
X<P>
X<HR>
X<P>
X
X<UL>
X<LI><A HREF="tools/index.html">Software Tools</A>
X</UL>
X
X<P>
X<HR>
X<FONT SIZE=2>
X<A HREF="mailto:webmaster@nemeton.com.au">webmaster@nemeton.com.au</A>
X</FONT>
X<IMG SRC="/icons/apache_pb.gif" ALIGN=CENTER ALT="[Apache Logo]">
X<IMG SRC="/gifs/NetBSD-banner.gif" ALIGN=CENTER ALT="[NetBSD Banner]">
X
X</BLOCKQUOTE>
X
X</BODY>
X</HTML>
END-of-page1.html
echo x - access.conf
sed 's/^X//' >access.conf << 'END-of-access.conf'
X# access.conf: Global access configuration
X# Online docs at http://www.apache.org/
X
X# This file defines server settings which affect which types of services
X# are allowed, and in what circumstances. 
X
X# Each directory to which Apache has access, can be configured with respect
X# to which services and features are allowed and/or disabled in that
X# directory (and its subdirectories). 
X
X# Originally by Rob McCool
X
X# This should be changed to whatever you set DocumentRoot to.
X
X<Directory /usr/local/www/htdocs>
X
X# This may also be "None", "All", or any combination of "Indexes",
X# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
X
X# Note that "MultiViews" must be named *explicitly* --- "Options All"
X# doesn't give it to you (or at least, not yet).
X
XOptions Indexes ExecCGI FollowSymLinks
X
X# This controls which options the .htaccess files in directories can
X# override. Can also be "All", or any combination of "Options", "FileInfo", 
X# "AuthConfig", and "Limit"
X
XAllowOverride None
X
X# Controls who can get stuff from this server.
X
Xorder allow,deny
Xallow from all
X
X</Directory>
X
X# /usr/local/etc/httpd/cgi-bin should be changed to whatever your ScriptAliased
X# CGI directory exists, if you have that configured.
X
X<Directory /usr/local/www/cgi-bin>
XAllowOverride None
XOptions None
X</Directory>
X
X# Allow server status reports, with the URL of http://servername/status
X# Change the ".nowhere.com" to match your domain to enable.
X
X# NOTE: this seems to be broken! (giles)
X#<Location /status>
X#SetHandler server-status
X#
X#order deny,allow
X#deny from all
X#allow from .nemeton.com
X#</Location>
X
X# You may place any other directories or locations you wish to have
X# access information for after this one.
X
END-of-access.conf
echo x - httpd.conf
sed 's/^X//' >httpd.conf << 'END-of-httpd.conf'
X# This is the main server configuration file. See URL http://www.apache.org/
X# for instructions.
X
X# Do NOT simply read the instructions in here without understanding
X# what they do, if you are unsure consult the online docs. You have been
X# warned.  
X
X# Originally by Rob McCool
X
X# ServerType is either inetd, or standalone.
X
XServerType standalone
X
X# If you are running from inetd, go to "ServerAdmin".
X
X# Port: The port the standalone listens to. For ports < 1023, you will
X# need httpd to be run as root initially.
X
XPort 80
X
X# HostnameLookups: Log the names of clients or just their IP numbers
X#   e.g.   www.apache.org (on) or 204.62.129.132 (off)
XHostnameLookups on
X
X# If you wish httpd to run as a different user or group, you must run
X# httpd as root initially and it will switch.  
X
X# User/Group: The name (or #number) of the user/group to run httpd as.
X#  On SCO (ODT 3) use User nouser and Group nogroup
XUser nobody
XGroup #-1
X
X# ServerAdmin: Your address, where problems with the server should be
X# e-mailed.
X
XServerAdmin webmaster@nemeton.com.au
X
X# ServerRoot: The directory the server's config, error, and log files
X# are kept in
X
X##
X## Note: not really used for error or log files, which live under /var.
X## Giles	Sat Jul 20 09:32:41 EST 1996
X##
X
XServerRoot /usr/local/apache
X
X# BindAddress: You can support virtual hosts with this option. This option
X# is used to tell the server which IP address to listen to. It can either
X# contain "*", an IP address, or a fully qualified Internet domain name.
X# See also the VirtualHost directive.
X
XBindAddress *
X
X# ErrorLog: The location of the error log file. If this does not start
X# with /, ServerRoot is prepended to it.
X
XErrorLog /var/log/apache/error_log
X
X# TransferLog: The location of the transfer log file. If this does not
X# start with /, ServerRoot is prepended to it.
X
XTransferLog /var/log/apache/access_log
X
X# PidFile: The file the server should log its pid to
XPidFile /var/run/apache.pid
X
X# ScoreBoardFile: File used to store internal server process information
XScoreBoardFile /var/log/apache/apache_status
X
X# ServerName allows you to set a host name which is sent back to clients for
X# your server if it's different than the one the program would get (i.e. use
X# "www" instead of the host's real name).
X#
X# Note: You cannot just invent host names and hope they work. The name you 
X# define here must be a valid DNS name for your host. If you don't understand
X# this, ask your network administrator.
X
X#ServerName new.host.name
X
X# CacheNegotiatedDocs: By default, Apache sends Pragma: no-cache with each
X# document that was negotiated on the basis of content. This asks proxy
X# servers not to cache the document. Uncommenting the following line disables
X# this behavior, and proxies will be allowed to cache the documents.
X
X#CacheNegotiatedDocs
X
X# Timeout: The number of seconds before receives and sends time out
X#  n.b. the compiled default is 1200 (20 minutes !)
X
XTimeout 400
X
X# KeepAlive: The number of Keep-Alive persistent requests to accept
X# per connection. Set to 0 to deactivate Keep-Alive support
X
XKeepAlive 5
X
X# KeepAliveTimeout: Number of seconds to wait for the next request
X
XKeepAliveTimeout 15
X
X# Server-pool size regulation.  Rather than making you guess how many
X# server processes you need, Apache dynamically adapts to the load it
X# sees --- that is, it tries to maintain enough server processes to
X# handle the current load, plus a few spare servers to handle transient
X# load spikes (e.g., multiple simultaneous requests from a single
X# Netscape browser).
X
X# It does this by periodically checking how many servers are waiting
X# for a request.  If there are fewer than MinSpareServers, it creates
X# a new spare.  If there are more than MaxSpareServers, some of the
X# spares die off.  These values are probably OK for most sites ---
X
XMinSpareServers 2
XMaxSpareServers 10
X
X# Number of servers to start --- should be a reasonable ballpark figure.
X
XStartServers 3
X
X# Limit on total number of servers running, i.e., limit on the number
X# of clients who can simultaneously connect --- if this limit is ever
X# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW.
X# It is intended mainly as a brake to keep a runaway server from taking
X# Unix with it as it spirals down...
X
XMaxClients 150
X
X# MaxRequestsPerChild: the number of requests each child process is
X#  allowed to process before the child dies.
X#  The child will exit so as to avoid problems after prolonged use when
X#  Apache (and maybe the libraries it uses) leak.  On most systems, this
X#  isn't really needed, but a few (such as Solaris) do have notable leaks
X#  in the libraries.
X
XMaxRequestsPerChild 30
X
X# Proxy Server directives. Uncomment the following line to
X# enable the proxy server:
X
XProxyRequests On
X
X# To enable the cache as well, edit and uncomment the following lines:
X
XCacheRoot /var/apache_cache
XCacheSize 5
XCacheGcInterval 4
XCacheMaxExpire 24
XCacheLastModifiedFactor 0.1
XCacheDefaultExpire 1
XNoCache nemeton.com.au
X
X# Listen: Allows you to bind Apache to specific IP addresses and/or
X# ports, in addition to the default. See also the VirtualHost command
X
X#Listen 3000
X#Listen 12.34.56.78:80
X
X# VirtualHost: Allows the daemon to respond to requests for more than one
X# server address, if your server machine is configured to accept IP packets
X# for multiple addresses. This can be accomplished with the ifconfig 
X# alias flag, or through kernel patches like VIF.
X
X# Any httpd.conf or srm.conf directive may go into a VirtualHost command.
X# See alto the BindAddress entry.
X 
X#<VirtualHost host.foo.com>
X#ServerAdmin webmaster@host.foo.com
X#DocumentRoot /www/docs/host.foo.com
X#ServerName host.foo.com
X#ErrorLog log/host.foo.com-error_log
X#TransferLog log/host.foo.com-access_log
X#</VirtualHost>
X
X#
X# We use a remote proxy too. This configuration is nearly guesswork ...
X#
XProxyRemote * http://proxy.connect.com.au:8080
XNoCache	nemeton.com.au
XNoCache localhost.nemeton.com.au
END-of-httpd.conf
echo x - srm.conf
sed 's/^X//' >srm.conf << 'END-of-srm.conf'
X# With this document, you define the name space that users see of your http
X# server.  This file also defines server settings which affect how requests are
X# serviced, and how results should be formatted. 
X  
X# See the tutorials at http://www.apache.org/ for
X# more information.
X
X# Originally by Rob McCool; Adapted for Apache
X
X
X# DocumentRoot: The directory out of which you will serve your
X# documents. By default, all requests are taken from this directory, but
X# symbolic links and aliases may be used to point to other locations.
X
XDocumentRoot /usr/local/www/htdocs
X
X# UserDir: The name of the directory which is appended onto a user's home
X# directory if a ~user request is recieved.
X
XUserDir public_html
X
X# DirectoryIndex: Name of the file or files to use as a pre-written HTML
X# directory index.  Separate multiple entries with spaces.
X
XDirectoryIndex index.html
X
X# FancyIndexing is whether you want fancy directory indexing or standard
X
XFancyIndexing on
X
X# AddIcon tells the server which icon to show for different files or filename
X# extensions
X
XAddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
X
XAddIconByType (TXT,/icons/text.gif) text/*
XAddIconByType (IMG,/icons/image2.gif) image/*
XAddIconByType (SND,/icons/sound2.gif) audio/*
XAddIconByType (VID,/icons/movie.gif) video/*
X
XAddIcon /icons/binary.gif .bin .exe
XAddIcon /icons/binhex.gif .hqx
XAddIcon /icons/tar.gif .tar
XAddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
XAddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
XAddIcon /icons/a.gif .ps .ai .eps
XAddIcon /icons/layout.gif .html .shtml .htm .pdf
XAddIcon /icons/text.gif .txt
XAddIcon /icons/c.gif .c
XAddIcon /icons/p.gif .pl .py
XAddIcon /icons/f.gif .for
XAddIcon /icons/dvi.gif .dvi
XAddIcon /icons/uuencoded.gif .uu
XAddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
XAddIcon /icons/tex.gif .tex
XAddIcon /icons/bomb.gif core
X
XAddIcon /icons/back.gif ..
XAddIcon /icons/hand.right.gif README
XAddIcon /icons/folder.gif ^^DIRECTORY^^
XAddIcon /icons/blank.gif ^^BLANKICON^^
X
X# DefaultIcon is which icon to show for files which do not have an icon
X# explicitly set.
X
XDefaultIcon /icons/unknown.gif
X
X# AddDescription allows you to place a short description after a file in
X# server-generated indexes.
X# Format: AddDescription "description" filename
X
X# ReadmeName is the name of the README file the server will look for by
X# default. Format: ReadmeName name
X#
X# The server will first look for name.html, include it if found, and it will
X# then look for name and include it as plaintext if found.
X#
X# HeaderName is the name of a file which should be prepended to
X# directory indexes. 
X
XReadmeName README
XHeaderName HEADER
X
X# IndexIgnore is a set of filenames which directory indexing should ignore
X# Format: IndexIgnore name1 name2...
X
XIndexIgnore */.??* *~ *# */HEADER* */README* */RCS
X
X# AccessFileName: The name of the file to look for in each directory
X# for access control information.
X
XAccessFileName .htaccess
X
X# DefaultType is the default MIME type for documents which the server
X# cannot find the type of from filename extensions.
X
XDefaultType text/plain
X
X# AddEncoding allows you to have certain browsers (Mosaic/X 2.1+) uncompress
X# information on the fly. Note: Not all browsers support this.
X
XAddEncoding x-compress Z
XAddEncoding x-gzip gz
X
X# AddLanguage allows you to specify the language of a document. You can
X# then use content negotiation to give a browser a file in a language
X# it can understand.  Note that the suffix does not have to be the same
X# as the language keyword --- those with documents in Polish (whose
X# net-standard language code is pl) may wish to use "AddLanguage pl .po" 
X# to avoid the ambiguity with the common suffix for perl scripts.
X
XAddLanguage en .en
XAddLanguage fr .fr
XAddLanguage de .de
XAddLanguage da .da
XAddLanguage el .el
XAddLanguage it .it
X
X# LanguagePriority allows you to give precedence to some languages
X# in case of a tie during content negotiation.
X# Just list the languages in decreasing order of preference.
X
XLanguagePriority en fr de
X
X# Redirect allows you to tell clients about documents which used to exist in
X# your server's namespace, but do not anymore. This allows you to tell the
X# clients where to look for the relocated document.
X# Format: Redirect fakename url
X
X
X# Aliases: Add here as many aliases as you need (with no limit). The format is 
X# Alias fakename realname
X
X#
X# The icons were supplied with Apache.
X#
X#Alias /icons/ /usr/local/apache/icons/
X#Alias /gifs/ /usr/local/www/gifs/
X
X# ScriptAlias: This controls which directories contain server scripts.
X# Format: ScriptAlias fakename realname
X
XScriptAlias /cgi-bin/ /usr/local/www/cgi-bin/
X
X# If you want to use server side includes, or CGI outside
X# ScriptAliased directories, uncomment the following lines.
X
X# AddType allows you to tweak mime.types without actually editing it, or to
X# make certain files to be certain types.
X# Format: AddType type/subtype ext1
X
X# AddHandler allows you to map certain file extensions to "handlers",
X# actions unrelated to filetype. These can be either built into the server
X# or added with the Action command (see below)
X# Format: AddHandler action-name ext1
X
X# To use CGI scripts:
XAddHandler cgi-script .cgi
X
X# To use server-parsed HTML files
XAddType text/html .shtml
XAddHandler server-parsed .shtml
X
X# Uncomment the following line to enable Apache's send-asis HTTP file
X# feature
XAddHandler send-as-is asis
X
X# If you wish to use server-parsed imagemap files, use
XAddHandler imap-file map
X
X# To enable type maps, you might want to use
XAddHandler type-map var
X
X# Action lets you define media types that will execute a script whenever
X# a matching file is called. This eliminates the need for repeated URL
X# pathnames for oft-used CGI file processors.
X# Format: Action media/type /cgi-script/location
X# Format: Action handler-name /cgi-script/location
X
X# For example to add a footer (footer.html in your document root) to
X# files with extension .foot (e.g. foo.html.foot), you could use:
X#AddHandler foot-action foot
X#Action foot-action /cgi-bin/footer
X
X# Or to do this for all HTML files, for example, use:
X#Action text/html /cgi-bin/footer
X
X# MetaDir: specifies the name of the directory in which Apache can find
X# meta information files. These files contain additional HTTP headers
X# to include when sending the document
X
X#MetaDir .web
X
X# MetaSuffix: specifies the file name suffix for the file containing the
X# meta information.
X
X#MetaSuffix .meta
X
X# Customizable error response (Apache style)
X#  these come in three flavors
X#
X#    1) plain text
X#ErrorDocument 500 "The server made a boo boo.
X#  n.b.  the (") marks it as text, it does not get output
X#
X#    2) local redirects
X#ErrorDocument 404 /missing.html
X#  to redirect to local url /missing.html
X#ErrorDocument 404 /cgi-bin/missing_handler.pl
X#  n.b. can redirect to a script or a document using server-side-includes.
X#
X#    3) external redirects
X#ErrorDocument 402 http://other.server.com/subscription_info.html
X#
END-of-srm.conf
exit




--

Backtrace:
--

--

----- End of forwarded message from giles@nemeton.com.au -----

-- 
Rob Hartill (robh@imdb.com)
The Internet Movie Database (IMDb)  http://www.imdb.com/
           ...more movie info than you can poke a stick at.

Mime
View raw message