|
|
|
|
|
для: LINKIN
(03.02.2010 в 23:39)
| | Чисто технически ничего сложного нет.
Скрипт получил строку, обратился к SQL-серверу с запросом, какому внутреннему документу (или скрипту) соответствует тайтл-адрес, получил ответ, загрузил документ/выполнил скрипт.
Правда, делать эту технологию именно для прогноза погоды на указанное число - кич (никому не нужный выпендреж иными словами). | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2010 в 22:50)
| | Так а как? Хочешь сказать, что они гетами передают тайтлы? | |
|
|
|
|
|
|
|
для: LINKIN
(03.02.2010 в 21:48)
| | Одно из трех.
Либо именно по описанному принципу
Переброс с кучерявой ссылки на скриптовый жесткий адрес типа daily_wheater.php?day=chetver-4-lyutogo
Либо статический файл с прогнозом и с длинным именем.
Либо первый вариант, формирующий кешированный статический файл с длинным именем, и последующий переброс на него.
(в рамках 404-го обработчика) | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2010 в 21:19)
| | Ок. Все принимается. Объясните тогда мне как реализовано вот это
http://tsn.ua/ukrayina/prognoz-pogodi-v-ukrayini-na-chetver-4-lyutogo.html | |
|
|
|
|
|
|
|
для: LINKIN
(03.02.2010 в 19:50)
| | >В убеждаете что mod_rewrite предназначен для переделки /ru/company.htm в index.php?action=company&lang=ru, а не наоброт?
Я знаю, для чего предназначен этот инструмент.
Убеждать в чем-либо кого-либо против его воли я буду лишь за отдельные деньги.
>Ситуация полностью наоборот.
Что ж, давайте попробуем рассмотреть.
>У меня имеется
>1) ссылка в html-коде виде index.php?action=company&lang=ru
Хорошо. Есть ссылка, при клике порождающая запрос GET index.php?action=company&lang=ru
>У меня не имеется, но необходим
>2) скрипт, который ссылку index.php?action=company&lang=ru переделывает ...
Скрипты не переделывают ссылки. Скрипты обрабатывают запросы.
php-скрипт index.php способен обработать запрос (1) без помощи рерайтов.
>...в /ru/company.htm
>Я желаю, чтобы сервер, принимающий запрос по ссылке (1) подставлял виртуальную ссылку (2) в поле ссылки браузера.
полем ссылки Вы называете очевидно адресную строку браузера.
поставить туда скрипт может всё что угодно безо всякого рерайта, безо всяких регулярок.
Делается это вызовом функций header("Location: другой_адрес"); exit();
Но ведь браузер же по этому адресу /ru/company.htm тут же сделает попытку перейти!
И тогда мы придем к тому, с чего начали диалог.
Потребуется, чтобы сервер перенаправлял запрос /ru/company.htm скрипту index.php?action=company&lang=ru перед непосредственной обработкой. | |
|
|
|
|
|
|
|
для: LINKIN
(03.02.2010 в 01:35)
| | >например RewriteCond %{QUERY_STRING} ^id=([0-9]+)&parent=([0-9]+)
как я и говорил, это только с RewriteCond и переадресацией для того чтобы в браузер дать другую ссылку
например ссылка обязятельно имеет первым параметром
action="слово"
, а вторым
lang=ru
, index.php как-бы должен-бы лежать в корне сайта, тогда будет примерно так
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^action=([a-z_]+)&lang=([a-z]+)
# Rule будет обрабатываться только в случае совпадения в Cond
RewriteRule ^index.php$ %2/%1.html [R]
# [R] - переадресация
# не проверял
|
| |
|
|
|
|
|
|
|
для: Trianon
(03.02.2010 в 19:25)
| | Ситуация полностью наоборот. В убеждаете что mod_rewrite предназначен для переделки /ru/company.htm в index.php?action=company&lang=ru, а не наоброт?
У меня имеется
1) ссылка в html-коде виде index.php?action=company&lang=ru
У меня не имеется, но необходим
2) скрипт, который ссылку index.php?action=company&lang=ru переделывает в /ru/company.htm
Я желаю, чтобы сервер, принимающий запрос по ссылке (1) подставлял виртуальную ссылку (2) в поле ссылки браузера. | |
|
|
|
|
|
|
|
для: LINKIN
(03.02.2010 в 18:42)
| | >Хорошо. Я вообще в статьях именно такой принцип вычитывал. Как тогда сделать? Что необходимо написать чтобы добиться такого результата.
>Сейчас ссылка index.php?action=company&lang=ru
>Мне надо /ru/company.html
Перевожу на русский язык.
У Вас имеются:
1) ссылка в html-коде вида <a href=/ru/company.html >ссылка</a>
2) cкрипт, который умеет обрабатывать запрос вида index.php?action=company&lang=ru
Вы желаете, чтобы сервер, воспринимающий запрос по ссылке(1), пересылал/перенаправлял/переадресовывал его (запрос) скрипту (2) перед непосредственно обработкой. С сохранением функциональности - то есть работоспособным образом.
Только так и никак иначе. | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2010 в 16:08)
| | Хорошо. Я вообще в статьях именно такой принцип вычитывал. Как тогда сделать? Что необходимо написать чтобы добиться такого результата.
Сейчас ссылка index.php?action=company&lang=ru
Мне надо /ru/company.html | |
|
|
|
|
|
|
|
для: LINKIN
(03.02.2010 в 11:05)
| | >Я хочу добиться переадресации с index.php?action=about&lang=ru на /ru/about.html.
А по-моему - как раз наоборот. | |
|
|
|
|