Добрый день.
Помогите разобраться в проблеме.
Сделали на сайте чпу, поэтому все старые ссылки нужно 301 редиректить на новые с чпу.
В htaccess сделали некоторые записи в виде RewriteRule ^articles/$ articles.php [L,NC,QSA].
А остальные страницы категорий и товаров добавили в бд и в php делаем проверку $_SERVER['REQUEST_URI'] на наличие в бд. Если есть, то отдаем заголовки 301.
Но есть проблема.
В htaccess есть такая запись ErrorDocument 404 /404.php, и если что-то не описано в htaccess (нет RewriteRule для реквестурла), то он выдается 404. А должно сначала попадать в php, там уже проверяться на наличие в бд и далее отдавать 404.