Ваши регулярные выражения матчи:
^
- начало ввода (часть после HOST)
online/
- буквальное последовательность обугленного online/
(.*)
- любые символы 0+, как можно больше, до l аст ...
/
- слэш
(.*)
- Группа 2: любые ноль или более символов вплоть до ...
$
- конец ввода.
Таким образом, регулярное выражение может иметь произвольное количество подстрок в пути.
Если необходимо ограничить количество подразделов, использовать на основе регулярных выражений в класс инвертированный характер:
RewriteRule ^[^/]*/([^/]*)$ filename.php?key=$1 [L]
В [^/]+
Удачные 1+ символы, кроме /
. Так как вы не используете группу 1, я рекомендую удалить первый комплект из (
и )
и использовать $1
на замену.
Теперь регулярное выражение соответствует:
^
- начало ввода
[^/]*
- ноль или больше символов, кроме /
([^...]
называется класс инвертированный характер)
/
- косая черта
([^/]*)
- Группа 1: см. выше
$
- конец ввода.
И это означает, что на пути может быть только 1 косая черта.
Попробуйте '^ ([^ /] *)/([^ /] *) $' –
помните, что разработка - это динамическое слово –
В вашем решении, каким будет базовый файл (file.php), где мне нужно разместить код? –