• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь ЧПУ на nginx

Compazitor

Создатель
Регистрация
29 Сен 2008
Сообщения
42
Реакции
3
Здравстуйте.
DLE 9.0. null
На сервере установлен последний nginx 0.9.2

Не работает ЧПУ. Заменил htacess на тот что для nginx. В итоге "404 Not Found"

Облазил всё. нашел соответствующие тему и на нулледе. Ничего не понял. Может кто знает, что делать? )
 
Облазил всё. нашел соответствующие тему и на нулледе. Ничего не понял. Может кто знает, что делать? )
это что за тема где ничего не понял?... можно было бы сразу ссылку выложить! :-]
 
Здравстуйте.
DLE 9.0. null
На сервере установлен последний nginx 0.9.2
Не работает ЧПУ. Заменил htacess на тот что для nginx. В итоге "404 Not Found"
Облазил всё. нашел соответствующие тему и на нулледе. Ничего не понял. Может кто знает, что делать? )
Заменять, зачем ? это нужно прописать в конфиге nginx для конкретного сайта.
 
Здравстуйте.
DLE 9.0. null
На сервере установлен последний nginx 0.9.2
Не работает ЧПУ. Заменил htacess на тот что для nginx. В итоге "404 Not Found"
Облазил всё. нашел соответствующие тему и на нулледе. Ничего не понял. Может кто знает, что делать? )

Та не работает htacess, надо прописывать правила реврайта непосредственно в конфиге виртуалхоста nginx.
 
Подскажите, кто реально настраивал ЧПУ для ДЛЕ 9.5 на Nginx.
Как это правильно осуществить?
В гугл не посылать, только что оттуда, ничего работающего пока не нашел (обычно сабж выкладывают для версий ниже 9.4)
 
Правила обновлены до версии DLE 9.4
Но мне то нужно 9.5 ((
 
Нужно прописать в
server {
location / {
index index.php;
include /etc/nginx/dle.rewrite;
}
}

PHP:
# Редиректы
rewrite ^/page/(.*)$ /index.php?cstart=$1 last;
 
# Сам пост
rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)/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]+)/([0-9]+)/([0-9]+)/page,([0-9]+),(.*).html(/?)+$ /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 last;
rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)/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]+)/([0-9]+)/([0-9]+)/(.*).html(/?)+$ /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4 last;
 
rewrite ^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$4&news_page=$2&cstart=$3 last;
rewrite ^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$3&news_page=$2 last;
rewrite ^/([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$ /engine/print.php?news_page=$2&newsid=$3 last;
rewrite ^/([^.]+)/([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$2 last;
 
rewrite ^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$3&news_page=$1&cstart=$2 last;
rewrite ^/page,([0-9]+),([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$2&news_page=$1 last;
rewrite ^/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$ /engine/print.php?news_page=$1&newsid=$2 last;
rewrite ^/([0-9]+)-(.*).html(/?)+$ /index.php?newsid=$1 last;
 
# За день
#rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)(/?)+$ /index.php?year=$1&month=$2&day=$3 last;
#rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)/page/([0-9]+)(/?)+$ /index.php?year=$1&month=$2&day=$3&cstart=$4 last;
# За весь месяц
#rewrite ^/([0-9]+)/([0-9]+)(/?)+$ /index.php?year=$1&month=$2 last;
#rewrite ^/([0-9]+)/([0-9]+)/page/([0-9]+)(/?)+$ /index.php?year=$1&month=$2&cstart=$3 last;
# Вывод за весь год
#rewrite ^/([0-9]+)(/?)+$ /index.php?year=$1 last;
#rewrite ^/([0-9]+)/page/([0-9]+)(/?)+$ /index.php?year=$1&cstart=$2 last;
# вывод отдельному тегу
#rewrite ^/tags/([^/]*)(/?)+$ /index.php?do=tags&tag=$1 last;
#rewrite ^/tags/([^/]*)/page/([0-9]+)(/?)+$ /index.php?do=tags&tag=$1&cstart=$2 last;
# вывод для отдельного юзера
rewrite ^/user/([^/]*)/rss.xml$ /engine/rss.php?subaction=allnews&user=$1 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 ^/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 ^/user/([^/]*)/news/rss.xml(/?)+$ /engine/rss.php?subaction=allnews&user=$1 last;
# вывод всех последних новостей
rewrite ^/lastnews/(/?)+$ /index.php?do=lastnews last;
rewrite ^/lastnews/page/([0-9]+)(/?)+$ /index.php?do=lastnews&cstart=$1 last;
# вывод в виде каталога
rewrite ^/catalog/([^/]*)(/?)+$ /index.php?catalog=$1 last;
rewrite ^/catalog/([^/]*)/page/([0-9]+)(/?)+$ /index.php?catalog=$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 ^/rules.html$ /index.php?do=rules last;
#rewrite ^/statistics.html$ /index.php?do=stats last;
rewrite ^/addnews.html$ /index.php?do=addnews last;
rewrite ^/rss.xml$ /engine/rss.php last;
rewrite ^/sitemap.xml$ /uploads/sitemap.xml last;
 
rewrite ^/category/([^.]+)/(.*).html(/?)+$ /index.php?subaction=showfull&news_name=$2 last;
rewrite ^/category/([^.]+)/page/([0-9]+)(/?)+$ /index.php?do=cat&category=$1&cstart=$2 last;
rewrite ^/category/([^.]+)(/?)+$ /index.php?do=cat&category=$1 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 ^/page,([0-9]+),([^/]+).html$ /index.php?do=static&page=$2&news_page=$1 last;
    rewrite ^/print:([^/]+).html$ /engine/print.php?do=static&page=$1 last;
}
 
if (!-f $request_filename) {
    rewrite ^/([^/]+).html$ /index.php?do=static&page=$1 last;
}
 
Код PHP я так понимаю /etc/nginx/dle.rewrite;
Вроде бы работает, спасибо.
Только вот почему у вас закоментированы строки?
# За день
#rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)(/?)+$ /index.php?year=$1&month=$2&day=$3 last;
#rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)/page/([0-9]+)(/?)+$ /index.php?year=$1&month=$2&day=$3&cstart=$4 last;
# За весь месяц
#rewrite ^/([0-9]+)/([0-9]+)(/?)+$ /index.php?year=$1&month=$2 last;
#rewrite ^/([0-9]+)/([0-9]+)/page/([0-9]+)(/?)+$ /index.php?year=$1&month=$2&cstart=$3 last;
# Вывод за весь год
#rewrite ^/([0-9]+)(/?)+$ /index.php?year=$1 last;
#rewrite ^/([0-9]+)/page/([0-9]+)(/?)+$ /index.php?year=$1&cstart=$2 last;
# вывод отдельному тегу
#rewrite ^/tags/([^/]*)(/?)+$ /index.php?do=tags&tag=$1 last;
#rewrite ^/tags/([^/]*)/page/([0-9]+)(/?)+$ /index.php?do=tags&tag=$1&cstart=$2 last;
 
Назад
Сверху