Помощник
|
Правила для mod_rewrite - требуется |
Пуховой
|
Сообщение
#1
|
||
|
|
||
|
|||
purple |
13.8.2010, 22:31;
Ответить: purple
Сообщение
#2
|
|
не тестировал, попробуйте так:
RewriteEngine on
RewriteRule ^index[too]php[vop]param[rav]([0-9]+)[and]param[rav]([0-9]+)$ /index.php?param1=$1¶m2=$2 [NC] Сообщение отредактировал purple - 13.8.2010, 22:33 |
|
|
Пуховой
|
Сообщение
#3
|
|
Такой момент... Правила должны одинаково хорошо работать для любого файла и количества параметров.
|
|
|
purple |
13.8.2010, 23:13;
Ответить: purple
Сообщение
#4
|
|
немного не понял сей момент. приведите, пожалуйста, побольше примеров в таком случае, и результаты, которые должны быть при рерайте.
|
|
|
Пуховой
|
Сообщение
#5
|
|
Запрос: http://www.domain.com/?boo=1
Должно отдать содержимое файла: http://www.domain.com/[vop]boo[rav]1 Запрос: http://www.domain.com/page?puhovoi=3 Должно отдать содержимое файла: http://www.domain.com/page[vop]puhovoi[rav]3 Запрос: http://www.domain.com/iphone/iphone.asp?model=3&big=43 Должно отдать содержимое файла: http://www.domain.com/iphone/iphone[too]asp[vop]model[rav]3[and]big[rav]43 Я у сервера прошу некий файл. Сервер смотрит адрес запроса, делает замену: ? -> [vop] & -> [and] . -> [too] = -> [rav] ... и отдает нужный файл. Причем запрос может быть абсолютно любым - с директориями, с отсутствием некоторых параметров или наоборот - с излишним присутствием. Как реализовать посредством .htaccess - не представляю, но других путей нет (или слишком заковыристые). |
|
|
purple |
14.8.2010, 0:33;
Ответить: purple
Сообщение
#6
|
|
отписал на serverfault'е, подожду ответа. как будет ответ - сразу скину вам личное сообщение с оным.
|
|
|
Пуховой
|
Сообщение
#7
|
|
Посоветовался со знакомым веб-программистом.
Из того, что он насоветовал, получилось: - .htaccess RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ rewriterule.php - .rewriterule.php <?php echo (readfile ($_SERVER['DOCUMENT_ROOT'].str_replace ("?", "[vop]", str_replace (".", "[too]", str_replace ("&", "[and]", str_replace ("=", "[rav]", $_SERVER['REQUEST_URI'])))))); ?> Работает :) |
|
|
purple |
14.8.2010, 2:21;
Ответить: purple
Сообщение
#8
|
|
а в условии разрешено было через скрипт делать? просто думал именно через htaccess надо
|
|
|
Пуховой
|
Сообщение
#9
|
|
|
purple, если будет найдено решение через .htaccess - только в радость. На данный момент буду использовать скрипт, что не очень подходит под задачу, но работает.
Новая проблема. Делаем запрос http://domain.com/booo.php?param=1 - все работает как нужно. Делаем запрос http://domain.com/?param=1 - отправляет в корень домена на индексную страницу. Нужно поправить так, чтобы запросы скрипту передавались только в том случае, если в них присутствует "?". Актуально. . Все оказалось проще. RewriteEngine On RewriteRule ^(.*)$ rewriterule.php <?php error_reporting (0); if (substr($_SERVER['REQUEST_URI'], -1, 1) == '/') { ob_start(); include ($_SERVER['DOCUMENT_ROOT'].$_SERVER['REQUEST_URI'].'index.html'); echo ob_get_clean(); } elseif (strpos($_SERVER['REQUEST_URI'], '?') !== false || strpos($_SERVER['REQUEST_URI'], '&') !== false) { ob_start(); include ($_SERVER['DOCUMENT_ROOT'].str_replace ("?", "[vop]", str_replace (".", "[too]", str_replace ("&", "[and]", str_replace ("=", "[rav]", $_SERVER['REQUEST_URI']))))); echo ob_get_clean(); } else { ob_start(); include ($_SERVER['DOCUMENT_ROOT'].$_SERVER['REQUEST_URI']); echo ob_get_clean(); } ?>
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
SiteAnalyzer - бесплатная программа для аудита и анализа сайта | 79 | Chaser | 74319 | Сегодня, 1:02 автор: Chaser |
|
Требуется помощь по сайту на "ВордПресс" Закрылся доступ в панель администратора |
16 | Tia2 | 2525 | Вчера, 21:34 автор: Arsenwenger |
|
Посоветуйте массажер для спины и шеи | 11 | Boymaster | 934 | Вчера, 18:24 автор: Arsenwenger |
|
⭕Антидетект браузер AdsPower для эффективной работы с мультиаккаунтами! | 84 | AdsPower | 24599 | Вчера, 16:35 автор: AdsPower |
|
Betatransfer.net - прием платежей для HIGH RISK проектов, интернет эквайринг и мерчант онлайн оплат | 55 | arendator | 35109 | Вчера, 2:12 автор: arendator |
Текстовая версия | Сейчас: 26.4.2024, 2:35 |