Автор Тема: вопрос о чпу и RewriteRule  (Прочитано 13590 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« : 18 Октября 2002, 14:13:52 »
Преобразовав url ?$action=menu_1 нужно получить, http://www.сайт.ru/меню_1/ , но при выполнении .htaccess

RewriteEngine on
Options 
+FollowSymlinks
RewriteBase 
/t/
RewriteRule ^(.*)menu/(.*)$ $1/?$2

и url http://www.сайт.ru/menu/2

получаю редирект на корень сайта ???
С уважением,
Michel

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
вопрос о чпу и RewriteRule
« Ответ #1 : 18 Октября 2002, 14:53:25 »
Цитировать
url ?$action=menu_1 нужно получить, http://www.сайт.ru/меню_1/

Такой запрос:
http://www.сайт.ru/php.pl?action=menu_1 ?
Вероятно описывается так:
RewriteRule ^(.*)$ ./php.pl?action=$1
The documentations is your friend

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #2 : 18 Октября 2002, 15:03:40 »
Цитировать
RewriteRule ^(.*)$ ./php.pl?action=$1

При такой записи сервер выходит на 10060 Connection timeout
Internet Security 
and Acceleration Server
С уважением,
Michel

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
вопрос о чпу и RewriteRule
« Ответ #3 : 18 Октября 2002, 15:09:47 »
Напиши полностью какой нужен запрос и на что он должен заменяться.
The documentations is your friend

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #4 : 18 Октября 2002, 15:25:57 »
написал скрипт "книжная полка", данные берутся из базы url при этом выглядит так: ?&категория&книга&id_пользователя.
Если пользователь выбрал категорию показываю список книг (имеется сортировка по книгам и авторам) ей принадлежащих, при выборе книги - вывожу соответственно информацию по ней.
Хотел с помощью RewriteEngine сделать нормальный ЧПУ.
Но утыкаюсь в вышеупомянутую ошибку.
С уважением,
Michel

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
вопрос о чпу и RewriteRule
« Ответ #5 : 18 Октября 2002, 15:34:55 »
Я имел ввиду следующее:
Запрос такой maro.newmail.ru/index.php?id_cat=1&id_book=1&id_usr=1
Нужно получить из такого: maro.newmail.ru/id_cat/id_book/id_usr

RewriteRule ^(.*)/(.*)/(.*)/(.*)$ $1/index.php?id_cat=$2&id_book=$3&id_usr=$4


Смотри сюда http://sitemaker.ru/technologies/webserver/mod_rewrite3/
The documentations is your friend

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #6 : 18 Октября 2002, 15:44:36 »
Да, все правильно. ссылку уже прочитал, но при таком раскладе как
Цитировать
RewriteRule ^(.*)/(.*)/(.*)/(.*)$ $1/index.php?id_cat=$2&id_book=$3&id_usr=$4
вываливаюсь на 404 ошибку.
С уважением,
Michel

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
вопрос о чпу и RewriteRule
« Ответ #7 : 18 Октября 2002, 15:52:56 »
Что логи говорят?
The documentations is your friend

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #8 : 18 Октября 2002, 16:06:57 »
Цитировать
Что логи говорят?

примерно следующее:
/полный путь/t/2 [Fri Oct 18 15:42:09 2002] [error] [client мой IP] File does not exist:
С уважением,
Michel

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
вопрос о чпу и RewriteRule
« Ответ #9 : 18 Октября 2002, 16:25:42 »
Michel_Mak, срочно читать тут: http://httpd.apache.org/docs/misc/rewriteguide.html и тут: http://httpd.apache.org/docs/mod/mod_rewrite.html#RewriteRule в частности про "флаги".
The documentations is your friend

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
вопрос о чпу и RewriteRule
« Ответ #10 : 21 Октября 2002, 08:39:05 »
Вот сильнейшая статейка:
http://www.engelschall.com/pw/apache/rewriteguide/

Очень много примеров!
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #11 : 22 Октября 2002, 16:32:32 »
NeoNox и Alexandr
Спасибо за статьи. Но проблема остается. К сожалению, суппорты помочь не смогли, ссылаясь на неправильную работу mod_rewrite.
Если вписываю
RewriteEngine on
RewriteRule 
^(.*)/(.*)$ $1/index.php?id_cat=$2

Происходит, что то совсем не понятное, рисунки и css (в директориях лежат) не грузятся (в errors выводятся ошибки, что таких файлов нет). Вернее сказать, открываются, но как то избирательно и не всегда. Ну и соответственно, при указании в url своего пути, наример, maro.newmail.ru/id_cat - выдается ошибка 404 (документ отсутствует).
С уважением,
Michel

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
вопрос о чпу и RewriteRule
« Ответ #12 : 24 Октября 2002, 08:48:31 »
А так не пробовал
""

Т.е. всегда от корня искать.
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #13 : 24 Октября 2002, 10:14:46 »
Цитировать
от корня искать

Саш, спасибо, но я специально прописал все от корня и выдержал все названия в едином стиле :)
С уважением,
Michel

Оффлайн Michel_Mak

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 256
  • +0/-0
  • Пол: Мужской
  • 0
    • Просмотр профиля
    • http://#
вопрос о чпу и RewriteRule
« Ответ #14 : 24 Октября 2002, 18:45:26 »
В результате многочисленных экспериментов было выявлено, что команда RewriteBase / - вызывает ошибки при чтении информации из директорий с картинками и стилями. Реакция на ключи [R] и [L], в разных вариантах приводила к ненахождению страниц сайта или ошибкам.
Удалось с помощью команды RewriteRule ^page/(.*)$ index.php?page=$1 приблизиться к желаемому результату.
В данном случае url выглядит так http://www.мой_сайт.ru/page/about, но как убрать "page" (http://www.мой_сайт.ru/about) - загадка?
Может еще есть варианты?
С уважением,
Michel

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28