Автор Тема: как делаются читабельные URLы? [mod_rewrite?]  (Прочитано 3665 раз)

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

Оффлайн Xander

  • санитар леса
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1780
  • +0/-0
  • 2
    • Просмотр профиля
То есть какие есть способы преобазования url-а из
 /foo/bar/quux/42, видимого на сайте, в  /foo/index.cgi?cat=bar&item=quux&id=42, реально обрабатываемый сервером?
(Есть, насколько я помню, mod_rewrite, прожорливый до ресурсов, еще что-то вроде было, что - не помню)  

Да, еще: http://www.hwn.ru что-нибудь такое предоставляет?
•••Jah\'d never let us down!•••

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #1 : 03 Июня 2002, 18:17:24 »
на hwn работает модрирайт. - см. mp.webscript.ru/demo/
еще - через ErrorDocument, засNрает логи, не всегда хорошо индексируется спайдерами
еще через httpd.conf прикручивают обработчик, но это не самый лучший вариант.

mod_rewrite не такой уж прожорливый, чтобы от него отказываться. я правда не замерял.
ну, будем исповедоваться?

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #2 : 03 Июня 2002, 22:02:07 »
Или проще. Создать скрипт с именем "foo"
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #3 : 03 Июня 2002, 22:26:33 »
Цитировать
Или проще. Создать скрипт с именем "foo"

это не всегда проще ибо при этом надо заставить апач его обрабатывать соответствующим образом
ну, будем исповедоваться?

Оффлайн YA

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 597
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #4 : 03 Июня 2002, 23:36:33 »
Цитировать
То есть какие есть способы преобазования url-а из
/foo/bar/quux/42, видимого на сайте, в /foo/index.cgi?cat=bar&item=quux&id=42, реально обрабатываемый сервером?

Только что обсуждали:
http://forums.webscript.ru/showthread.php?s=&threadid=5681
http://forums.webscript.ru/showthread.php?s=&threadid=5957
Литературный перевод с русского и английского на Perl. Дорого!

Оффлайн Xander

  • санитар леса
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1780
  • +0/-0
  • 2
    • Просмотр профиля
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #5 : 03 Июня 2002, 23:45:20 »
Угу, спасибо, прояснили ситуацию. Видимо, ответом будет mod_rewrite.
•••Jah\'d never let us down!•••

Оффлайн YA

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 597
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #6 : 04 Июня 2002, 00:07:23 »
Xander
А уверен, что дадут? Где хостишся?
Литературный перевод с русского и английского на Perl. Дорого!

Оффлайн Xander

  • санитар леса
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1780
  • +0/-0
  • 2
    • Просмотр профиля
как делаются читабельные URLы? [mod_rewrite?]
« Ответ #7 : 05 Июня 2002, 15:34:37 »
Да, по поводу производительности:
цитатка из /htdocs/manual/mod/mod_rewrite.html:

 
Цитировать

Unbelievably mod_rewrite provides URL manipulations in per-directory context, i.e., within .htaccess files, although these are reached a very long time after the URLs have been translated to filenames. It has to be this way because .htaccess files live in the filesystem, so processing has already reached this stage. In other words: According to the API phases at this time it is too late for any URL manipulations. To overcome this chicken and egg problem mod_rewrite uses a trick: When you manipulate a URL/filename in per-directory context mod_rewrite first rewrites the filename back to its corresponding URL (which is usually impossible, but see the RewriteBase directive below for the trick to achieve this) and then initiates a new internal sub-request with the new URL. This restarts processing of the API phases.
 


Я это так понимаю, что когда ты не единоличный хозяин своего Апача, то можешь указывать соотв. директивы mod_rewrite\'у только в .htaccess, и они при этом будут выполняться гораздо медленне, чем будучи прописанными непосредственно в httpd.conf. Так?
•••Jah\'d never let us down!•••

 

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