X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Неправильно работают свои правила mod_rewrite, Помогите разобраться
Shimo
Shimo
Topic Starter сообщение 11.4.2011, 14:07; Ответить: Shimo
Сообщение #1


Помогите решить проблему такого вида, при использовании nanocms.
Есть папка news в content мне нужно чтобы в индекс файл передавались переменные $temp1 и $temp2 при этом адресация строилась так http:\\site.ru\news\temp1\temp2\ при этом открывалась папка news с передачей данных переменной вот две попытки изменения .htaccess

первый вариант

RewriteEngine on
RewriteRule ^.htaccess$ - [F]

RewriteRule ^/data/content/news/([0-9]+)/(.*)/$ index.php?temp1=$1&temp2=$2 [L]
RewriteRule ^/data/content/news/([0-9]+)/$ index.php?temp3=$1 [L]

RewriteRule ^goto/$ goto/index.php
RewriteRule ^(.*).htm$ index.php
RewriteRule ^(.*)/$ index.php


второй вариант

RewriteEngine on
RewriteRule ^.htaccess$ - [F]

RewriteRule ^news/([0-9]+)/(.*)/$ index.php?temp1=$1&temp2=$2 [L]
RewriteRule ^news/([0-9]+)/$ index.php?temp3=$1 [L]

RewriteRule ^goto/$ goto/index.php
RewriteRule ^(.*).htm$ index.php
RewriteRule ^(.*)/$ index.php


Оба варианта выводит как отсутствующая страница, что я сделал неверно?
При этом необходимо сохранить структуру строения сайта на nanocms, то есть другие папки должны обрабатываться как обычно только news нужно изменить.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 11.4.2011, 23:20; Ответить: ZiTosS
Сообщение #2


Shimo, первый вариант не понятно зачем нужен. Зачем такие вложенности. Смотрите, пс лучше относится к страницам более высокого уровня (меньшей вложенности).

Покажите какие ссылки должны обрабатываться вашими правилами. Потому что, как минимум ваша ссылка httр://site.ru/news/temp1/temp2/ уже не пройдет, т.к. у вас в регулярках:
temp1 -> последовательность цифровых символов больше одного
temp2 -> последовательность любых допустимых в url символов 0 или более.

И возможно стоит сделать последний слеш необязательным, а то может вы на этом напоролись.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Shimo
Shimo
Topic Starter сообщение 14.4.2011, 19:15; Ответить: Shimo
Сообщение #3


(ZiTosS @ 11.4.2011, 22:20) *
Shimo, первый вариант не понятно зачем нужен. Зачем такие вложенности. Смотрите, пс лучше относится к страницам более высокого уровня (меньшей вложенности).

Покажите какие ссылки должны обрабатываться вашими правилами. Потому что, как минимум ваша ссылка httр://site.ru/news/temp1/temp2/ уже не пройдет, т.к. у вас в регулярках:
temp1 -> последовательность цифровых символов больше одного
temp2 -> последовательность любых допустимых в url символов 0 или более.

И возможно стоит сделать последний слеш необязательным, а то может вы на этом напоролись.


Необходимо передать в новости 2 переменные порядок я указал первая хранит набор цифр любой многозначный и не допустимы буквы и спец символы, вторая переменная хранит любой набор букв цифр и символ _(подчеркивания) то есть можем иметь такой вариант
http:\\test.ru\news\556329\prosto_5_stroka\
данное разбиение строки нужно только для папки news остальные папки должны работать как обычно в этой cms.

Я про mode rewrite ничего не знаю тыкался сам наобум пытаясь сделать так как мне нужно но ничего не вышло.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 14.4.2011, 23:16; Ответить: ZiTosS
Сообщение #4


Shimo, важно так же где лежит файл .htaccess, если на одном уровне с папкой news, то можно писать так:
RewriteRule ^news/([0-9]+)/([_a-z0-9]+)/?$ index.php?temp1=$1&temp2=$2 [L,NC]

где:
  • ([0-9]+) - карман, содержащий только цифры (помещается в temp1)
  • ([_a-z0-9]+) - карман, содержащий буквы, цифры и "_" (помещается в temp2)
  • флаг L - конечное правило, если совпало далее не идем.
  • флаг NC - не учитываем регистр символов (это чтобы не писать в кармане a-zA-Z)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Shimo
Shimo
Topic Starter сообщение 15.4.2011, 3:41; Ответить: Shimo
Сообщение #5


(ZiTosS @ 14.4.2011, 22:16) *
Shimo, важно так же где лежит файл .htaccess, если на одном уровне с папкой news, то можно писать так:
RewriteRule ^news/([0-9]+)/([_a-z0-9]+)/?$ index.php?temp1=$1&temp2=$2 [L,NC]

где:
  • ([0-9]+) - карман, содержащий только цифры (помещается в temp1)
  • ([_a-z0-9]+) - карман, содержащий буквы, цифры и "_" (помещается в temp2)
  • флаг L - конечное правило, если совпало далее не идем.
  • флаг NC - не учитываем регистр символов (это чтобы не писать в кармане a-zA-Z)


создал .htaccess в папке контента с этой строкой все равно пишет документ не найден, тот .htaccess что я выкладывал лежит в корне. Вот файл .htaccess тот что идет с nanocms

RewriteEngine on
RewriteRule ^.htaccess$ - [F]

RewriteRule ^goto/$ goto/index.php
RewriteRule ^(.*).htm$ index.php
RewriteRule ^(.*)/$ index.php


лежит он в корне сайта, но что то постоянно блокирует, других .htaccess файлов нет.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 22.4.2011, 13:57; Ответить: ZiTosS
Сообщение #6


Shimo, зачем в папке контента. В корень нужно эту строку поместить, в стандартный файл, допустим перед строкой:
RewriteRule ^goto/$ goto/index.php

Т.е. весь файл будет выглядеть так:
RewriteEngine on
RewriteRule ^.htaccess$ - [F]

RewriteRule ^news/([0-9]+)/([_a-z0-9]+)/?$ index.php?temp1=$1&temp2=$2 [L,NC]

RewriteRule ^goto/$ goto/index.php
RewriteRule ^(.*).htm$ index.php
RewriteRule ^(.*)/$ index.php


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Нужна програмка постинга в свои сайты
0 kasey7 375 22.4.2024, 19:54
автор: kasey7
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыПродам свои сайты
10 сайтов на продажу
3 ArchiDOM 1488 5.4.2024, 3:51
автор: Llirik
Открытая тема (нет новых ответов) По какому принципу работают ускорители индексации сайта?
5 Lifelove 1646 29.1.2024, 9:50
автор: Skyworker
Горячая тема (нет новых ответов) GuruLeads — финансовая партнерская сеть открывает свои двери для арбитражников!
34 GuruLeads 10556 4.11.2022, 19:59
автор: GuruLeads
Открытая тема (нет новых ответов) DGTL7, Израиль- Крипта (In-house оффера, высокий CR, свои кц, более 40 гео, еженедельные выплаты)
2 Elena_DGTL7 1338 30.3.2021, 11:36
автор: Elena_DGTL7


 



RSS Текстовая версия Сейчас: 25.4.2024, 23:59
Дизайн