I'm trying to run PHP using FastCGI (mod-fcgid) under apache 2 with the worker MPM. I've used this blog post as a reference.
It seems I've got everything working except one thing:
When apache serves index.php implicitly (using mod_dir, I think), it does not use the configured handler for .php files, and just serves the PHP file as if it's static content.
However, when I add the index.php part manually to the URL, it does use the handler correctly and everything seems to work. Other PHP files work fine too.
- http://example.com/ serves the PHP source file itself.
- http://example.com/index.php correctly runs the PHP through the FastCGI handler, and serves the dynamic content.
What could cause this? Any hints are appreciated!
Edit: Some more details: this is on an Ubuntu intrepid system.
I got .php working in FastCGI by adding the two PHP lines to mods-enabled/fcgid.conf, so it now looks like:
<IfModule mod_fcgid.c> AddHandler fcgid-script .fcgi IPCConnectTimeout 20 AddHandler fcgid-script .php FCGIWrapper /usr/lib/cgi-bin/php5 .php </IfModule>
Directory indices are configured in mods-enabled/dir.conf:
<IfModule mod_dir.c> DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm </IfModule>
I didn't need to put Options +ExecCGI anywhere. Actually, I just tried commenting out the block in sites-enabled/000-default, and FastCGI PHP still works fine, except for implicit index.php