What's the difference between "mod_fastcgi" and "mod_fcgid"?
The difference is explained quite well here:
libapache2-mod-fastcgi: fastcgi does not retry select() on EAGAIN
In short: mod_fcgid
passes just one request to the FCGI server at a time while mod_fastcgi
passes several requests at once, the latter is usually better for PHP, as PHP can manage several request using several threads and opcode caches like APC usually work only with threads and not with processes. This means that using mod_fcgid
you end up having many PHP processes which all have their very own opcode cache.
This is also mentioned in the documentation of mod_fcgid
under Special PHP considerations.
It's mostly licencing differences. mod_fcgid
is the free variant of mod_fastcgi
.
The way of configuration also slightly differs. Besides that, mod_fastcgi
is slightly faster.