tcl-websh-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ronnie Brunner <>
Subject Re: Status development websh3.5 and documentation
Date Wed, 03 Apr 2002 08:25:37 GMT
> Yes - we need a way to get the location of the script for mod_websh
> stuff.  We also need to fix the session stuff, along with a few
> makefile tweaks, maybe.

we started about this earlier. The last ideas were:
> > > > So we might have to provide these accessors already. How about
> > > > some additions to web::config such as serverdir (Apache
> > > > ServerRoot), documentroot (Apache DocumentRoot), pooldir
> > > > (directory of current interppool), confdir (Apache WebshConfig)

> > > > Does that make sense?

> > > Yes... but... won't this introduce a split between mod_websh
> > > powered app's and CGI apps?  I think the cwd should be where the
> > > file is located, but I'm not sure how to work around the threading
> > > problem, and am currently investigating.

> > I wouldn't mind having websh just return an empty string in the CGI
> > case for the unknown paths. Actually: some servers (e.g. Apache ;-)
> > do put these paths into the CGI environment, so we could try to
> > access them from the environment within websh3: DOCUMENT_ROOT,
> > SERVER_ROOT, [file dirname $env(SCRIPT_FILENAME)] ...

> Environmental variables aren't used elsewhere in WebSH, even when they
> are made available through the server.  I don't think we should make
> an exception just for this.

We do use the env variable in the CGI case: setting up the request
structure, we eval web::cgi::copyenv from script.ws3, which does
exactly that (there is no other way to get that info in a CGI)

-> I would still opt for a solution that just that provides an
accessor for these paths. Is web::config really the place? Although
it's also in the environment in the CGI case, I wouldn't mix it up
with the request info (because it isn't request info, and because we
get potential name clashes when we introduce our own variables).

What are the paths we need to provide?

- server root (env(SERVER_ROOT) if it exists in CGI case, "" otherwise)
- document root (env(DOCUMENT_ROOT) if it exiss in CGI case, "" otherwise)
- mod_websh config dir/file ("" in CGI case)
- interpclass path (path of CGI-executable == [pwd] in CGI case)
- actual path to script requested (SCRIPT_FILENAME or PATH_TRANSLATED
  or something ...)

> > - The documentation still sucks (oops, xcuse my language)
> I agree, but there's a lot of it:-( I've spent a lot of hours wading
> through it, and it seems like it never ends...

Don't tell me, I know what it is like :-( But we still need to
improve. Suggestions on how to divide the work?

Ronnie Brunner                     
Netcetera AG, 8040 Zuerich    phone +41 1 247 79 79 Fax: +41 1 247 70 75

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message