Forum Webscript.Ru

Программирование => PHP => Тема начата: Vetroff от 09 Сентября 2002, 12:48:33

Название: mod_rewrite
Отправлено: Vetroff от 09 Сентября 2002, 12:48:33
Плиз помогите написать простой рег для модрерайт
чтобы урл типа /avtor/lalalala преобразовывался в /avtor.php?uname=lalalalala
Заранее благодарен
Название: mod_rewrite
Отправлено: Меняздесьдавнонет от 09 Сентября 2002, 13:37:38
могу предложить несколько другое решение.
Сделать аналог обработчика 404 :-)

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule  ^(.*)$ index.php?param=$1 [QSA,L]

Действует просто. Если апач не находит ни файла (!-f), ни каталога (!-d) с запрошенным именем, то вызывается index.php, которому в $param передается запрошенный урл.
Ну а ты уже можешь сам разобрать его средствами PHP

$arr=explode("/",$param);
if ($arr[1]=="avtor") {
  $uname=$arr[2];
  include "avtor.php";
}


Хотя, конечно, для твоего случая это не очень катит.
Думаю, прочтя вот эту статью, ты сам сможешь написать - там очень похожий случай:
http://sitemaker.ru/technologies/webserver/mod_rewrite/
Название: mod_rewrite
Отправлено: Vetroff от 09 Сентября 2002, 13:45:21
Спасибо, попробую
Название: mod_rewrite
Отправлено: Меняздесьдавнонет от 09 Сентября 2002, 13:49:54
вот, по статье, вроде, так выходит:
RewriteRule ^(.*)/avtor/(.*)$ $1/avtor.php?uname=$2