У меня есть система на основе компонентов, которую я пытаюсь сделать маршрутизацией для использования mod_rewrite.По какой-то причине я не могу получить правильный синтаксис для всех случаев для правильной работы.Ниже приведены четыре контрольных примера (я могу заставить работать только последний):
/component/action/24_char_id should be rewritten as /index.php?c=component&a=action&id=24_char_id
/component/24_char_id should be rewritten as /index.php?c=component&id=24_char_id
/component/action should be rewritten as /index.php?c=component&a=action
/component should be rewritten as /index.php?c=component
Вот три правила, которые у меня есть:
RewriteRule ^([^/]+)/(.*)/([0-9a-z]{24})?/?$ /index.php?c=$1&a=$2&id=$3 [L,QSA]
RewriteRule ^([^/]+)([0-9a-z]{24})?/?$ /index.php?c=$1&id=$2 [L,QSA]
RewriteRule ^([^/]+)(?:/(.*))?/?$ /index.php?c=$1&a=$2 [L,QSA]
URL-адреса должныпереписать, как указано выше, например, /index.php?c=$1&a=$2&id=$3, где «c» - это компонент, «a» - это действие, а «id» - это длинный 24-значный идентификатор.Обратите внимание, что в этой схеме есть три варианта URL.
Любая помощь будет принята - я застрял!