Нуждаюсь в помощи с .htaccess URL rewriter

Как насчет помещенного Ваша замена на 'горячем месте' с этого времени, позвольте отказам проникнуть и посмотрите, как она идет о попытке решить проблему? Вы все еще будете вокруг для любых главных главных чрезвычайных ситуаций.

Люди часто входят в механизм при добавлении глубина. Если Ваша замена перестанет работать, не делая никакой (изучение) прогресс, то это скажет им также, что они не должны, возможно, брать на себя роль.

Ваша замена может затем сделать заметки, поскольку они должны и задают Вам вопросы о том, что они должны знать.

1
задан 5 January 2011 в 18:32
1 ответ

Попробуйте это как начальную точку:

RewriteEngine On

RewriteCond %{QUERY_STRING} !^uri
RewriteCond %{REQUEST_URI}  !\.(.*)
RewriteCond %{REQUEST_URI}  !^/(framework|restricted)/
RewriteRule .* /index.php?uri=%{REQUEST_URI} [L,QSA]

RewriteCond %{QUERY_STRING} !^uri
RewriteCond %{REQUEST_URI}  \.php.?$
RewriteRule .* /index.php?uri=%{REQUEST_URI} [L,QSA]

Первый ruleset:

  1. Не выполняйте это правило если uri ДОБЕРИТЕСЬ параметр устанавливается (иначе, Вы получите цикл при перенаправлении к целевому сценарию после добавления uri параметр)
  2. Если URI содержит a . затем пропустите этот ruleset (можно хотеть создать более определенное правило для конкретных расширений, но это работает),
  3. Если URI находится под ограниченным каталогом, пропустите этот ruleset
  4. Перенаправление к index.php (Вы, возможно, должны изменить цель), и установите uri ПОЛУЧИТЕ параметр

Второй ruleset:

  1. Если uri параметр устанавливается, пропустите этот ruleset для предотвращения цикла
  2. Продолжите двигаться, если URI запросил концы в .php, .php4, или подобный (.php123 не был бы перенаправлен),
  3. Перенаправление к index.php (Вы, возможно, должны изменить цель), и установите uri ПОЛУЧИТЕ параметр

Это не берет "мастер" для соединения правил mod_rewrite - проводят некоторое время, экспериментируя самостоятельно и перечитывая по руководству, которое рекомендовал jscott.

Действительно задайте все свои вопросы типа теории здесь, если Вы хотите большие объяснения (в противоположность вопросам о практическом типе, в которых кажется, как будто отвечающие стороны являются краудсорсингом Ваш проект вместо того, чтобы содействовать Вашему знанию).

4
ответ дан 3 December 2019 в 18:07

Теги

Похожие вопросы