.htaccess проблема новичка с использованием mod_rewrite - PullRequest
13 голосов
/ 04 января 2012

Мне нужно создать SEO-ориентированные URL для моего сайта.Я узнал, что могу использовать .htaccess, чтобы переписать их.Итак, я попробовал это:

> http://www.domain.com/page/1/mypage
> http://www.domain.com/user/2/myuser
> http://www.domain.com/help/3/myhelp

Теперь я застрял с общим правилом, и я не понимаю Ant для перенаправления трафика на основе имени страницы:

Я использую:

RewriteEngine ON
RewriteRule ^(.*)$ page.php?page=$1

Тогда в моем PHP я не получаю страницу правильно, я получаю файл, который является неправильным.

Как я могу это исправить?

1 Ответ

17 голосов
/ 04 января 2012

Вот что вам нужно сделать:

RewriteEngine On
RewriteBase /
RewriteRule ^([a-z_\-]+)/([0-9]+)/([a-z_\-]+)/?$ page.php?page=$1&id=$2&name=$3 [NC,L]

NC (или nocase) Делает регистр нечувствительным, A = a;

L (или последнее) Последнее правило.Остановите процесс переписывания здесь и не применяйте больше правил переписывания;

Более подробную информацию вы можете получить по адресу http://httpd.apache.org/docs/current/mod/mod_rewrite.html

...