From: Shawn K. <sha...@ea...> - 2004-11-21 04:31:03
|
I get the following error when starting the latest cvs head on my windows 2000 server - after unpacking this http://tclhttpd.sourceforge.net/tclhttpd.zip F:\tclhttpd\bin>F:\tcl847\bin\tclsh84t.exe F:/tclhttpd/bin/httpd.tcl -port 8080 & can't find package limit Running with default file descriptor limit /debug user "debug" password "w.pt46nrk9e9" User "webmaster" default password "7v-kLR7" httpd started on port 8080 Could not write to pid file /var/run/tclhttpd/tclhttpd.pid: couldn't open "/var/run/tclhttpd/tclhttpd.pid": no such file or directory " It appears that the code is assuming unix as a platform -- Is this something I need to be concerned about? Shawn -----Original Message----- From: tcl...@li... [mailto:tcl...@li...]On Behalf Of Colin McCormack Sent: Saturday, November 20, 2004 6:56 PM To: Tclhttpd users Cc: Shawn Kielty Subject: RE: [Tclhttpd-users] Problem with relative links? On Sat, 2004-11-20 at 16:25, Shawn Kielty wrote: > I am just wondering if this is atill on the table as a problem? Well, sure, if there's a bug in tclhttpd I want to hear about it. I have a few Qs about this one though ... > This is about as much as I can reasonably do to make this a bit easier to > fix. If you could reduce it to something that anyone can reproduce, that would be as much as you could reasonably do to make it easier to diagnose. :) > The filename referenced in the link (../swamp/CV/xyz.html) doesn't exist -- > which causes a redirect to one that does, an xyz.htm. Ok. An .html reference gets replaced with a redirect to an existing .htm - this happens as a result of Fallback_Try, I suspect. So it calls Redirect_QuerySelf which calls uri::resolve which eventually might percolate down to GetUPHP (I can't be sure :) > I am not sure if this > is a contributing factor, but you may well have to do this to get it to > happen because there is some string handling during the redirect (I think > additionally that it may need to be two {meaning more than one) directories > down from the docroot for the bug to occur). > Ultimately it gets down to > uri::GetUPHP which is where the url string gets whacked. If I had to guess, I'd say that uri is expecting a full url like http://localhost/swamp/CV/etc and is instead getting swamp/CV/etc and treating 'swamp' as if it were a host, and discarding it. Without a (non)working example, the best I can do is guess. > in proc uri::GetUDHP: > > $matchEnd = 5 > $url == swamp/CV/frame.htm > > line 56 >set url [string range $url $matchEnd end] > > $url == /CV/frame.htm > > I am willing to have a go at fixing this -- but -- this is a bit humbling -- > Despite trying to determine why this is wrong -- I am nowhere near familiar > enough with the code base (or regexp) to address this seriously. > > If you need more information I have a reproducible test case -- Although it > appears that it may not be that hard to reproduce. If need be - I can open > a debugging port to the outside and allow you to debug it on my server. > > Have fun. I'd be interested in hearing what the reason/solution is. I'm looking at the line in Fallback which provokes the redirect as a candidate. Problem is, my local copy successfully performs the redirect, so I can't reproduce it. May I suggest that you try to reproduce it with the source in either http://cvs.sourceforge.net/cvstarballs/tclhttpd-cvsroot.tar.bz2 http://tclhttpd.sourceforge.net/tclhttpd.zip which are the latest CVS head, because it could easily be that these bugs are fixed in CVS and not in the release. -- Colin McCormack <co...@ch...> ------------------------------------------------------- This SF.Net email is sponsored by: InterSystems CACHE FREE OODBMS DOWNLOAD - A multidimensional database that combines robust object and relational technologies, making it a perfect match for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8 _______________________________________________ TclHttpd-users mailing list Tcl...@li... https://lists.sourceforge.net/lists/listinfo/tclhttpd-users |