#49039 [Com]: Can't pass file name with subfolder name 3 characters or less
| From: | sant9442 at gmail dot com | Date: | Thu, 23 Jul 2009 20:11:33 +0000 |
| Subject: | #49039 [Com]: Can't pass file name with subfolder name 3 characters or less | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-140160@lists.php.net to get a copy of this message | ||
ID: 49039
Comment by: sant9442 at gmail dot com
Reported By: sant9442 at gmail dot com
Status: Feedback
Bug Type: CGI related
Operating System: Windows
PHP Version: 5.3.0
New Comment:
I am getting mixed results:
All these are called from my d:\wc63\http document root folder (not set
in the ini, by switched there by the web server which also sets
DOCUMENT_ROOT=d:\wc63\http :
D:\wc63\http>G:\files\php\php5.3-200907231830\php-cgi
v:\wc5beta\http\wcphp\phpinfo.php
PHP Warning: Unknown: failed to open stream: No such file or directory
in Unknown on line 0
Status: 404 Not Found
X-Powered-By: PHP/5.3.1-dev
Content-type: text/html
No input file specified.
D:\wc63\http>G:\files\php\php5.3-200907231830\php-cgi
v:\wc5beta\http\wcphp\phpinfo.php
PHP Warning: Unknown: failed to open stream: No such file or directory
in Unknown on line 0
Status: 404 Not Found
X-Powered-By: PHP/5.3.1-dev
Content-type: text/html
No input file specified.
D:\wc63\http>G:\files\php\php5.3-200907231830\php-cgi
v:\wc5beta\http\pwe\phpinfo.php
PHP Warning: Unknown: failed to open stream: No such file or directory
in Unknown on line 0
Status: 404 Not Found
X-Powered-By: PHP/5.3.1-dev
Content-type: text/html
No input file specified.
D:\wc63\http>G:\files\php\php5.3-200907231830\php-cgi
d:\wc63\http\public\pwe\phpinfo.php
X-Powered-By: PHP/5.3.1-dev
Content-type: text/html
hello
D:\wc63\http>G:\php526\php-cgi.exe d:\wc63\http\public\pwe\phpinfo.php
X-Powered-By: PHP/5.2.6
Content-type: text/html
hello
D:\wc63\http>G:\php526\php-cgi.exe
d:\wc63\http\public\wcphp\phpinfo.php
Status: 404 Not Found
X-Powered-By: PHP/5.2.6
Content-type: text/html
No input file specified.
D:\wc63\http>G:\php526\php-cgi.exe d:\wc63\http\pwe\phpinfo.php
X-Powered-By: PHP/5.2.6
Content-type: text/html
HELLO PRIVATE
I don't wish to spend another ten hours on this trying to explain it.
As shown in the last example, none of these php-cgi.exe command line
issues appear in 5.2.6 or lesser version. Only with 5.3.
Here is my analysis of the situation. In 5.3, there was a massive
change to the parsing and file name resolution logic. There are issues
with it.
Unfortunately, I lack the time to get into a windows recompiling
project I can trace it down. The last time I did that I lost a tooth.
:-)
Please also see bug #49040 which was found during the time trying to
figure this out expecting it was related to the cgi ini settings and/or
the env settings where were not the case.
thanks
Previous Comments:
------------------------------------------------------------------------
[2009-07-23 19:25:10] pajoye@php.net
Please try using this snapshot:
http://snaps.php.net/php5.3-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
If any, try a 5.3 snapshot...
------------------------------------------------------------------------
[2009-07-23 19:22:43] jani@php.net
Please try using this snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
------------------------------------------------------------------------
[2009-07-23 19:09:07] sant9442 at gmail dot com
It should be noted that we spend 10 hours on this issue, first
believing it was related to changed to the php.ini options
;doc_root =
;cgi.fix_pathinfo = 1
cgi.force_redirect = 0
and CGI environment strings:
DOCUMENT_ROOT=d:\wc63\http
PATH_INFO=/pwe/helloworld.php
SCRIPT_NAME=/pwe/helloword.php
PATH_TRANSLATED=d:\wc63\http\pwe\helloworld.php
SCRIPT_FILENAME=d:\wc63\http\pwe\helloworld.php
which all research (googling) of "no input file specified" related to.
Reqardless of what we tried, it would not work until I discovered the 3
character folder name off the root folder was the problem. Renaming it
to 4 characters or more, solved the issue and that was discovered when
all other URLS were working and we noticed the only difference was the 3
character length of the folder name.
This comment is mentioned so that time isn't wasted on the above issues
related and possible reasons for "no input file specified."
------------------------------------------------------------------------
[2009-07-23 19:00:21] sant9442 at gmail dot com
Description:
------------
After upgrading to 5.3 from 5.2.6, we began to see "No input file
specified" errors with working URLs: /pwe/helloworld.php
It was eventually discovered that renaming the pwe folder to something
with 4 characters or more, then it would work. A subfolder name with 3
characters or less failed:
Reproduce code:
---------------
A url would be:
/pwe/helloworld.php
where pwe is a subfolder off the web server root document folder:
d:\wc63\http
So the web server script mapping spawn basically did this which can be
emulated manually:
cd \wc63\http
d:\wc63\php-cgi.exe d:\wc63\http\pwe\helloworld.php
This failed. Rename it to pwe1 and try:
d:\wc63\php-cgi.exe d:\wc63\http\pwe1\helloworld.php
and it should it work.
Expected result:
----------------
A page is displayed
Actual result:
--------------
"No Input File Specified"
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=49039&edit=1