А РХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev ][Date Next ][Thread Prev ][Thread Next ][Date Index ][Thread Index ]
Re: rewrites for DLE
Вот то что хранилось на одном из наших проектов, версия DLE последняя но не уверен что сконвертированы все реврайты, строк по крайней мере меньше # URL rewrites rewrite ^/.*(/templates/.*)$ $1 last;
rewrite ^/.*(/engine/.*)$ $1 last; rewrite ^/.*(/admin.php.*)$ $1 last; rewrite ^/page/(.*)$ /index.php?cstart=$1 last; rewrite ^/[^.]+/([0-9]+)-.*\.html(/?)+$ /index.php?newsid=$1 last;
rewrite ^/[^.]+/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$3&news_page=$1&cstart=$2 last; rewrite ^/user/([^/]*)/news/?$ /index.php?subaction=allnews&user=$1 last;
rewrite ^/user/([^/]*)/news/page/([0-9]+)/?$ /index.php?subaction=allnews&user=$1&cstart=$2 last; rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6 last;
rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 last; rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html(/?)+$" engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 last;
rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4 last; rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$" /index.php?year=$1&month=$2&day=$3 last;
rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$" /index.php?year=$1&month=$2&day=$3&cstart=$4 last; rewrite "^/([0-9]{4})/([0-9]{2})(/?)+$" /index.php?year=$1&month=$2 last;
rewrite "^/([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$" /index.php?year=$1&month=$2&cstart=$3 last; rewrite "^/([0-9]{4})(/?)+$" /index.php?year=$1 last; rewrite "^/([0-9]{4})/page/([0-9]+)(/?)+$" /index.php?year=$1&cstart=$2 last;
rewrite ^/user/([^/]*)(/?)+$ /index.php?subaction=userinfo&user=$1 last; rewrite ^/user/([^/]*)/page/([0-9]+)(/?)+$ /index.php?subaction=userinfo&user=$1&cstart=$2 last; rewrite ^/newposts(/?)+$ /index.php?subaction=newposts last;
rewrite ^/newposts/page/([0-9]+)(/?)+$ /index.php?subaction=newposts&cstart=$1 last; rewrite ^/static/(.*).html(/?)+$ /index.php?do=static&page=$1 last;
rewrite ^/favorites(/?)+$ /index.php?do=favorites last; rewrite ^/favorites/page/([0-9]+)(/?)+$ /index.php?do=favorites&cstart=$1 last; rewrite ^/statistics.html$ /index.php?do=stats last;
rewrite ^/addnews.html$ /index.php?do=addnews last; rewrite ^/rss.xml$ /engine/rss.php last; А вот эта часть осталась помойму от старых версий, но не факт if (!-d $request_filename)
{ rewrite ^/([^.]+)/page/([0-9]+)(/?)+$ /index.php?do=cat&category=$1&cstart=$2 last; rewrite ^/([^.]+)/?$ /index.php?do=cat&category=$1 last; } if (!-f $request_filename)
{ rewrite ^/([^/]+)/rss.xml$ /engine/rss.php?do=cat&category=$1 last; rewrite ^/([^/]+).html$ /index.php?do=static&page=$1 last; } Надеюсь это кому-то пригодится. Вообще же я думаю если попросить авторов (учитывая популярность и DLE и nginx среди
русских вебмастеров) им будет не в тягость мейнтейнить два набора
паралельно Дмитрий30.01.08, Sergej Kandyla <sk.paix@xxxxxxxxx > написал(а):
Dmitry wrote: > > Если cms популярная, то я напишу правила и опубликую с остальными на > nginx.info > Я думаю, многие будут вам признательны, если напишите ревраты для DLE
(27 400 000 для DLE - поиск по гуглу) -------------------------- Дефолтные директивы реврайта DLE (Datalife Engine) RewriteEngine On RewriteBase / # RSS RewriteRule ^rss.xml(/?)+$ /engine/rss.php
RewriteRule ^category/([^/]*)/rss.xml(/?)+$ /engine/rss.php?do=cat&category=$1 # Добавление новости RewriteRule ^addnews(/?)+$ /?do=addnews # Статистика RewriteRule ^stats(/?)+$ /?do=stats
# Категории RewriteRule ^category(/?)+$ /?do=cat RewriteRule ^category/([^/]*)(/?)+$ /?do=cat&category=$1 RewriteRule ^category/([^/]*)/page/([0-9]+)(/?)+$ /?do=cat&category=$1&cstart=$2 # вывод для отдельного юзера
RewriteRule ^user(/?)+$ /?do=user RewriteRule ^user/([^/]*)(/?)+$ /?subaction=userinfo&user=$1 RewriteRule ^user/([^/]*)/page/([0-9]+)(/?)+$ /?subaction=userinfo&user=$1&cstart=$2 # вывод непрочитанных статей
RewriteRule ^newposts(/?)+$ /?subaction=newposts RewriteRule ^newposts/page/([0-9]+)(/?)+$ /?subaction=newposts&cstart=$1 # Редиректы RewriteRule ^page(/?)+$ /?cstart=0 RewriteRule ^page/(.*)$ /?cstart=$1
# Сам пост RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html(/?)+$ /?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html(/?)+$ /?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html(/?)+$
/engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html(/?)+$ /?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4
# За день RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$ /?year=$1&month=$2&day=$3 RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$ /?year=$1&month=$2&day=$3&cstart=$4
# За весь месяц RewriteRule ^([0-9]{4})/([0-9]{2})(/?)+$ /?year=$1&month=$2 RewriteRule ^([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$ /?year=$1&month=$2&cstart=$3 # Вывод за весь год RewriteRule ^([0-9]{4})(/?)+$ /?year=$1
RewriteRule ^([0-9]{4})/page/([0-9]+)(/?)+$ /?year=$1&cstart=$2 # Статистические страницы RewriteRule ^static/(.*).html(/?)+$ /?do=static&page=$1 # вывод избранных статей RewriteRule ^favorites(/?)+$ /?do=favorites
RewriteRule ^favorites/page/([0-9]+)(/?)+$ /?do=favorites&cstart=$1 Спасибо. -- Wbr, SK