CodeIgniterでindex.phpを消すためのmod_rewrite設定 @さくらのレンタルサーバ その2

CodeIgniterでindex.phpを消すためのmod_rewrite設定 @さくらのレンタルサーバ その2

下記の記事に対して、
CodeIgniterでindex.phpを消すためのmod_rewrite設定 @さくらのレンタルサーバ - 第2.5地区


Kenjiさんが別の方法を提案されていたので試してみたところ、
この方法でもうまくいきました。
さくらのレンタルサーバでの CodeIgniter の .htaccess 設定 - A Day in Serenity @ Kenji

.htaccess
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?__PATH_INFO__=$1 [L,QSA]
Config クラスを拡張

CodeIgniter 1.7では

system/application/libraries/MY_Config.php

CodeIgniter 2.0では

system/application/core/MY_Config.php
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_Config extends CI_Config {
	function __construct()
	{
		parent::__construct();

		if (isset($_GET['__PATH_INFO__']))
		{
			$_SERVER['PATH_INFO'] = $_GET['__PATH_INFO__'];
			unset($_GET['__PATH_INFO__']);
			$this->set_item('uri_protocol', 'PATH_INFO');
		}
	}
}