8Dle
Авторизация

Правила Rewrite для ЧПУ на серверах под управлением Nginx

Правила Rewrite для ЧПУ на серверах под управлением Nginx

Как известно сервер под управлением Apache не является оптимальным решением для создания высокопосещаемых проектов, и по мере роста посетителей сайта, потребление памяти сервером также растет в геометрической прогрессии. Поэтому при оптимизации серверного ПО очень часто прибегают к установке связки из легкого кеширующего сервера Nginx как фронтсервера и Apache как бэксервера. Данная связка позволяет существенно сократить расход памяти и увеличить быстродействие работы сервера. Однако существует еще более производительное решение, и это установка сервера Nginx как единственного standalone сервера, при этом Apache полностью убирается из системы, что позволяет добиться еще большей производительности. Единственной проблемой при работе с DLE такой системы, это несовместимость стандартных правил ЧПУ в файле .htaccess, которые прописаны для Apache. Поэтому если вы решите ставить Nginx как отдельный единственный сервер, мы предлагаем вам скачать правила написанные для Nginx.

Правила предназначены для версий DataLife Engine 10.3 и ниже.
index index.php; 
location /page { rewrite ^/page/([0-9]+)(/?)$ /index.php?cstart=$1 break; 
rewrite ^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html$ /index.php?newsid=$3&news_page=$1&cstart=$2&seourl=$4 break; 
rewrite ^/page,([0-9]+),([0-9]+)-(.*).html$ /index.php?newsid=$2&news_page=$1&seourl=$3 break; 
rewrite ^/page,([0-9]+),([^/]+).html$ /index.php?do=static&page=$2&news_page=$1&seourl=$2 break; } location / { 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&seourl=$6 break; 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&seourl=$5 break; 
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&seourl=$5 break; 
rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 break; 
rewrite ^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html$ /index.php?newsid=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 break; 
rewrite ^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html$ /index.php?newsid=$3&news_page=$2&seourl=$4&seocat=$1 break; 
rewrite ^/([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html$ /engine/print.php?news_page=$2&newsid=$3&seourl=$4&seocat=$1 break; 
rewrite ^/([^.]+)/([0-9]+)-(.*).html$ /index.php?newsid=$2&seourl=$3&seocat=$1 break; 
rewrite ^/([0-9]+)-(.*).html$ /index.php?newsid=$1&seourl=$2 break; 
rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/*$" /index.php?year=$1&month=$2&day=$3 break; 
rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)/*$" /index.php?year=$1&month=$2&day=$3&cstart=$4 break; 
rewrite "^/([0-9]{4})/([0-9]{2})/*$" /index.php?year=$1&month=$2 break; 
rewrite "^/([0-9]{4})/([0-9]{2})/page/([0-9]+)/*$" /index.php?year=$1&month=$2&cstart=$3 break; 
rewrite "^/([0-9]{4})/*$" /index.php?year=$1 break; 
rewrite "^/([0-9]{4})/page/([0-9]+)/*$" /index.php?year=$1&cstart=$2 break; if (!-e $request_filename){ rewrite ^/([^.]+)/page/([0-9]+)/*$ /index.php?do=cat&category=$1&cstart=$2 break; } rewrite ^/([^.]+)/?$ /index.php?do=cat&category=$1 break; if (!-e $request_filename){ rewrite ^/([^.]+)/rss.xml$ /engine/rss.php?do=cat&category=$1 break; } if (!-e $request_filename){ rewrite ^/([^/]+).html$ /index.php?do=static&page=$1&seourl=$1 break; } } location /print { rewrite ^/print:page,([0-9]+),([0-9]+)-(.*).html$ /engine/print.php?news_page=$1&newsid=$2&seourl=$3 break; 
rewrite ^/print:([^/]+).html$ /engine/print.php?do=static&page=$1&seourl=$1 break; } location /tags { rewrite ^/tags/([^/]*)/*$ /index.php?do=tags&tag=$1 break; 
rewrite ^/tags/([^/]*)/page/([0-9]+)/*$ /index.php?do=tags&tag=$1&cstart=$2 break; } location /xfsearch { rewrite ^/xfsearch/([^/]*)/*$ /index.php?do=xfsearch&xf=$1 break; 
rewrite ^/xfsearch/([^/]*)/page/([0-9]+)/*$ /index.php?do=xfsearch&xf=$1&cstart=$2 break; } location /user { rewrite ^/user/([^/]*)/rss.xml$ /engine/rss.php?subaction=allnews&user=$1 break; 
rewrite ^/user/([^/]*)/*$ /index.php?subaction=userinfo&user=$1 break; 
rewrite ^/user/([^/]*)/page/([0-9]+)/*$ /index.php?subaction=userinfo&user=$1&cstart=$2 break; 
rewrite ^/user/([^/]*)/news/*$ /index.php?subaction=allnews&user=$1 break; 
rewrite ^/user/([^/]*)/news/page/([0-9]+)/*$ /index.php?subaction=allnews&user=$1&cstart=$2 break; 
rewrite ^/user/([^/]*)/news/rss.xml/*$ /engine/rss.php?subaction=allnews&user=$1 break; } location /lastnews { rewrite ^/lastnews/*$ /index.php?do=lastnews break; 
rewrite ^/lastnews/page/([0-9]+)/*$ /index.php?do=lastnews&cstart=$1 break; } location /catalog { rewrite ^/catalog/([^/]*)/rss.xml$ /engine/rss.php?catalog=$1 break; 
rewrite ^/catalog/([^/]*)/*$ /index.php?catalog=$1 break; 
rewrite ^/catalog/([^/]*)/page/([0-9]+)/*$ /index.php?catalog=$1&cstart=$2 break; } location /newposts { rewrite ^/newposts/*$ /index.php?subaction=newposts break;
 rewrite ^/newposts/page/([0-9]+)/*$ /index.php?subaction=newposts&cstart=$1 break; } location /favorites { rewrite ^/favorites/*$ /index.php?do=favorites break; 
rewrite ^/favorites/page/([0-9]+)/*$ /index.php?do=favorites&cstart=$1 break; } location = /rules.html { rewrite ^(.*)$ /index.php?do=rules break; } location = /statistics.html { rewrite ^(.*)$ /index.php?do=stats break; } location = /addnews.html { rewrite ^(.*)$ /index.php?do=addnews break; } location = /rss.xml { rewrite ^(.*)$ /engine/rss.php break; } location = /sitemap.xml { rewrite ^(.*)$ /uploads/sitemap.xml break; }]

Данные правила предоставлены dle news


Можете воспользоваться htaccess-конвертером для nginx

Жмите на Кнопу ниже, или подписывайтесь!


Читайте также
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


Dle это движок который изначально проектировался для создания новостных сайтов, но по мере своего развития движка значительно расширил свою функциональность и стал универсальным средством разработки и сопровождения сайтов и блогов различной направленности и тематики. По сравнению с другими бесплатными (и некоторыми платными) CMS системами движок dle обладает довольно обширными возможности.

Авторизация