Реклама на сайте Advertise with us

Помогите с mod_rewrite

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 27.06.06
Сообщения: 28
Рейтинг: 13

Ссылка на сообщениеДобавлено: 18/08/06 в 13:30       Ответить с цитатойцитата 

Перечитал уже все топики по этой теме и мануал с apache.org - не помогло icon_smile.gif

Написал PHP скрипт, который при передаче ему определённого набора параметров показывает галеру. Например:

index.html?gallery=1&photo=2&tpl=3&recipe=4

Хочется чтобы запросы вида:
http://localhost/gallery1/photo2/tpl3/recipe4/

преобразовывались в:
http://localhost/index.html?gallery=1&photo=2&tpl=3&recipe=4

чтобы казалось что это статика.

Количество параметров и их последовательность могут быть разными.

Ковыряю уже третий день, заметил что есть так же проблема с последним слэшем, так что корректно должны обрабатываться и

http://localhost/gallery1/recipe4/
и
http://localhost/gallery1/recipe4

Буду очень благодарен, если кто-нибудь поможет написать такой .htaccess

0
 

Снимаю. Порчу.

С нами с 25.12.99
Сообщения: 1234
Рейтинг: 786

Ссылка на сообщениеДобавлено: 18/08/06 в 13:57       Ответить с цитатойцитата 

Код:
RewriteEngine On
RewriteBase /

RewriteRule ^gallery([0-9]+)/photo([0-9]+)/tpl([0-9]+)/recipe([0-9]+)/$   /index.html?gallery=$1&photo=$2&tpl=$3&recipe=$4
RewriteRule ^gallery([0-9]+)/photo([0-9]+)/tpl([0-9]+)/recipe([0-9]+)$   /index.html?gallery=$1&photo=$2&tpl=$3&recipe=$4

Свободу Анжеле Дэвис!

0
 



С нами с 27.06.06
Сообщения: 28
Рейтинг: 13

Ссылка на сообщениеДобавлено: 18/08/06 в 14:37       Ответить с цитатойцитата 

Gary, спасибо. До этого я и сам дошел, но такой вариант работает только при наличии всех 4-х параметров, а может быть только 1 или 2, например: http://localhost/gallery1/recipe4

Я написал что-то вроде этого:

Код:

RewriteRule ^gallery([0-9]+)$ index.html?gallery=$1 [L]
RewriteRule ^gallery([0-9]+)/$ index.html?gallery=$1 [L]

RewriteRule ^gallery([0-9]+)/photo([0-9]+)$ index.html?gallery=$1&photo=$2 [L]
RewriteRule ^gallery([0-9]+)/photo([0-9]+)/$ index.html?gallery=$1&photo=$2 [L]

RewriteRule ^gallery([0-9]+)/photo([0-9]+)/tpl([0-9]+)$ index.html?gallery=$1&photo=$2&tpl=$3 [L]
RewriteRule ^gallery([0-9]+)/photo([0-9]+)/tpl([0-9]+)/$ index.html?gallery=$1&photo=$2&tpl=$3 [L]

RewriteRule ^gallery([0-9]+)/photo([0-9]+)/tpl([0-9]+)/recipe([0-9]+)$ index.html?gallery=$1&photo=$2&tpl=$3&recipe=$4 [L]
RewriteRule ^gallery([0-9]+)/photo([0-9]+)/tpl([0-9]+)/recipe([0-9]+)/$ index.html?gallery=$1&photo=$2&tpl=$3&recipe=$4 [L]


но это так же не будет работать если параметры передать в другом порядке. Ещё одна проблема появляется если на серваке реально существует каталог "gallery1" (а он там как раз и будет находиться), тогда по запросу http://localhost/gallery1 (без слэша в конце), почему-то происходит редирект на http://localhost/gallery1/?gallery=1 (строка урл тоже меняется!) со слэшем на конце всё правильно работает.

0
 



С нами с 06.06.06
Сообщения: 113
Рейтинг: 179

Ссылка на сообщениеДобавлено: 18/08/06 в 18:15       Ответить с цитатойцитата 

Тебе нужено:
RewriteRule ^gallery/(.*) $ index.php?$1
--
А в скрипте строчку с параметрами сам разбераешь как тебе надо.

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »