I just wanted to share the solution to a problem with Dreamhost that I just ran in to. A site I designed for a client a few months back stopped working all of a sudden. No one had touched the code. I can access the root page, but none of the interior pages are working. Clicking on the link returns a 'No Input File Specified' error in Firefox, and a 404 in IE.

The problem was with the .htaccess redirect I use to create SEO friendly URLs. I use the method that I wrote about here, and which works on many, many other sites I host on Dreamhost. So, I'm thinking WTF?

Of course, the Dreamhost support people were no help. I figure there must have been some kind of configuration change on the server-side… no other way to explain this. And I notice that the server we're on was recently upgraded to Apache 2.2.11. Then I find a forum thread started by someone who's having my exact problem. And based on a tip in one of the posts, I made a one line change in my .htaccess that solves the problem:

Before: RewriteRule ^(.*)$ index.php/$1 [L]

After: RewriteRule ^(.*)$ index.php?/$1 [L]

Adding that question mark did the trick. I'm still not sure why it's now required, or why it changed suddenly. I'd be grateful to anyone who can explain that to me!