mod_rewrite - подскажите!

bweb

Guest
mod_rewrite - подскажите!

Искал так ничего толком и не понял!
Вопрос. Есть адреса файлов:
/main.php?subcontent.1
/main.php?subcontent.2
и так дальше....
Как сделать что бы файлы показывались хоть так:
/sc/1
/sc/2
Если можно подробнее напишите....
Надеюсь понятно. Спасибо.

-~{}~ 04.03.04 11:37:

Есть тут кто живой? Кто-то знает как это сделать или нет?
 

ar2r

Guest
RewriteEngine on
RewriteRule /main\.php\?(.*)\.(.*) http://domain.com/$1/$2

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

slach

Новичок
по моему он хочет наоборот

он хочет
/sc/1 ? переписать в
/main.php?subcontent.1 ??? я правильно понял ???

RewriteEngine On
RewriteRule ^/sc/(.*) main.php?subcontent.$1 [L]

вроде так
 

bweb

Guest
Спасибо. Мне нужен вариант №1... т.е. должно показываться /sc/1/ а не /main.php?subcontent.1
Я впарил эти строки:
RewriteEngine on
RewriteRule /main\.php\?(.*)\.(.*) http://localhost/$1/$2
в файл .htaccess - но ничего не выходит. Что ж не так...
Подскажите плиз.
 

bweb

Guest
да поддерживает, кто знает как вот такие:
/main.php?subcontent.1
/main.php?subcontent.2
перевести в такие:
/sc/1.phtm
/sc/2.phtm
буду благодарен за помощь
 

Дмитрий Попов

Guest
Господи, да Вы хоть монимаете чего пишите?
ModRewrite занимается преобразованием путей, который ввел (УЖЕ ввел) пользователь, в реальный путь.

Не наоборот. ModRewrite ничего не может отображать, он только может перенаправить адрес на реальный скрипт. не больше и не меньше.

Что бы путь /main.php?subcontent.2 для пользователя был путем /sc/1.phtm ему нужно давать такую ссылку, а mod_rewrite давать, как указал slach.

И второе:
ModRrewrite в любом случае не обрабатывает GET-строку. Он обрабатывает пути к файлам. URL'и
 

ys

отодвинутый новичок
Дмитрий Попов

ModRrewrite в любом случае не обрабатывает GET-строку. Он обрабатывает пути к файлам. URL'и
С GET строкой mod_rewrite тоже работает двояко:

'qsappend|QSA' (query string append)
This flag forces the rewriting engine to append a query string part in the substitution string to the existing one instead of replacing it. Use this when you want to add more data to the query string via a rewrite rule.
 

bweb

Guest
так что если у меня есть сайт состоящий с 1000 страниц такого содержания /main.php?subcontent.1 мне то я не смогу сделать sc/1 - НИКАКИМ МАКАРОМ что ли?
 

Дмитрий Попов

Guest
ys
Так разве это работа? Он просто приписывает её к получившемуся выражению.

bweb
Можно. Только надо разобраться за что отвечает ModRewrite.
Вам нужнео сами по себе ссылки уже выдывать измененными, а mod_rewrite использовать для того, что бы он при загрузке страницы по такой ссылке преобразовал её в вид /main.php?subcontent.1 и передал работу скрипту.
 

bweb

Guest
так как мне сделать что бы все ссылки в адресной строке были вида sc/1 а не /main.php?subcontent.1
подскажите пожалуйста
 

Дмитрий Попов

Guest
Да повеситься, блин!


Вам уже 3 раза скахали что надо сделать. Прочитайте мои ответы еще раз.
 

bweb

Guest
так что мне нужно все 1000 страниц переправить ???
 
Сверху