Я работаю над решением этой проблемы уже несколько часов и подумал, что если кто-то не против помочь мне, это может сэкономить мне время.Мой вопрос касается Apache mod_rewrite;конечно, есть тонна документации, но ничего конкретного для моих требований:
, чтобы получить URL в этом формате:
language/pagename.php
(язык будет либо «английский»или «французский», я напишу отдельное правило для каждого. [нужен только пример для одного]. Имя страницы будет любым символом слова (w+)
. Все URL будут иметь расширение .php
).
А затем переписать его, чтобы URL-адрес не изменился в браузере пользователя, но чтобы php мог получить его в следующем формате:
language/page.php?slug=pagename
например, чтобы $_GET['slug']
вернул значение pagename
и все запросы затем обрабатываются page.php.
Пока что мое лучшее предположение -
RewriteEngine On
RewriteBase /
RewriteRule ^english/(\w+).php$ english/page.php?slug=$1
Однако это заставляет php сказать мне, что slug=page
для этого URL, например english/financial.php
;вместо financial
.
Пробовал множество других соглашений регулярных выражений тоже (.)
вместо w
и т. д.