краткий вопрос о необязательном регулярном выражении :
представьте себе данную страницу, которая в настоящее время переписана / украшена:
/xx/somepage/description-description-description
во время загрузки уродливого URL под водой:
/somepage?ln=xx
с помощью этого, казалось бы, рабочего правила:
RewriteRule ^([a-z][a-z])/(.*)/(.*?)$ /$2?ln=$1 [L]
Однако в настоящее время последняя часть /description
теперь является обязательной. Без этого ошибка 404 происходит. Какой RewriteRule я должен использовать, чтобы сделать третью и последнюю часть необязательной? Тем более что он не имеет значения для извлечения файлов и предназначен только для того, чтобы сделать URL более понятным.
Другими словами, я бы хотел, чтобы все три из приведенных ниже работали одинаково:
/xx/somepage
/xx/somepage/description-description-description
большое спасибо
обновление
оба они работают нормально:
RewriteRule ^([a-z][a-z])/(.*?)(/.*)?$ /$2?ln=$1 [L]
RewriteRule ^([a-z][a-z])/([^/]+)(/.*)?$ /$2?ln=$1 [L]
разница в средней части. Я полагаю, что это как-то связано с жадностью ... но почему / чем они точно отличаются ... кто-то другой мог бы пролить здесь свет.