Ok folks,
Figured it out, had NOTHING to do with PHP, the PHP.ini config, or the Windows permissions; I ran into the same problem trying to post to a Perl script. All my permissions were set correctly, the php.ini was configured correctly. I tried it with GET instead, and the script worked fine.
So here's the info:
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:
a. GET
b. POST
For more information on the IIS Lockdown tool , visit:
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/tools/tools/locktool.asp
For more information on URLScan, visit:
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/tools/tools/urlscan.asp