PHP 4.0 Bug #6581 Updated: Buggy isapi PATH_INFO() under Zeus
| From: | joosters@php.net | Date: | Mon, 06 Nov 2000 18:32:27 +0000 |
| Subject: | PHP 4.0 Bug #6581 Updated: Buggy isapi PATH_INFO() under Zeus | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-37292@lists.php.net to get a copy of this message | ||
ID: 6581
Updated by: joosters
Reported By: rziegler@idea-net.com
Status: Open
Bug Type: Other web server
Assigned To:
Comments:
First of all, sorry for taking so long to reply...
When using handlers to run PHP, Zeus to map the original URL,
say www.zeus.com/foo.php/a/b/c
to -> www.zeus.com/isapi/libphp4.so/foo.php
so /foo.php becomes the PATH_INFO.
We cannot map the URL to www.zeus.com/isapi/libphp4.so/foo.php/a/b/c,
because then PHP would look for the file /foo.php/a/b/c and get very confused.
So, PATH_INFO is already being used for running PHP scripts, please use REQUEST_URI instead if you
wish to get this part of the URL.
Incidentally, I have no idea why REQUEST_URI in your example is empty. Its working here with
4.0.1pl2
Ben
Previous Comments:
---------------------------------------------------------------------------
[2000-11-03 20:19:25] sniper@php.net
reclassified.
---------------------------------------------------------------------------
[2000-09-13 18:31:10] joosters@php.net
Quick check; could you ensure that you have set Zeus up to run ISAPI
code 'out of process' ?
---------------------------------------------------------------------------
[2000-09-06 16:53:03] rziegler@idea-net.com
This may be a bug with the zeus webserver and its ISAPI
implementation. Watching the ISAPI communication
between Zeus and libphp4.so for a request like:
http://test/dir/info.php/1/2/3?xyz=2
I see the following (from Zeus):
PATH_TRANSLATED: %docroot%/dir/info.php
PATH_INFO: /dir/info.php
QUERY_STRING: xyz=2
REQUEST_URI: /dir/info.php/1/2/3?xyz=2
which is exactly what php prints out. I sent a bug
report to Zeus and will post whatever they say.
---------------------------------------------------------------------------
[2000-09-06 11:20:42] rziegler@idea-net.com
From config.status:
./configure --with-mysql=/usr/local/mysql3.22.32 --with-zeus=/usr/local/zeus
--with-gd --with-config-file-path=/usr/local/zeus/php/lib --prefix=/usr/local/zeus/php
--enable-libgcc
% grep DISCARD *.h
php_config.h:#define DISCARD_PATH 0
php_config.h:#define DISCARD_PATH 0
Output from various scripts:
Zeus with perl on "http://testsite.idea-net.com/cgi-bin/pinfo.pl/1/2/3?x=y":
PATH_INFO: /1/2/3
PATH_TRANSLATED: /opt/www/projects/testsite/html/1/2/3
QUERY_STRING: x=y
REQUEST_URI: /cgi-bin/pinfo.pl/1/2/3?x=y
Zeus with php3 on "http://testsite.idea-net.com/cgi-bin/pinfo.php3/1/2/3?x=y":
PATH_INFO: /cgi-bin/pinfo.php3
PATH_TRANSLATED: /opt/www/projects/testsite/cgi-bin/pinfo.php3
QUERY_STRING: x=y
REQUEST_URI: /cgi-bin/pinfo.php3/1/2/3?x=y
Zeus with php4 on "http://testsite.idea-net.com/test/pinfo.php/1/2/3?x=y":
PATH_INFO: /test/pinfo.php
PATH_TRANSLATED: /opt/www/projects/testsite/html/test/pinfo.php
QUERY_STRING: x=y
REQUEST_URI:
If you need access to a web server running Zeus
to work on this problem, I can probably set something
up. (Assuming this is a problem and not something
stupid on my part.)
Thanks,
Rob
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=6581