EOMY.NET
Хостинг EOMY.NET: Форум поддержки
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
RSS Feed  

.htaccess... как сообразить на две переменные? =)

 
Начать новую тему   Ответить на тему    Список форумов EOMY.NET -> Программирование для WEB
.htaccess... как сообразить на две переменные? =)
Автор Сообщение
Денис Викторович



Зарегистрирован: 06.06.2013
Сообщения: 2
Откуда: С Востока страны, граничащей с Россией с Запада.
445 Монеты

СообщениеДобавлено: Сб, 08 Июн, 2013 17:27    Заголовок сообщения: .htaccess... как сообразить на две переменные? =) Ответить с цитатой

Здравствуйте.

Есть мой сайт.
Есть на этом моём сайте ссылки вида:
http://alodol.ip64.net/index.php?razdel=1&rasskaz=6

Есть желание сделать ссылки "дружественными" (без "=", "?", "&", "index").

Есть найденный образец в интернете, на котором разъясняется, как такое делается через .htaccess и mod_rewrite:
http://omsk777.ru/mod_rewrite.acti.primer.html

Есть переписанный мною "под себя" код в .htaccess . Там я просто заменил названия на "свои".

Вот он (для краткости убрал комментарии):
Код:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ˆ/index\.php
RewriteCond %{QUERY_STRING} ([ˆ=&]+)[=&]{1}(.*)
RewriteRule ˆ.* /index.php?%1.%2 [R=301,N]
RewriteRule ˆ([ˆ/]*)\.([a-z0-9_]+[\.]{2})(.*)$ /$1.$3 [R=301,L,N,NC]
RewriteCond %{QUERY_STRING} razdel\.(.+) 
RewriteRule ˆ.* /%1.html? [R=301,L]
RewriteRule ˆ(.+)\.html /index.php?$1.html [L,NE]


Есть в том образце, на который я указал ссылку, ещё и неприкаенный php-код. Неприкаенный, потому что не знаю как его использовать. Пытался добавить "навскидку" в главный файл после обработки куков - не вышло. Мне даже трудно понять, что этот код делает, даже с разъяснениями в образце.

Вот этот код:
Код:

if ( preg_match ("~(.+)\.html~", $_SERVER['QUERY_STRING'], $array)){
    $VAR = explode (".",$array[1]);
    $_GET = array ();
    for ( $i = 0; $i < count ($VAR); $i++ ){
        if ($i==0){
                $_SERVER['QUERY_STRING'] = 'page=' . $VAR[0];
                $_GET[page] = $VAR[0];
            }
        elseif ($i%2==1){
                $UUU = $VAR[$i];
                $VAR[$i+1] = str_replace ('[@]', '.', $VAR[$i+1]);
                $_SERVER['QUERY_STRING'] .= '&' . $UUU . '=' . $VAR[$i+1];
                $_GET[$UUU] = $VAR[$i+1];
            }
      }
}

if ( isset ($_GET)  ) { foreach ($_GET as $key=>$val) { $$key = $val; } }



И есть... точнее, нет результата.



Я не профессионал и не специалист. Просто любитель.
Для понимая некоторых слов, написанных вами на форуме, мне приходится лазить в Яндекс.

Самому разобраться не удалось. Буду благодарен за разъяснения и помощь.
_________________
Если часто много кодить, будет сниться вот ТАКОЕ
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
SeoOptimizator



Зарегистрирован: 02.07.2013
Сообщения: 6

280 Монеты

СообщениеДобавлено: Вт, 02 Июл, 2013 02:09    Заголовок сообщения: Ответить с цитатой

Как вариант можно приписать страницы таким образом
RewriteRule ^pr/([0-9]+)/$ /pr/?id=$1 [L,QSA]


и так можно избавляться от любых символов
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов EOMY.NET -> Программирование для WEB Часовой пояс: GMT
Страница 1 из 1

 


Rambler's Top100   Рейтинг@Mail.ru    



Powered by phpBB © 2001, 2005 phpBB Group