Bug #8506 Updated: CGI PHP doesn't erase the #!/path/to/php
| From: | jmoore@php.net | Date: | Mon, 16 Apr 2001 10:57:20 +0000 |
| Subject: | Bug #8506 Updated: CGI PHP doesn't erase the #!/path/to/php | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-51683@lists.php.net to get a copy of this message | ||
ID: 8506
Updated by: jmoore
Reported By: vladnc@hotmail.com
Old-Status: Open
Status: Duplicate
Bug Type: *Web Server problem
PHP Version: 4.0.4
Assigned To:
Comments:
dup of 8898
Previous Comments:
---------------------------------------------------------------------------
[2001-03-12 11:41:01] vladnc@hotmail.com
denice.deatrich@epfl.ch has a similar problem on a different platform:
--- Start Quote ---
This problem exists also for NT4 with server signature:
Server: Apache/1.3.14 (Win32) PHP/4.0.4pl1
If I do not put:
#!/php/php
at the top of the file then I get an apache server error and this
message in error.log:
[Mon Mar 12 14:08:39 2001] [error] [client xxxx] c:/apache/cgi-bin/hello.php4 is not executable;
ensure interpreted scripts have "#!" first line
[Mon Mar 12 14:08:39 2001] [error] [client xxxx] couldn't spawn child process:
c:/apache/cgi-bin/hello.php4
As soon as I put it back it works.
An example script:
#!/php/php
<?php
echo "<br>hello cgi<br>";
?>
but the html-source generated by this is (from browser's "view source"):
#!/php/php
<br>hello cgi<br>
Of course, you can hide it with a trick like:
<body bgcolor="black"><font color="white">...
but that's ugly too...
--- End Quote ---
---------------------------------------------------------------------------
[2001-03-08 09:12:26] vladnc@hotmail.com
The only lines concerning PHP in httpd.conf are:
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
And, since I use .php as file extension, this lines are irrelevant.
---------------------------------------------------------------------------
[2001-03-06 08:01:40] stas@php.net
What is your apache configuration for PHP scripts?
---------------------------------------------------------------------------
[2001-01-02 15:41:55] vladnc@hotmail.com
And if you still have any doubts, thinking that Apache has reconized the file extension and is
not using the cgi version, try
http://book.ecompare-corp.com/cgi-bin/vxml/engines/kbb/phpinfo.vxml
The output is the same. And if you read the php output on both pages you'll see that PHP is
run as CGI (Server API CGI).
---------------------------------------------------------------------------
[2001-01-02 15:29:53] vladnc@hotmail.com
"PHP does not require the first line that you are including unlike perl due to the way its
set up in apache."
You're wrong. PHP is not set up at all in Apache. Look what happens if I delete the first
line:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>500 Internal Server Error</TITLE>
</HEAD><BODY>
<H1>Internal Server Error</H1>
The server encountered an internal error or
misconfiguration and was unable to complete
your request.<P>
Please contact the server administrator,
webmaster@book.ecompare-corp.com and inform them of the time the error occurred,
and anything you might have done that may have
caused the error.<P>
More information about this error may be available
in the server error log.<P>
<HR>
<ADDRESS>Apache/1.3.12 Server at book.ecompare-corp.com Port 80</ADDRESS>
</BODY></HTML>
Server error log:
[Mon Jan 1 16:00:34 2001] [error] [client 212.54.118.28] Premature end of script headers:
/home/httpd/cgi-bin/vxml/engines/kbb/phpinfo2.php
---------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view the rest of the comments,
please view the bug report online.
ATTENTION! Do NOT reply to this email!
To reply, use the web interface found at http://bugs.php.net/?id=8506&edit=2