Вы можете просто извлечь соответствующие части URL в самом RewriteRule
:
RewriteEngine On
Options +FollowSymLinks
RewriteBase /
RewriteRule ^pages/([^/]+)/(.+)$ /showpage.php?index=$1&title=$2 [R]
Обратите внимание, что флаг R
вызывает внешнее перенаправление, это то, что вы хотите? Если нет, вы должны удалить его:
RewriteRule ^pages/([^/]+)/(.+)$ /showpage.php?index=$1&title=$2
Или, если вы хотите, чтобы внешний перенаправление было безопасным, рекомендуется использовать флаг L
, чтобы перенаправление применялось немедленно (и добавьте статус 301, если перенаправление постоянное):
RewriteRule ^pages/([^/]+)/(.+)$ /showpage.php?index=$1&title=$2 [R=301,L]
Кроме того, если вы хотите, чтобы заголовок был необязательным, вы можете сделать это тоже:
RewriteCond &title=$3 ^(&title=.+)$
RewriteRule ^pages/([^/]+)(/(.+))?$ /showpage.php?index=$1%1