Установка записи по умолчанию для Apache RewriteRule - PullRequest
1 голос
/ 06 декабря 2009

Я хочу установить правило перезаписи «по умолчанию», чтобы перехватывать все, что не соответствует предыдущим записям перезаписи. Я пробовал это:

RewriteRule ^(.*)/?$ index.php?url=$1 [L]

Но возвращаемый результат:

url = index.php

В идеале я хочу прикрепить все значения GET к 'url', чтобы они были сохранены в моем веб-журнале. У кого-нибудь есть предложения, как решить эту проблему?

Ответы [ 3 ]

3 голосов
/ 06 декабря 2009

Опускайте ненужные скобки в регулярных выражениях, когда вы можете:

RewriteRule .* index.php?url=$0 [L]

Если вы хотите исключить "index.php":

RewriteRule ^(?!index\.php).* index.php?url=$0 [L]
3 голосов
/ 06 декабря 2009

Вам необходимо исключить пункт назначения из вашего правила:

RewriteCond $1 !=index.php
RewriteRule ^(.*)/?$ index.php?url=$1 [L]
1 голос
/ 06 декабря 2009

Попробуйте удалить косую черту:

RewriteRule ^(.*)$ index.php?url=$1 [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...