Переписать правило для Apache, не находящего URL? - PullRequest
3 голосов
/ 03 февраля 2012

Используя ответ, полученный от rcs20 в моем предыдущем посте , когда я добавляю эту запись в свой файл .htaccess, я вижу ошибку 404 Not Found:

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^member\-([0-9]+)\-([^/])\.htm(l)?$ view_profile.php?id=$1 [NC,L]

URL, который я передаю:

mysite/member-8222-jane.html

Любая идея, почему это может происходить. Мое старое правило перезаписи работает нормально:

RewriteRule view_profile=(.*)$ view_profile.php?id=$1 

1 Ответ

7 голосов
/ 03 февраля 2012

нашел его:

Знак + необходимо добавить к [^/] => ([^/]+)

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^member\-([0-9]+)\-([^/]+)\.htm(l)?$ view_profile.php?id=$1 [NC,L]

Вы также можете добавить дополнительные символы jane в member-8222-jaane.html, используя $ 2, например:

RewriteRule ^member\-([0-9]+)\-([^/]+)\.htm(l)?$ view_profile.php?id=$1&extra=$2 [NC,L]
...