In case anyone was wondering, the error he kept getting was:
(OS 995)The I/O operation has been aborted because of either a thread exit or an application request. : winnt_accept: Asynchronous AcceptEx failed.
Some research on Google brought up an Apache bug that I never could track down. No real answers were given on how to fix it, other than "hacking" the apache.exe program.
pheck was able to track it down to the LoadModule line, in which case that was a mistake upon my part. If you're using Apache 2.0.x then the proper DLL is php5apache2.dll, but we're using 2.2.x so the proper dll is php5apache2_2.dll. Once he switched to run it as a CGI it worked. But I know that the path to the dll was wrong and an error on my part in the IM conversation.
So, to recap, to get apache and php5 running together, use this in your httpd.conf:
##
## PHP 5 as a CGI
# <Directory "<PathTo>/php5/">
# Options +ExecCGI
# Order allow,deny
# Allow from all
# </Directory>
# ScriptAlias /php5/ "<PathTo>/php5/"
# AddHandler application/x-httpd-php5 .php5
# Action application/x-httpd-php5 "/php5/php-cgi.exe"
#
##
## PHP 5 as a Module
#
### Apache 2.0.x
# LoadModule php5_module "<PathTo>/php5/php5apache2.dll"
### Apache 2.2.x
# LoadModule php5_module "<PathTo>/php5/php5apache2_2.dll"
#
### Both Apaches
# AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml
# AddType application/x-httpd-php-source .phps
# PHPIniDir "<PathTo>/php5/php.ini"
Just uncomment (remove the "#") from the lines you want. You can run as a CGI or as a module. Just make sure you use the correct LoadModule line.