Hello,

I have noticed messages dating back to last year discussing whether 
PATH_INFO works on Windows servers.

BACKGROUND:
PATH_INFO is the original term given to the environment variable that 
contains extra path information supplied after the end of the (in those 
days) executable file, such that:

http://www.foobar.com/cgi-bin/test.cgi/more/foobar/filename.html

Would actually execute /cgi-bin/test.cgi on the target server, and the 
$PATH_INFO environment variable would contain 
"/more/foobar/filename.html".  In addition, PATH_TRANSLATED would contain 
that same path prefixed by the context's document root, making it a fully 
qualified UNIX filename.

PROBLEM:
PHP seems to support this functionality on a UNIX server I run.  A request 
for http://www.foobar.com/hello.php/more/foobar/filename.html works 
exactly as the above describes, stuffing "/more/foobar/filename.html" into 
the $PATH_INFO php variable.

However, the problem is that when the same code is moved to a production 
server, it fails with a status code 500.  A request for hello.php works 
fine; a request for hello.php/ fails, as does hello.php/anything.  I am 
trying to find out if the prod. server is in fact Windows.  We have a 
workaround whereby we make the php a perl cgi and it works fine; i.e. 
hello.cgi/anything runs fine, hello.php/anything yields a 500.

HELP!
Can someone who is familiar with this component of PHP please let us know 
if there are any specific configuratoin parameters that would affect the 
way PHP resolves the target resource, or if this is a bug that was fixed 
in a certain release?  I did search and found many similar problems but no 
answers.  There is one relative post in the faqts, but it states PATH_INFO 
doesn't work on Windows, which is clearly not true per above CGI 
workaround.

Thank you in advance.

..
Kind Regards,
Albert James

Reply via email to