Помощник
|
Как работает mod_rewrite, научите |
sc2r2bey
|
Сообщение
#1
|
||
|
|
||
|
|||
reaboom |
5.5.2010, 13:05;
Ответить: reaboom
Сообщение
#2
|
|
Что конкретно не получается?
RewriteEngine On Это включает mod_rewrite RewriteRule /([a-b]+)/([0-9]+)/ index.php?first=$1&second=$2 Это добавляет правило, которое перенаправляет с URL вида: /abcd/1234/ на index.php?first=abcd&second=1234. Еще много всяких параметров существует, но на этом все базируется. |
|
|
sc2r2bey
|
Сообщение
#3
|
|
зачем чпу нужны?
что можно из этого сделать index.php?module=article&cat=6&id=12 -------------------- программирую web и для we |
|
|
reaboom |
5.5.2010, 13:23;
Ответить: reaboom
Сообщение
#4
|
|
зачем чпу нужны? Ну... это, как-бы, модно, красиво, удобно и, насколько я знаю, поисковики любят. что можно из этого сделать index.php?module=article&cat=6&id=12 Ну к примеру это /article/6/12/: RewriteRule ([a-z]+)/([0-9]+)/([0-9]+)/ index.php?module=$1&cat=$2&id=$3
|
|
|
sc2r2bey
|
Сообщение
#5
|
|
а полностью файл .htaccess как быдет выглядеть?
-------------------- программирую web и для we |
|
|
reaboom |
5.5.2010, 13:37;
Ответить: reaboom
Сообщение
#6
|
|
RewriteEngine On
RewriteRule ([a-z]+)/([0-9]+)/([0-9]+)/ index.php?module=$1&cat=$2&id=$3 |
|
|
sc2r2bey
|
Сообщение
#7
|
|
сделал так не работает
RewriteEngine on RewriteRule ([a-z]+)/([0-9]+)/([0-9]+)/ index.php?module=article&cat=6&id=12 и как сделать, чтоб он работал, когда другие цифры стоят в ссылке? -------------------- программирую web и для we |
|
|
reaboom |
5.5.2010, 13:45;
Ответить: reaboom
Сообщение
#8
|
|
Вы сделали не так, внимательней:
RewriteRule ([a-z]+)/([0-9]+)/([0-9]+)/ index.php?module=$1&cat=$2&id=$3 index.php?module=$1&cat=$2&id=$3 |
|
|
sc2r2bey
|
Сообщение
#9
|
|
почему так?
кстати так тоже не работает! у меня дэнвер стоит на локалке отлаживаю. -------------------- программирую web и для we |
|
|
reaboom |
5.5.2010, 13:54;
Ответить: reaboom
Сообщение
#10
|
|
почему так? Так... Как-же вам объяснить... ([a-z]+)/([0-9]+)/([0-9]+)/ вот у нас регулярное выражение, которое соответствует URL, в котором вместо ([a-z]+) могут стоять любое количество (больше 0) любых букв, а вместо ([0-9]+) любое количество любых цифр. Если выражение [a-z]+ берется в скобки, это означает, что мы этот параметр можем передать в нужный нам URL (на который будет происходить переадресация). В нашем случае в скобки взято 3 выражения. Значит мы хотим передать 3 параметра. Передаем мы их след. образом: index.php?module=$1&cat=$2&id=$3, где вместо $1 - автоматически будет подставлено значение первого выражения в скобках, $2 - второго, $3 - третьего. кстати так тоже не работает! Проверил - работает, может mod_rewrite не включен или .htaccess запрещен? Выложил архив с моим рабочим примером на всякий случай. При обращении к http://localhost/test/asd/123/123/ должен выдать: module--asd
cat--123 id--123
Прикрепленные файлы
|
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Большие ставки для кликов в Я.Директ. Как удешевить? | 2 | rownong27 | 1124 | 26.3.2024, 14:13 автор: knezevolk |
|
Как вы бросили работу и перешли на заработок с сайтов? | 12 | uahomka | 2298 | 25.3.2024, 6:52 автор: Skyworker |
|
Как отозвать банковский платеж фрилансеру? | 28 | metvekot | 3920 | 25.3.2024, 6:34 автор: Skyworker |
|
Как вывести деньги в Украине с заблокированного Юмани ? | 23 | freeax | 3647 | 24.3.2024, 20:55 автор: Liudmila |
|
Через какой браузер и как можно найти в кэшэ браузера видео | 10 | Room | 1943 | 23.3.2024, 7:41 автор: Room |
Текстовая версия | Сейчас: 29.3.2024, 13:20 |