Попробуйте что-то вроде:
RewriteRule games/([^/]+)/([^/]+)/?$ games/consoles.php?console=$1&page=$2 [L]
RewriteRule games/([^/]+)/?$ games/consoles.php?console=$1 [L]
Сначала я ставлю ваше самое конкретное правило - таким образом, вы не выполняете общее сопоставление, а затем - более конкретное сопоставление, которое переписывает общее.
Я также указал флаг [L]
, чтобы указать, что вы хотите, чтобы двигатель прекратил поиск других совпадений на этом этапе. Переупорядочение правил в этом случае является излишним из-за флага [L]
, но это хорошая практика, чтобы войти в него.
Я также немного изменил выражения. Вместо того, чтобы использовать ([A-Za-z0-9]+)
, как сказал предыдущий автор, я изменил его на ([^/]+)
, потому что это будет соответствовать всему, кроме косой черты, так что вы можете иметь странные названия консоли или игры. Если вы хотите сделать его более конкретным, не стесняйтесь, но этот способ обеспечивает наиболее общий вариант использования.