Автор Тема: mod_rewrite  (Прочетена 2572 пъти)

rat

  • Напреднали
  • *****
  • Публикации: 266
    • Профил
mod_rewrite
« -: Jan 04, 2005, 10:56 »
Здравейте,
Възможно ли е въобще да се напише правило което да прави заместване на URL от типа :
site.com/new.php?id=10 към URL от типа :
site.com/index.php?id=10
Тоест искам да си запазя променливата която се предава в URL-то.
Опитах с
Примерен код
RewiteRule ^new\.com\?id=(.*)$  index.php?id=$1

и не се получава. Май този mod_rewrite e да пренаписваш само статични URL-та.
От оптите които направих ми се струва че не взима нищо което е след името на файла (или след "?").

sdr

  • Напреднали
  • *****
  • Публикации: 655
    • Профил
mod_rewrite
« Отговор #1 -: Jan 04, 2005, 12:33 »
Може и още как! Аз обаче правя обратното (статично към пхп) посредством
Примерен код
RewriteEngine on
RewriteRule   ^/(dl)/([1234567890]+)(\.?wml)?$        /v$1/index_dl.php?num=$2 [NC,L]
 

т.е. от /dl/123 правя /vdl/index_dl.php?num=123
Активен

rat

  • Напреднали
  • *****
  • Публикации: 266
    • Профил
mod_rewrite
« Отговор #2 -: Jan 04, 2005, 14:04 »
Така става но не е това идеята .
на мен ми трябва динамично ПХП към динамично ПХП.
Ако имам test.php?id=xx да стане index.php?id=xx
Където xx е променлива.

sdr

  • Напреднали
  • *****
  • Публикации: 655
    • Профил
mod_rewrite
« Отговор #3 -: Jan 04, 2005, 16:54 »
Примерен код

RewriteEngine on
RewriteRule   ^/test.php(.*)$        /index.php$1 [NC,L]


primerno?
Активен

rat

  • Напреднали
  • *****
  • Публикации: 266
    • Профил
mod_rewrite
« Отговор #4 -: Jan 04, 2005, 18:34 »
Да. Така става но все пак е неудобно защото $1 е всичко зад името на файла : test.php[?id=10&name=xxx]
$1=?id=10&name=xxx
По този начин на index.php ще предам всички параметри от старото УРЛ .
Аз бих искал да мога да си отсея само параметрите поотделно.
Ето каква е ситуацията:
Има връзки към моя сайт които вече не са валидни.Примерно има такива :
site.com/plans.php?id=xx
а вече трябва да са index.php?o=plans&id=xx
където xx=[1 : &]
Понеже не мога да пипам по чуждите сайтове реших да го направя с mod_rewrite.

sdr

  • Напреднали
  • *****
  • Публикации: 655
    • Профил
mod_rewrite
« Отговор #5 -: Jan 04, 2005, 20:35 »
Примерен код

RewriteEngine on
RewriteRule   ^/plans.php?(.*)$        /index.php?o=plans&$1 [NC,L]


Аз обичам да помагам но не отказвам и заплащане  ':angry:'
Активен

rat

  • Напреднали
  • *****
  • Публикации: 266
    • Профил
mod_rewrite
« Отговор #6 -: Jan 05, 2005, 11:10 »
Разбираемо е  '<img'>
Ще свърши работа да кажеш че със сигурност е възоможно това нещо защото почвам да се съмнявам.

P.S.
Каква ти е цената за такова нещо ?

sdr

  • Напреднали
  • *****
  • Публикации: 655
    • Профил
mod_rewrite
« Отговор #7 -: Jan 05, 2005, 14:59 »
От както спрях да пия вече не мога да казвам "..ще черпиш бира.." вапроса е че след толкова много примери вече би трябвало и сам да се справиш
Активен

sdr

  • Напреднали
  • *****
  • Публикации: 655
    • Профил
mod_rewrite
« Отговор #8 -: Jan 10, 2005, 19:32 »
И както се оказа на края НЕ СЪМ БИЛ ПРАВ за което искренно се извинявам... оказа се че mod_rewrite не може да мачва в рекуеста, но може да го променя) Могат да се правят някви магии с CondRewrite но това вече е друг въпрос. Съжалявам ако съм те подвел да загубиш допълнително време в тестване
Активен

CaBA

  • Напреднали
  • *****
  • Публикации: 303
    • Профил
    • WWW
mod_rewrite
« Отговор #9 -: Jan 10, 2005, 20:12 »
RewriteCond (а не CondRewrite) ти е необходим, ако имаш повече от едно правило за пренаписване - за да не се пренапише един УРЛ от няколко правила.Това:
Цитат
site.com/new.php?id=10 към URL от типа :
site.com/index.php?id=10
става така
Примерен код
RewriteCond %{REQUEST_URI}  ^new.php
RewriteRule  ^new.php?id=(.*)   index.php?id=$1 [R]

Това:
Цитат
site.com/plans.php?id=xx
а вече трябва да са index.php?o=plans&id=xx

става така:
Примерен код
RewriteCond %{REQUEST_URI}   ^plans.php
RewriteRule  ^plans.php?(.*)     index.php?o=plans&$1 [R]

и т.н.
Активен

10 години ябълкова диета стигат, стигат!

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Mod_rewrite
Web development
abus3r 3 2433 Последна публикация Jul 13, 2006, 15:20
от rat
Apache mod_rewrite
Web development
sharo 0 1562 Последна публикация Jan 05, 2007, 13:19
от sharo
Mod_rewrite
Web development
morkov4o 0 1241 Последна публикация Jul 07, 2007, 23:04
от morkov4o
Mod_rewrite
Настройка на програми
ivanatora 2 1707 Последна публикация Jul 22, 2007, 20:46
от Йордан
Php сесия и mod_rewrite
Web development
yancheff 0 1389 Последна публикация Aug 24, 2007, 13:08
от yancheff