xenForo на nginx

kisel

Проверенные
Сообщения
217
Реакции
46
Баллы
11,025
Добрый день!
Ситуация такая: развернули форум на чистом nginx, без апача.
Все бы ничего, все работает, за исключением одних только аватарок - при добавлении их выдает окошко с ошибкой 404. В идеале, в нем должно предлагаться выбрать самостоятельно картинку с компьютера.
Конфиг - стандартно try_files, который описан в доке по xenforo.
Так как над этой проблемой бьюсь не первый день, при дельном и рабочем совете - скидываю 5 вмз на пифко;)
 
Код:
server {
listen *:80; ## listen for ipv4
server_name forum.domain.ru www.forum.domain.ru;
access_log /var/log/nginx/forum.log;
root /ssd/var/www/xenforo.domain.ru/html;
index   index.php index.html;


location / {
        try_files $uri $uri/ /index.php?$uri&$args;
    }

    location ~ /(internal_data|library) {
        internal;
    }


location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|swf)$ {
        access_log  off;
    }

    location ~ \.php$ {
        try_files          $uri /index.php =404;
        fastcgi_pass    unix:/var/run/fastcgi_sock;
        fastcgi_index    index.php;
        fastcgi_param    SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include    fastcgi_params;
    }

}

пробовал добвавлять - не помогло
Код:
        # Some incorrect calls from browsers
        rewrite ^/(.*)/data/avatars/(.*)$ /data/avatars/$2 last;
        rewrite ^/(.*)/styles/(.*)/xenforo/(.*)$ /styles/$2/xenforo/$3 last;
        rewrite ^/http(s):/(.*)/login/login$ /login/login last;

Нашел решение.

в шаблонах
account_personal_details
member_view
navigation_visitor_tab

xen:link account/avatar
заменить на
xen:link account/avatar/

тоесть в конце добавить /
 
Последнее редактирование:
на get index.rss 404 Not Found, если ЧПУ отключить, то все работает
Смотри конфиг, локейшены для статики, rss должно уходить в локейшн с try_files, который будет заворачивать 404 на fastcgi
 
  • Мне нравится
Реакции: Hope
Код:
server {
    listen   [::]:80;
    server_name  007.ru www.007.ru;
    root   /var/www/007.ru;
    index  index.html index.htm index.php;
    access_log  /var/www/logs/007.ru.access.log;

    location /forum/ {
        try_files $uri $uri/ /forum/index.php?$uri&$args;
    }

    location ~ /forum/(internal_data|library) {
         internal;
    }

    location ~ \.php$ {
        fastcgi_pass   unix:/tmp/php.socket;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    } 
}
 
Код:
location /forum/ {
        try_files $uri $uri/ /forum/index.php?$uri&$args;
    }

    location ~ /forum/(internal_data|library) {
         internal;
    }
Чуть по другому, но суть таже прописано для isp manager, все равно не работает rss на главной странице

ссылка ниже
 
все равно не работает rss на главной странице
Я тебе привел пример полного конфига, а ты - два локейшена.

Тогда открывай логи, ищи 404, смотри в какой локейшн попадает и почему.
 
выдает такую ошибку nginx-reuseport/1.13.4

когда захожу свой сайт выдает такую ошибку nginx-reuseport/1.13.4 как его исправить и что как мне сделать чтоб убрать эту ошибку и чтоб сайт работал нормально как раньше ?
 

Вложения

  • Безымянный.png
    Безымянный.png
    162.2 KB · Просмотры: 21
Проблема с nginx. Хотел сделать домен.ру/forum Работает только если написать forum/index.php и если выключен ЧПУ. Что собса не так? В админке форума сменил адрес всё равно ошибка.
NGINX:
server {
    server_name ****;
    listen 443 ssl;
    listen [::]:443 ssl;

    ssl_certificate /ssl/pub.pem;
    ssl_certificate_key /ssl/private.pem;

    location / {
        root /var/www/html/front/dist;
        try_files $uri $uri/ /index.html;
    }

 location /forum/ {
        try_files $uri $uri/ /forum/index.php?$uri&$args;
    }

    location ~ /forum/(internal_data|library) {
         internal;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /var/www/html/front/dist;
    }

    location ~ /\.ht {
        deny all;
    }
}
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу