Я делаю через urlrewrite.php (см также админка - Настройки - Настройки продукта - Обработка адресов).
Пример:
[CODE] array(
"CONDITION" => "#^/news/rubric/([^/]+)/($|index\\.php|\\?.*)#",
"RULE" => "RUBRIC_CODE=$1",
"ID" => "",
"PATH" => "/news/index.php",
),
array(
"CONDITION" => "#^/news/tag/([^/]+)/($|index\\.php|\\?.*)#",
"RULE" => "TAG=$1",
"ID" => "",
"PATH" => "/news/tag/index.php",
),
array(
"CONDITION" => "#^/news/([^/]+)/($|index\\.php|\\?.*)#",
"RULE" => "ELEMENT_CODE=$1",
"ID" => "",
"PATH" => "/news/detail.php",
),
[/CODE]
Соответственно:
/news/rubric/accidents/ => /news/index.php?RUBRIC_CODE=accidents
/news/tag/курорты/ => /news/tag/index.php?TAG=курорты
/news/v-kenii-nespokoyno/ => /news/detail.php?ELEMENT_CODE=v-kenii-nespokoyno
В разных файлах размещены разные компоненты для показа.