Andy,
Thanks. It was IIS.
A post at PHPBuilder sent me this info:
Running Win2K AS + IIS5.0 + PHP 4.3.1, I ran into a nasty problem that
I mistakenly thought had to do with something in the php.ini
configuration. When I would try to submit a form using the HTTP method
GET it would work, but I would get a "404 Page Not Found" error using
the POST method.
All my permissions were set correctly, the php.ini was configured
correctly. It had to do with URLScan being installed on IIS (see below)
Page 404 File Not Found Error When Using POST method in PHP (and Perl,
and otherwise)
-------------------------------------------
This is related to the Microsoft URLScan utility. If you have this
problem, the IIS administrator has probably run the IIS Lockdown tool
as well as configured URLScan to reject this type of HTTP method when
sent in a URL. These tools are meant to enhance web server security.
URLScan configuration files can be found in the
\WINNT\system32\inetsrv\urlscan folder on the web server. Specifically,
the file to modify is urlscan.ini.
The changes to make are as follows:
1. Make sure UseAllowVerbs=1 under [options]
2. Under the [AllowVerbs] section, list your allowed HTTP methods to
include:
GET
POST
For more information on the IIS Lockdown tool and URLScan, visit
http://technet.microsoft.com
It works now.