Если я понимаю ваше право, которое я думаю понимаю, тогда вы вообще не будете использовать идентификатор в URL.Пусть правило modrewrite будет выглядеть примерно так:
RewriteRule ^([a-z0-9-]+)/([a-z0-9-]+)$ http://site.com/page.php?col1=$1&col2=$2 [L]
Тогда в page.php я полагаю, что у вас был такой запрос:
select * from table where id=123
Просто замените этот запрос на:
"select * from table where col1='".$_GET['col1']."' and col2='".$_GET['col2']."'"
Очевидно, убедитесь, что санируйте ваш ввод, чтобы предотвратить инъекцию sql.
Единственное, что вам нужно убедиться, это то, что кортеж col1 и col2 уникален и не возвращает больше 1значение.
Таким образом, в этом примере номер идентификатора никогда не отображается в URL и фактически нигде не используется.