Можно
RewriteEngine On
RewriteCond %{QUERY_STRING} ^=(.+)$
RewriteRule ^$ /%1? [R=301,L]
Без проверки - хреновой пример, будет редиректить все подряд.
А покажите общее время, а то считать все это как-то не айс.
SHOW PROFILES
man crontab
Может и понимает, но с разметкой понимает лучше.
Сделали бы составной индекс domain_id + time как я вам сказал избавились бы от filesort
Сделайте отдельно копию таблиц, создайте пару тестовых значений и посмотрите что покажет EXPLAIN c составным индексом.
Быстро...
И EXPLAIN SELECT уже покажите.
Что с третьей таблицы?
Ждем результат... часа через пять :D
sidorka, вам нужно открыть для себя индексы.
categories_posts
category_id - поставить индекс
source_id если это уникальное значение в пределах таблицы сделать PRIMARY KEY. Если нет - хоть поставьте суррогатный ключ.
На posts можно
один индекс - source_id
второй составной - domain_id, time
Хотя может спецы подскажут как лучше тут сделать индексы
Ну уже покажите структуру и третей таблицы. Только скопируйте без профилирования.
SHOW CREATE TABLE categories_posts и posts
В htaccess такой редирект не возможно сделать. Это делается в скриптах. Капайте функционал своей cms, может быть даже настройку найдете.