Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2008-11-11 11:17:50

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

mod_rewrite и ngcms

пора бы избавиться от такого хаоса в .htaccess как

#
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [S=35]

# Editable links
RewriteRule ^category/([^/]*)(/?)+$ ?category=$1 [QSA,L]
RewriteRule ^category/([^/]*)/page/([0-9]+)(/?)+$ ?category=$1&cstart=$2 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{1,2})(/?)+$ ?year=$1&month=$2&day=$3 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{1,2})/page/([0-9]+)(/?)+$ ?year=$1&month=$2&day=$3&cstart=$4 [QSA,L]
RewriteRule ^([0-9]{4})/(/?)+$ ?year=$1 [QSA,L]
RewriteRule ^([0-9]{4})/page/([0-9]+)(/?)+$ ?year=$1&cstart=$2 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{2})(/?)+$ ?year=$1&month=$2 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$ ?year=$1&month=$2&cstart=$3 [QSA,L]
RewriteRule ^users/([^/]*)(/?)+$ ?action=users&user=$1 [QSA,L]
RewriteRule ^page(/?)+$ ?cstart=0 [QSA,L]
RewriteRule ^page/([0-9]+)(/?)+$ ?cstart=$1 [QSA,L]
RewriteRule ^addnews.(htm|html)(/?)+$ ?action=addnews [QSA,L]
RewriteRule ^profile.(htm|html)(/?)+$ ?action=profile [QSA,L]
RewriteRule ^registration.(htm|html)(/?)+$ ?action=registration [QSA,L]
RewriteRule ^activation.(htm|html)(/?)+$ ?action=activation [QSA,L]
RewriteRule ^activation/([0-9]{1,7})/([^/]*)(/?)+$ ?action=activation&userid=$1&code=$2 [QSA,L]
RewriteRule ^lostpassword.(htm|html)(/?)+$ ?action=lostpassword [QSA,L]
RewriteRule ^(feed|rss|rss2).xml(/?)+$ ?action=plugin&plugin=rss_export [QSA,L]
RewriteRule ^category/([^/]*)/(feed|rss|rss2).xml(/?)+$ ?action=plugin&plugin=rss_export&category=$1 [QSA,L]
RewriteRule ^static/(.*).(html|htm)(/?)+$ ?action=static&altname=$1 [QSA,L]
RewriteRule ^plugin/([^/]*)(/?)+$ ?action=plugin&plugin=$1 [QSA,L]
RewriteRule ^category/([^/]*)/(.*).(html|htm)(/?)+$ ?category=$1&altname=$2 [QSA,L]
RewriteRule ^category/([^/]*)/(.*)/([0-9]+)(/?)+$ ?category=$1&altname=$2&page=$3 [QSA,L]
RewriteRule ^category/([^/]*)/(.*).print(/?)+$ engine/includes/print.php?category=$1&altname=$2 [QSA,L]

и заменить всю эту структуру на

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

А остальное внутрь скрипта,
минус возможно немного увеличиться время загрузки скрипта,
плюсы
при написании плагина не надо думать о ЧПУ, точнее заставлять пользователя записывать всё в htaccess ,
Возможность управлением вида ЧПУ и много еще скрытых плюсов...


senior php and js developer

Не в сети

#2 2008-11-11 11:32:01

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: mod_rewrite и ngcms

bestxp, после релиза.
Необходимая библиотека уже написана более полугода назад, но до её интеграции так и не дошло.

Не в сети

#3 2008-11-26 22:16:23

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

Re: mod_rewrite и ngcms

а можна её покурить эту библиотеку?))


senior php and js developer

Не в сети

#4 2008-11-27 03:07:52

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: mod_rewrite и ngcms

bestxp, там и курить-то нечего. Каких-то 2 десятка строк кода smile
Выложу "на покурить" когда будет рабочая версия для встраивания в двиг. Там и посмотришь и потестишь...

Не в сети

#5 2008-11-29 00:27:29

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

Re: mod_rewrite и ngcms

не слишком долго ждать, очень долго


senior php and js developer

Не в сети

#6 2008-11-29 00:30:25

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: mod_rewrite и ngcms

bestxp, хорошо.
Вот тебе те наработки, на которых я проводил тестирование.
Примитивнейший класс,.. но позволяющий сделать всё что требуется.

Только одно "но" - доки по нему нет, делал только для себя и в качестве промежуточного варианта для тестирования идей.
Качать тут

Не в сети

#7 2008-11-29 00:50:48

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

Re: mod_rewrite и ngcms

может даже разовью твои идеи ^_^
за таймер отдельна сенк)
проста лень его было писать))

Изменено bestxp (2008-11-29 00:54:38)


senior php and js developer

Не в сети

#8 2008-11-29 02:23:28

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: mod_rewrite и ngcms

bestxp, если не получится развить - сможешь выдрать для своих целей то, что у меня получится.
Возможно я всю логику работы с rewrite'ами вынесу в отдельную библиотеку, чтобы любой желающий смог использовать её в своих проектах отдельно от движка.

Ну а если что-то интересное получится у тебя - поделись smile

Не в сети

#9 2010-04-05 12:38:05

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

Re: mod_rewrite и ngcms

вот некропостером побуду,
недавно вернулся к твоей идее, точнее к этой библиотеке smile
особенно когда понадобились чистый урл, да еще и на сайте нашего провайдера
в основном без изменений) Tnx скажу действительно очень удобно)))
хотя с команды парнишко очень недоволен им, типа не гибкий ...xD ну как бы не сказал бы)))
только чуть по другому переделано...
была идея у одного
$route=explode("/", URL) , но вот гибкости нет( а тот не ахти как не любит регулярки xD lol:lol::lol:


senior php and js developer

Не в сети

#10 2010-04-05 12:57:40

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: mod_rewrite и ngcms

bestxp, на самом деле библиотечка крайне гибкая. единственное "но" - в панель управления вынесено далеко не всё.
Возможно, пареньку нужно просто более детально присмотреться к возможностям? Там, imho, есть всё что нужно,... а если чего-то нет, то пиши - может оно и нам понадобится..

Не в сети

#11 2010-04-05 13:27:30

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

Re: mod_rewrite и ngcms

я взял которая тут выложена) я даже не знаю что в админке
я прикрутил к MCV модели почти всё... осталося дориализовать...
в итоге получил очень очень гибкую систему, остаеться только передача данных в итоге..и оптимизированная шаблонная система ... с инклудами и прочим) как бы работаю над нестандартными решениями, где одним блогим не обойдешься) как например сейчас биллинг система провайдера интернета)))
но фреймворки отпадают , как бы красивы они не были по функционалу, мне с ними не сдружиться...:) в итоге этакий мопед)) велосипед был до меня изобретен)) big_smile


senior php and js developer

Не в сети

Подвал раздела

Работает на FluxBB