Помогите с RewriteRule

Статус
В этой теме нельзя размещать новые ответы.

Andronik

Новичок
Помогите с RewriteRule

Словом, случай у меня по-настоящему тяжелый. Такое тоже бывает и видимо здесь ничего не поделать. Существуют люди, которым что-то просто не дано понять. не отсылайте меня в документацию типа http://www.egoroff.spb.ru/portfolio/apache/mod_rewrite.html и прочие. Замечательные статьи, прекрасно понимаю, что люди писали исчерпывающе. Я подобные ссылки уже как год знаю в очень большом количестве и время от времени читаю, распечатываю, читаю, читаю, блин. И ни одного регулярного выражения не написал ещё сам. Тупой.

Мне нужно просто правило RewriteRule, в котором заменялись бы три возможных элемента динамического адреса:
index.php? на stranitca-
= на -ravno-
& на -and-

И в конце дописывалось .html

т.е. из адреса типа http://site.ru/index.php?dir=25&cat=56
сделать http://site.ru/stranitca-dir-ravno-25-and-cat-ravno-56.html
 
Andronik
Вы не поняли как работает реврайт.
А работает он в точности наоборот
При запросе страницы
http://site.ru/stranitca-dir-ravno-25-and-cat-ravno-56.html

на лету преобразовывает урл в вид
http://site.ru/index.php?dir=25&cat=56

автоматом в Вашем ШТМЛ-е код он поменять неможет.

-~{}~ 22.08.07 22:37:

По ссылке есть
http://www.egoroff.spb.ru/portfolio/apache/rewriteguide.html
примеры.

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

-~{}~ 22.08.07 22:38:

.


Ещё
http://phpclub.ru/faq/wakka.php?wakka=chpu&v=5b3
 
Мне не надо менять в коде. Я это - то знаю. В коде я буду переписывать ссылки. И то что преобразуется в этом порядке я тоже знаю. Но с синтаксисом - это какбудто вот есть музыка, а есть мужик, вообще её не воспринимающий.
Подскажите именно правило пожалуйста.

-~{}~ 22.08.07 23:41:

Спасибо за ссылку. Буду читать. Хотя точно ничего не пойму. Я серьезно сказал, что читаю и пробую это на протяжении года. Вам искренне такого не жалаю.
 
Andronik
Лентяй.
Готовых решений не дают.
В этом форуме.
 
Прежде чем словами кидаться, подумай.
Я говорил честно, что непонимаю.
 
На примере.
RewriteRule ^([a-z/]+)/([0-9]+)\.html$ /index.php?action=$1&id=$2

При запросе ссылки
http://yoursite/news/10.html

Исполнится урл вида
http://index.php?action=news&id=10

То-есть юзер посмотрит новсть на сайте с ай-ди=10

Что-то типа того.

-~{}~ 22.08.07 22:55:

Andronik
Прежде чем словами кидаться, подумай.
Я говорил честно, что непонимаю.
http://phpclub.ru/faq/WhyForum

Не понимаете - учитесь
Не выходит учиться - вариатов несколько
1. Забить на ЧПУ
2. Сменить род деятельности.
Выбор за Вами.

Разговор окончен

-~{}~ 22.08.07 22:56:

Готового ответа Вы не получите.
 
Спасибо большое.
Но здесь изначально задано два параметра в динамическом адресе action и id. А если их может быть сколько угодно много.
Я понимаю, что в круглых скобках - это передаются по порядку значения которые будут в $1, $2 и т.д.
Но вот эту неограниченную по количеству вхождений в строку замену как-то делают с помощью |
 
Прежде чем словами кидаться, подумай.
Я говорил честно, что непонимаю.
Вам здесь ни кто не будет разжёвывать. Для этого существуют университеты, но не программисты, которые ради того, что бы их стало больше (умных программистов), стараются помочь. Наезжайте на своих друзей, но не на нас. А если хотите поговорить - приезжайте в Беларусь. Ко мне.
 
Andronik
а чем тебя не устраивает все запросы направлять на индекс, и в скрипте уже свою строку запроса обрабатывать?
средствами пхп
 
Да я сам из Беларуси. Чукотка - это так написано.
А наезжать, - я ни на кого не наезжаю. И не думал.
 
Но здесь изначально задано два параметра в динамическом адресе action и id.
И что такая проблемма добавить имея пример?!?!?

А если их может быть сколько угодно много.
Неверно. Их связей вида $N ограниченное количество. Какое именно - Вы с легкостью прочитаете в мануале.

Я понимаю, что в круглых скобках - это передаются по порядку значения которые будут в $1, $2 и т.д.
http://www.egoroff.spb.ru/portfolio/apache/mod_rewrite.html
Обратные связи

Но вот эту неограниченную по количеству вхождений в строку замену как-то делают с помощью |
символов «|» которые имеют значение логического «или»

Всё - в ман.
Надоело цитировать
 
Я вообще-то врач по профессии, а это мое хобби.
Но представить не могу, что вы придете ко мне на прием, а я отправлю вас всех в ман.
 
cDLEON
теперь я понимаю, почему на минскую сходку народу мало, передерутся.
Andronik не забудь сказать СПАСИБО Mr_Max, он дал тебе уже пару дельных советов и всё выложил на блюдечке с голубой коёмочкой.
 
Andronik
Слушай, ну если это хобби - зачем тебе вообще этот мод реврайт сдался?
по хорошему, это ведь понты, и больше ничего.
Забей просто, и сделай что-нибудь другое, что тебе по силам.
Зачем напрягать себя и других ненужной, по сути, вещью?
 
AmdY
Вы знаете. Я сейчас не в Минске. Это раз.
Два - это то, что меня ни кто не приглашал. И вообще я далёк от сходок программистов. Потому как за всю жизнь я научился учиться только на своих ошибках =(.... (это конечно мой недостаток, но я таков, какой есть) Но я общительный человек. Поэтому я всевозможно пытаюсь помочь. Но код правильный не пишу принципиально. Потому как его всё равно ни кто не усвоит. И забудет на завтра.
Andronik
Посылайте, пожалуйсто, в ман тех, кто вас просит научить делать как делаете вы. Ведь мы то, клиентов, тоже в ман не отсылаем...
 
Автор оригинала: Andronik
Я вообще-то врач по профессии, а это мое хобби.
Но представить не могу, что вы придете ко мне на прием, а я отправлю вас всех в ман.
Ну мы ведь к вам придем как клиенты? За деньги все делается.

Используй то что тебе подсказал Фaнат.
 
Да я все сделал уже. Получилось все с помощью реврайт.
Не понял только, чтоже вы здесь уважаемые именно на этом форуме, как пауки в банке.

Lithium366
Тебя и за деньги не починишь.
 
Andronik, а Mr_Max-а так и непоблогодарил за старания :(
всегда считал, что врачи - воспитанные люди :(
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху