|
модуль mod_rewrite. часть 3Для поисковика, «shop» теперь как-бы является директорией, содержащей товары product1, product2 и т.д. Если пользователь, со страницы результатов запроса в поисковике проследует по такой ссылке, то эта ссылка должна будет трансформироваться в ссылку: shop.cgi?product1. Чтобы добиться такого эффекта можно использовать mod_rewrite, используя следующую конструкцию в файле .htaccess: RewriteEngine on Options +FollowSymlinks RewriteBase / RewriteRule ^(.*)shop/(.*)$ $1cgi-bin/shop.cgi?$2 Переменные $1 и $2 составляют так называемые "backreferences". Они связаны с текстовыми группами. Вызываемый URL разбивается на части. Все, что находится перед «shop», плюс все что находится после «shop/» определяется и хранится в этих двух переменных: $1 и $2. До этого момента, наши примеры использовали «правила» типа: RewriteRule ^.htaccess*$ - [F] Однако мы еще не достигли истинной перезаписи URL адресов, в смысле того, что один URL должен перенаправлять посетителя на другой. Для нашей записи вида: RewriteRule ^(.*)shop/(.*)$ $1cgi-bin/shop.cgi?$2 применяется общий синтаксис: RewriteRule текущийURL перезаписываемыйURL Как видите, эта директива выполняет действительную «перезапись» URL адреса. Другие статьи по теме: - модуль mod_rewrite. часть 1- Apache + php + xml + mysql для windows - модуль mod_rewrite. часть 2 - вебсервер в домашних условиях - собираем apache + php + xml для linux |
|
2006-2024 © SMTI.RU Главная страница | Связаться с нами |