MOD_REWRITE: молю о помощи

L
На сайте с 25.03.2004
Offline
0
576

Тока не отсылайте пожалуйста читать доки, я вас очень прошу. Я их читал и форумы облазил, инфы куча, а толку мало.

Вот у меня адреса:

1) http://www.site.net/index.php?section={имя_раздела}

2) http://www.site.net/index.php?section={имя_раздела}&id={имя_статьи}

Если я пишу в httpd.conf:

RewriteEngine On

RewriteRule ^(\d+)$ index.php?section=1$ [L]

то при вводе строки в браузере, например:

http://www.site.net/{имя_раздела}

она должна обрабатываться как:

http://www.site.net/index.php?section={имя_раздела}

???

Что-то у меня не работает...

Как написать правильно?

C
На сайте с 22.12.2001
Offline
172
#1
Если я пишу в httpd.conf:

Lloyd, попробуйте, в .htaccess

С уважением, Александр Евдокимов.
[Удален]
#2

RewriteEngine On
RewriteRule ^(\d+)$ index.php?section=1$ [L]

Во-первых, не 1$ в правой части, а $1, во-вторых \d+ означает последовательность цифр (то есть не столько имя, сколько номер раздела) и будет работать только в Apache версии 2.х, в-третьих может потребоваться добавить директиву RewriteBase /.

А
На сайте с 29.07.2003
Offline
58
#3

RewriteEngine On

RewriteRule ^(.*)\/([0-9]*)\.html$ /index.php?section=$1&id=$2 [L]

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

Код не проверял, но вроде так.

C
На сайте с 19.09.2001
Offline
120
#4
RewriteRule ^(\d+)$ index.php?section=1$ [L]

Вообще-то \d - это цифры. Если в имени раздела у Вас буквы, то надо написать так:

RewriteRule ^(.+)$ index.php?section=$1 [L]

или

RewriteRule ^(\w+)$ index.php?section=$1 [L]

С уважением, Владимир Чернышов. (не)?путевые заметки (http://chernyshov.kiev.ua/)
L
На сайте с 25.03.2004
Offline
0
#5

Спасибо! С разделами сайта вроде разобрался. Но как быть со сложной ссылкой постраничного вывода:

index.php?section=winxp&page=1&sortcolumn=article_date&sort=DESC

хочется чтобы она выгдялела:

winxp/page-1/sort-article_date/DESC

Пробовал по аналогии делать не получается...

Поможите?

[Удален]
#6

Так по аналогии же:

RewriteRule ^([^/]+)/page-([^/]+)/sort-([^/]+)/(.+)$ index.php?section=$1&page=$2&sortcolumn=$3&sort=$4 [L]

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий