You need a line in your Apache config to tell it what php is.
for example with PHP5, the config is like this. The php4 module would be slightly different, but more or less the same.
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
hmmm....got those there-- or at least their 4.2.3 equivalents.
What is it that tells Apache that "application/x-httpd-php" means "php5_module"?
The code in the module.