私はmod_rewrite派
rewrite設定が何百ステップにもなるのは、ルーティングをすべてApacheに任せようとするからだ。元記事のようにフロントコントローラ*1を使うなら、rewrite設定は2行で済む。
RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
これはZend Frameworkの例(参照)だが、2行目が要件に合わないなら適宜変えれば良い。行の追加が必要になるのはレアケースだろう(フロントコントローラが複数いるとか)。2行で済むのだから、麻薬的な依存など起こりようがない。
上記設定例ではURLに「x」を含める必要もない。「http://geekdb.jp/geek/foo」へのアクセスも、index.phpで処理できる。
というわけで、私はmod_rewrite派。
*1:元記事では「x」