Как сделать правильные URL'ы

  • Автор темы Автор темы mckey
  • Дата начала Дата начала

mckey

Новичок
Как сделать правильные URL'ы

Как сделать так, чтобы на сайте были человеческие урл'ы!

Имеется админ-часть сайта php+mysql, статьи там, новости. Всё работает, бегает и прыгает. Но хочется, чтобы вместо http://www.mysite.com/view.php?id=123 было что-то вроде http://www.mysite.com/name_of_article.html или ...com/name_of_article/ или даже ...com/2007/05/14/name_of_article.html

Первая мысль, это просто слить всё в статические html'и, но это как-то слишком в лоб. Да и обновлять/исправлять потом как-то может быть тяжеловато.
 
Ушел читать про mod_rewrite.
Спасибо. ;)

-~{}~ 15.05.07 13:12:

Что-то не получается у меня. :(
Больше всего подходит: http://phpclub.ru/faq/chpu

в .htaccess пишу:

PHP:
RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteRule (.*)$  index.php/$1 [QSA]

В ответ получаю:

PHP:
Bad Request
Your browser sent a request that this server could not understand.

Как правильно написать RewriteRule, что все УРЛы обрабатывались index.php?
 
не стоит все урлы обрабатывать через index.php
картинки и мп3 файлы не очень похожи на пхп скрипты
 
Ну так в index.php я буду УРЛ анализировать и в зависимоти от того, что спрашиваю отдавать.

Или я что-то не так понял?
 
Хм, а чем мне это грозит?

Я в index.php могу опредлить, что это картинка и дать её пользователю с нормальным заголовком. Или не могу?

И всё-таки я не понимаю, почему не работает RewriteRule, как написано в примере? Может Апач старый? Или mod_rewrite.so?
Я уже и http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html изучаю - всё-равно не работает. %(
 
можешь.
только непонятно, зачем это делать скриптом.

а про Bad Request в сочетании с мод реврайтом почитай в гугле. наверняка там что-то есть.

версия mod_rewrite врядли имеет знавение - он же входит в дистрибутив апача
 
Из примера вот это:
PHP:
RewriteRule (.*)$  index.php/$1 [QSA]
заменил на :
PHP:
RewriteRule (.*)$  /index.php/$1 [QSA]

Заработало! :confused:
 
у меня ЧПУшки начинаются с "ru|en", поэтому картинки/стили/жс загружаются как есть
 
Сверху