Перенаправление броузера при условии получения ответа сервера об отсутсвующей страице это один из основных методов создания URL-адресов, оптимизированных для поисковых роботов (Search Engine Friendly).
Обойти это ограничеение поиогает комбинация mod_rewrite и управление статусом 404. Этот способ предполагает использование mod_rewrite для перенаправления запросов на определенную страницу сайта если запрошенный файл не был найден. Получить описанный результат можно, добавиви следующие строки в файл .htaccess или в настройки виртуаьного хоста в httpd.conf.
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
Первое условие RewriteCond проверяет, имеется ли запрошенный адрес в файловой системе. Переключатель -f в mod_rewrite указывает произвести поиск в файловой системе. А используемый нами !-f означает "если запрошенное имя файла не существует как файл".
Если первое условые выполнено, (запрошенный файл(!) не найден), то сервер обрабатывает второе условие, по которому в файловой системе производится поиск директории с запрошенным именем. По аналогии директива !-d означает что условие будет считаться выполенным если запрошенная диретория НЕ существет в файловой системе сервера.
В том случае если оба условия успешно выполнены, то броузер перенаправляется на страницу, указанную в правиле RewriteRule, в нашем случае это /index.php.

