Помощь Изменить вид урл

Тема в разделе "XenForo", создана пользователем igumenov, 13 июл 2014.

Информация :
Хотите добавить продукт, следуйте правилам:
1)Добавить скриншот.
2)Добавить описание (Описание на английском языке использовать - запрещено).
3)Ссылка на скачивание должна вести на сторонний файлообменник (использовать вложения - запрещено).
Модераторы: DMS
  1. igumenov

    igumenov

    Регистр.:
    30 июн 2009
    Сообщения:
    262
    Симпатии:
    100
    Добрый день! Как реализовать вид урл на xenforo (версия не имеет значения) вид урл как на нуллде вида:
    forums/381/
    /threads/253547/

    ПС: поиск не дал результатов
     
  2. Bezhev

    Bezhev

    Регистр.:
    26 дек 2012
    Сообщения:
    362
    Симпатии:
    123
    Настройки -> Оптимизация для поисковых систем (SEO) -> Включать заголовок страницы в URL (снять галочку)
     
    igumenov нравится это.
  3. viktor6

    viktor6 Постоялец

    Регистр.:
    16 дек 2008
    Сообщения:
    139
    Симпатии:
    6
    А для Nginx можете поделиться правилами если форум так работает www.site.com/forum/
     
  4. ykpon

    ykpon

    Регистр.:
    8 дек 2012
    Сообщения:
    248
    Симпатии:
    143
    Renny нравится это.
  5. viktor6

    viktor6 Постоялец

    Регистр.:
    16 дек 2008
    Сообщения:
    139
    Симпатии:
    6
  6. ykpon

    ykpon

    Регистр.:
    8 дек 2012
    Сообщения:
    248
    Симпатии:
    143
    Да. Раньше, когда не умел писать rewrite правила для nginx, писал их для .htaccess, а потом конвертировал в данном конвертере.
    У тебя все упирается в лень.
     
    exarh нравится это.
  7. viktor6

    viktor6 Постоялец

    Регистр.:
    16 дек 2008
    Сообщения:
    139
    Симпатии:
    6
    Вся проблема в DLE он чето не дает правильно работать
    Код:
    ls /home/www/dle
    admin.php  backup  cron.php  engine  forum  index.php  install.php  language  robots.txt  templates  upgrade  uploads
    
    и как это все подружить незнаю

    Код:
     server {
            listen   80;
            server_name site.name.com;       
            root /home/www/dle;
         
            access_log  /home/www/logs/site.access.log; #расположение логов данного хоста
            error_log  /home/www/logs/site.error.log;
               location / {
    }
          ## Что-бы закрыть папки, которые были закрыты через .htaccess, используем подобные конструкции
        location ~* (uploads|uploads/fotos|templates|language)/.+\.php {
            deny all;
        }
    
        location ~* /templates/.+\.tpl {
            deny all;
        }
    
        location ~* (engine/cache) {
            deny all;
        }
    
        location ~ /\.ht {
            deny  all;
        }
    
        location ~* \.(jpg|jpeg|gif|png|ico|swf|css|js)$ {
            expires             30d;
            add_header          Cache-Control public;
        }
       
        location /forum/ {
    try_files $uri $uri/ /forum/index.php?$uri&$args;
    }
    
    location ~ /forum/(internal_data|library) {
    internal;
    }
       
    # Редиректы
    rewrite "^/page/([0-9]+)(/?)$" /index.php?cstart=$1 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&seourl=$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&seourl=$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&seourl=$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&seourl=$4 last;
    
    rewrite "^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 last;
    rewrite "^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$2&seourl=$4&seocat=$1 last;
    rewrite "^/([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$2&newsid=$3&seourl=$4&seocat=$1 last;
    rewrite "^/([^.]+)/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&seourl=$3&seocat=$1 last;
    
    rewrite "^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$1&cstart=$2&seourl=$4 last;
    rewrite "^/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&news_page=$1&seourl=$3 last;
    rewrite "^/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$1&newsid=$2&seourl=$3 last;
    rewrite "^/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$1&seourl=$2 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 "^/tags/([^/]*)(/?)+$" /index.php?do=tags&tag=$1 last;
    rewrite "^/tags/([^/]*)/page/([0-9]+)(/?)+$" /index.php?do=tags&tag=$1&cstart=$2 last;
    
    # поиск по доп полям
    rewrite "^/xfsearch/([^/]*)(/?)+$" /index.php?do=xfsearch&xf=$1 last;
    rewrite "^/xfsearch/([^/]*)/page/([0-9]+)(/?)+$" /index.php?do=xfsearch&xf=$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/([^/]*)/rss.xml$" /engine/rss.php?catalog=$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 "^/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;
    
    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;
    }
    
    
       
    ##  Тут установлен дополнительный пароль на админку
        #location =/admin.php {
           # auth_basic            "closed section";
           # auth_basic_user_file  htpasswd;
           # fastcgi_pass   unix:/tmp/fastcgi.sock;
           # fastcgi_index  index.php;
           # fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
           # include        fastcgi_params;
        #}
    
        index index.html index.php;
        location ~ \.php$ {
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_cache  one;
            fastcgi_cache_min_uses 3;
            fastcgi_cache_valid 200 301 302 304 5m;
            fastcgi_cache_key "$request_method|$host|$request_uri";
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_ignore_client_abort off;
        }
    
       
    } 
     
  8. ykpon

    ykpon

    Регистр.:
    8 дек 2012
    Сообщения:
    248
    Симпатии:
    143
    Неужели так сложно:
    Код:
    location / { if ($http_host ~ "^site.ru/forum$"){ rewrite ^/?$ /"http\:\/site.ru/forum/index.php" redirect; } }
     
  9. sanyatuvan

    sanyatuvan Писатель

    Регистр.:
    2 июл 2016
    Сообщения:
    3
    Симпатии:
    0
    у меня ошибка выходит, может есть еще способы?

    Буду очень признателен
     
    Последнее редактирование модератором: 3 июл 2016
  10. oxojeck

    oxojeck Создатель

    Регистр.:
    27 дек 2015
    Сообщения:
    28
    Симпатии:
    2
    Ребят, по теме, а как изменить транслитерацию в url? И как можно им манипулировать, есть ли модули для сео?