Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Mod Rewrite
 
 автор: buka   (21.09.2006 в 14:03)   письмо автору
 
 

На money.mail.ru строка url всегда остается одной и той же, как они так делают ? Думаю при помощи сабжа ? Если можно то с примером

   
 
 автор: Unkind™   (21.09.2006 в 20:47)   письмо автору
 
   для: buka   (21.09.2006 в 14:03)
 

Нет. mod_rewrite - серверная часть, сервер никак не сможет угадать, что Вам нужно, если Вы будете передавать только http://money.mail.ru/
Если Вы посмотрели HTML-код, то там используется обычные ссылки.
Например, http://money.mail.ru/?shops
Просто при запросе такой ссылки Вам устанавливается специальная cookie, потом делается редирект на главную, а по cookies определяют, что Вы запрашивали ранее.

   
 
 автор: buka   (22.09.2006 в 16:51)   письмо автору
 
   для: Unkind™   (21.09.2006 в 20:47)
 

Интересная штука а можно поподробнее ?

   
 
 автор: Unkind™   (22.09.2006 в 18:14)   письмо автору
 
   для: buka   (22.09.2006 в 16:51)
 


<?php
//Главная страница сайта

$place $_SERVER['QUERY_STRING'];

switch(
$place)
{
//Если пользователь запрашивает http://your-site.com/?feedback
case 'feedback':
//Устанавливаем cookie на один час
setcookie ("place""feedback"time() + 3600"/"$_SERVER['HTTP_HOST'], 0);
//Редирект на главную
header("Location: /");
//Выход
die();
break;

//И т.д.

//Если не нашли раздел, который он запрашивает...
default:
unset(
$place);
break;
}

//Смотрим, что у пользователя в COOKIE "place"...
if(!isset($_COOKIE['place']))
{
$place "";
}
else
{
$place $_COOKIE['place'];
}

header("Content-type: text/html; charset=windows-1251"); 
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); 
header("Cache-Control: no-cache, must-relative");

echo 
"<?xml version=\"1.0\" encoding=\"windows-1251\"?>\n";
echo 
"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n";
echo 
"<html><head>\n";
echo 
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" />\n";
echo 
"<title>SITE</title>\n";
echo 
"</head><body>\n";

switch(
$place)
{
//Раздел сайта "Новости"
case 'news':
include(
"includes/news.dat");
break;

//Раздел сайта "Обратная связь"
case 'feedback':
include(
"includes/feedback.dat");
break;

//И т.д.

//По умолчанию - главная страница сайта
default:
include(
"includes/mainpage.dat");
break;
}

//Низ страницы...
echo "</body></html>";
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования