Наш клиент попросил меня преобразовать созданный нами сайт в дружественный SEO-формат. Мне удалось немного продвинуться в этом, но я столкнулся с проблемой наличия одинаковых URL в одной папке.
Я пытаюсь переписать следующие URL,
- / обзор / index.php? Чид = InterCasino
- / обзор / submit.php? Чид = InterCasino
- / обзор / index.php? Чид = InterCasino & страница = 2 # Отзывы
Я хотел бы получить их,
- / обзор / InterCasino
- / представить-обзор / InterCasino
- / обзор / InterCasino / 2 # отзывы
Я почти все заработал, используя следующее правило,
RewriteRule (submit-review)/(.*)$ review/submit.php?cid=$2 [L]
RewriteRule (^review)/(.*) review/index.php?cid=$2
Проблема, как вы уже можете заметить, заключается в том, что / submit-review переписывает в / review, который, в свою очередь, переписывается в index.php, поэтому моя страница отправки обзора теряется вместо моей страницы индекса. Я полагал, что установка [L] предотвратит вызов второго правила, но кажется, что он переписывает оба URL за два отдельных прохода. Я также попробовал [QSE], и [S = 1]
Я бы предпочел не перемещать свои файлы в разные папки, чтобы перезапись работала, так как это кажется слишком плохой практикой. Если бы кто-нибудь мог дать мне несколько советов о том, как провести различие между этими похожими URL-адресами, это было бы здорово!
Спасибо
(Ссылка: http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html)