Форум русской поддержки Joomla!® CMS
09.12.2016, 17:28:50 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

[Решено] Ошибка 404 при включения FactCGI+(Nginx+PHP-FPM)

 (Прочитано 4155 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« : 21.05.2015, 14:24:03 »

всем доброе время суток!
вот на сегодняшний день у меня такая проблем с Joomla
При включения FactCGI+(Nginx+PHP-FPM) сайт сразу выдает ошибку 404
в логах nginx чистота, ничего не написано

Панель ISPmanagerLite 5.27.2
OS UbuntuServer 14.04.2
Сайт работает работает на joomle 3.4.1

Админка работает у Joomla, а сайт выдает ошибку 404

Куда копать я не знаю

Посылать на оф.сайт jooma, не надо, там я был и по их схеме nginx отваливается fail, вчера весь день гуглил и яндексировал но ничего путного я не нашел

вот конфиг nginx
Код:
user www-data;
worker_processes 8;
pid /run/nginx.pid;

events {
        worker_connections 4096;
        multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        server_tokens off;
        client_max_body_size 30m;

        server_names_hash_bucket_size 64;
        server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # Logging Settings
        ##

        access_log off; # /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Gzip Settings
        ##

        gzip on;
        gzip_disable "msie6";

        gzip_vary on;
        gzip_proxied any;
        gzip_comp_level 6;
        gzip_buffers 16 8k;
        gzip_http_version 1.1;
        gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # nginx-naxsi config
        ##
        # Uncomment it if you installed nginx-naxsi
        ##

        #include /etc/nginx/naxsi_core.rules;

        ##
        # nginx-passenger config
        ##
        # Uncomment it if you installed nginx-passenger
        ##

        #passenger_root /usr;
        #passenger_ruby /usr/bin/ruby;

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*;
        include /etc/nginx/vhosts/*/*;
 server {
                server_name localhost;
        disable_symlinks if_not_owner;
        listen 80;
        include /etc/nginx/vhosts-includes/*.conf;
        location @fallback {
                error_log /dev/null crit;
                proxy_pass http://127.0.0.1:8080;
                proxy_redirect http://127.0.0.1:8080 /;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                access_log off ;
        }
        }
}

все это дело работает на ISPmanagerLite5
« Последнее редактирование: 12.06.2015, 16:50:39 от b2z » Записан
wishlight
Профи
********

Репутация: +201/-1
Offline Offline

Пол: Мужской
Сообщений: 3491


skype aqaus.com


« Ответ #1 : 21.05.2015, 15:54:49 »

Чисто Nginx, а на Joomla SEF включен?
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #2 : 21.05.2015, 23:43:28 »

Чисто Nginx, а на Joomla SEF включен?

Nginx + FastCGI + PHP-PFM, да включен и выключал все равно не работает, мне сказали на форме ISPsystem, что нужно прописать правила к .htaccess, в конфиге nginx, а какие не сказали(((
Записан
capricorn
Живу я здесь
******

Репутация: +86/-0
Offline Offline

Сообщений: 1420


« Ответ #3 : 22.05.2015, 00:44:20 »

уберите директивы php_value из .htaccess, если есть. конф файлы трогать не надо. nginx работает обычно в паре с Apache.

произвольный файл php в корне сайта отрабатывает?
« Последнее редактирование: 22.05.2015, 00:53:08 от capricorn » Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #4 : 22.05.2015, 01:42:55 »

уберите директивы php_value из .htaccess, если есть. конф файлы трогать не надо. nginx работает обычно в паре с Apache.

произвольный файл php в корне сайта отрабатывает?

Причем здесь апач? апача вообще нету
произвольный php, что Вы имеете виду?

такой директивы php_value вообще нету, вот .htaccess
Код:
##
# @package Joomla
# @copyright Copyright (C) 2005 - 2014 Open Source Matters. All rights reserved.
# @license GNU General Public License version 2 or later; see LICENSE.txt
##

##
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your SEF url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
##

## Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

## Mod_rewrite in use.

RewriteEngine On

## Begin - Rewrite rules to block out some common exploits.
# If you experience problems on your site block out the operations listed below
# This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to base64_encode data within the URL.
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
# Block out any script that includes a <script> tag in URL.
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL.
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL.
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
## End - Rewrite rules to block out some common exploits.

## Begin - Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
## End - Custom redirects

##
# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##

# RewriteBase /

## Begin - Joomla! core SEF Section.
#
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End - Joomla! core SEF Section.
Записан
wishlight
Профи
********

Репутация: +201/-1
Offline Offline

Пол: Мужской
Сообщений: 3491


skype aqaus.com


« Ответ #5 : 22.05.2015, 09:01:34 »

Да надо писать свои правила редиректа в конфиге nginx. Я чуть не в теме, может кто из форумчан подскажет. А так пока у меня сайты с апачем и nginx для статики.
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #6 : 22.05.2015, 10:48:10 »

Да надо писать свои правила редиректа в конфиге nginx. Я чуть не в теме, может кто из форумчан подскажет. А так пока у меня сайты с апачем и nginx для статики.

У меня тоже было раньше nginx + apache2, на ISPmanager 4, а сейчас ISPmanager 5 предлагает только FactCGI+(Nginx+PHP-FPM), вот что мне еще ответили на оф.форме ISPsystem
копайте в сторону настройки rewrite для nginx от Joomla
В режиме Nginx+PHP-FPM не работает .htaccess, и нужно вручную настроить nginx
Записан
wishlight
Профи
********

Репутация: +201/-1
Offline Offline

Пол: Мужской
Сообщений: 3491


skype aqaus.com


« Ответ #7 : 22.05.2015, 12:11:10 »

https://docs.joomla.org/Nginx если вам нужен именно nginx
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #8 : 22.05.2015, 12:13:03 »

https://docs.joomla.org/Nginx если вам нужен именно nginx

там я был и по той технологии gnix отваливается fail
Записан
wishlight
Профи
********

Репутация: +201/-1
Offline Offline

Пол: Мужской
Сообщений: 3491


skype aqaus.com


« Ответ #9 : 22.05.2015, 13:00:01 »

хз.. ну если все так, то пробуйте профиль apache+nginx+fast cgi. Я норм настраивал. Или обратитесь к специалистам по этому вопросу. Хотя в требованиях Joomla указан сервер apache для динамических запросов.
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #10 : 22.05.2015, 14:01:17 »

хз.. ну если все так, то пробуйте профиль apache+nginx+fast cgi. Я норм настраивал. Или обратитесь к специалистам по этому вопросу. Хотя в требованиях Joomla указан сервер apache для динамических запросов.

У меня нету Apache с связке с Ngnx и каким специалистам я должен обращаться?
Можно почту разработчиков Joomla
Записан
Apoca1ypto
Завсегдатай
*****

Репутация: +63/-0
Offline Offline

Пол: Мужской
Сообщений: 617



« Ответ #11 : 22.05.2015, 14:57:34 »

каким специалистам я должен обращаться?
1500 рублей и Вам все настроят под Ваши нужды https://systemintegra.ru/uslugi/all/proizvoditel_nost/optimizaciya_servera/
ISP отличная панель, но видимо всегда есть частные случае, где без точных знаний что-то нельзя настроить.
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #12 : 22.05.2015, 15:02:56 »

1500 рублей и Вам все настроят под Ваши нужды https://systemintegra.ru/uslugi/all/proizvoditel_nost/optimizaciya_servera/
ISP отличная панель, но видимо всегда есть частные случае, где без точных знаний что-то нельзя настроить.


заплатить это самый легких способ, но не способ научится
Записан
wishlight
Профи
********

Репутация: +201/-1
Offline Offline

Пол: Мужской
Сообщений: 3491


skype aqaus.com


« Ответ #13 : 22.05.2015, 15:07:27 »

В isp 5 есть три профиля "базовых". apache_mpm_itk + nginx + mod_php, apache prefork + nginx + cgi/fast_cgi, ну и ваш. Еще можно без nginx, но это хуже. Все базово настраивается без особых проблем.
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #14 : 22.05.2015, 15:18:16 »

В isp 5 есть три профиля "базовых". apache_mpm_itk + nginx + mod_php, apache prefork + nginx + cgi/fast_cgi, ну и ваш. Еще можно без nginx, но это хуже. Все базово настраивается без особых проблем.

Там вот только что есть
Записан
wishlight
Профи
********

Репутация: +201/-1
Offline Offline

Пол: Мужской
Сообщений: 3491


skype aqaus.com


« Ответ #15 : 22.05.2015, 15:22:19 »

Читайте документацию. Смотрите раздел возможности.
Записан
Apoca1ypto
Завсегдатай
*****

Репутация: +63/-0
Offline Offline

Пол: Мужской
Сообщений: 617



« Ответ #16 : 22.05.2015, 15:37:30 »

Там вот только что есть

Вот и используйте FastCGI (Apache)
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #17 : 22.05.2015, 15:47:02 »

так он сейчас и работает в FastCGI Apache, но с nginx'om быстрее работать будет
Записан
draff
Практически профи
*******

Репутация: +161/-5
Offline Offline

Пол: Мужской
Сообщений: 2659


step by step


« Ответ #18 : 22.05.2015, 15:57:37 »

и что за сборка, если nginx не стоит на фронте перед apache
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #19 : 22.05.2015, 15:59:27 »

и что за сборка, если nginx не стоит на фронте перед apache

FactCGI+(Nginx+PHP-FPM)
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #20 : 22.05.2015, 16:40:19 »

настроил теперь место 404 ошибки пишет File not found.
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #21 : 22.05.2015, 18:11:33 »

Ура нашел решение, чтоб работало с связке
закомментировал строки и написал свои, подходит как Joomla так и wordpress
Код:
#user 'user' virtual host 'site.ru' configuration file
server {
        server_name site.ru www.site.ru;
        charset UTF-8;
        disable_symlinks if_not_owner from=$root_path;
        index index.html, index.php;
        root $root_path;
        set $root_path /var/www/user/data/www/site.ru;
        ssi on;
        error_log /var/www/httpd-logs/site.ru.error.log notice;
        include /etc/nginx/vhosts-includes/*.conf;
        #location / {
        #       location ~ [^/]\.ph(p\d*|tml)$ {
        #               try_files /does_not_exists @php;
        #       }
        #
        #}
         location / {
                try_files $uri $uri/ /index.php?q=$request_uri;
        location ~ [^/]\.ph(p\d*|tml)$ {
                try_files /does_not_exists @php;
        }
        }
        location @fallback {
                error_log /dev/null crit;
                access_log off ;
        }
        location @php {
                fastcgi_index index.php;
                fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f info@site.ru";
                fastcgi_pass unix:/var/www/php-fpm/site.sock;
                fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
                try_files $uri =404;
                include fastcgi_params;
        }
        access_log off ;
        listen 77.41.111.112:80;
}

может кому не будь пригодиться, бесплатно)))
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #22 : 23.05.2015, 03:36:22 »

Теперь нашел еще проблему проблема заключается в том что, либо работает поиск, а админка выдает 404 ошибку, а если убрать часть кода, админка работает, отваливается поиск))

Вот так админка работает, поиск отваливается выдает вот это /component/finder/search.html?q=
Код:
#user 'user' virtual host 'site.ru' configuration file
server {
        server_name site.ru www.site.ru;
        charset UTF-8;
        disable_symlinks if_not_owner from=$root_path;
        index index.html, index.php;
        root $root_path;
        set $root_path /var/www/user/data/www/site.ru;
        ssi on;
        error_log /var/www/httpd-logs/site.ru.error.log notice;
        location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf|pdf)$ {
                root $root_path;
                expires 7d;
        }
        location / {
                try_files $uri $uri/ /index.php?q=$request_uri;
        }
        location ~ [^/]\.ph(p\d*|tml)$ {
                try_files /does_not_exists @php;
        }
        location @fallback {
                error_log /dev/null crit;
                access_log off ;
                error_page 404 = @fallback;
        }
        location @php {
                fastcgi_index index.php;
                fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f info@site.ru";
                fastcgi_pass unix:/var/www/php-fpm/ebooks.sock;
                fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
                try_files $uri =404;
                include fastcgi_params;
        }
        access_log off ;
        listen 77.41.111.112:80;
}

А так админка уходит в 404 ошибку, поиск работает
добавил только вот эти две строчки
if (!-f $request_filename) {
                rewrite ^(.*)$ /index.php;
                }

чтоб работал поиск
Код:
#user 'user' virtual host 'site.ru' configuration file
server {
        server_name site.ru www.site.ru;
        charset UTF-8;
        disable_symlinks if_not_owner from=$root_path;
        index index.html, index.php;
        root $root_path;
        set $root_path /var/www/user/data/www/site.ru;
        ssi on;
        error_log /var/www/httpd-logs/site.ru.error.log notice;
        location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf|pdf)$ {
                root $root_path;
                expires 7d;
        }
        location / {
                try_files $uri $uri/ /index.php?q=$request_uri;
                if (!-f $request_filename) {
                rewrite ^(.*)$ /index.php;
                }
        }
        location ~ [^/]\.ph(p\d*|tml)$ {
                try_files /does_not_exists @php;
        }
        location @fallback {
                error_log /dev/null crit;
                access_log off ;
                error_page 404 = @fallback;
        }
        location @php {
                fastcgi_index index.php;
                fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f info@site.ru";
                fastcgi_pass unix:/var/www/php-fpm/ebooks.sock;
                fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
                try_files $uri =404;
                include fastcgi_params;
        }
        access_log off ;
        listen 77.41.111.112:80;
}

проблема заключается в том что при этих двух строчках нельзя войти админку не так site.ru/administrator, а только site.ru/administrator/index.php
а через token и подавно выдает ошибку(((
« Последнее редактирование: 23.05.2015, 03:55:23 от Bismuth » Записан
capricorn
Живу я здесь
******

Репутация: +86/-0
Offline Offline

Сообщений: 1420


« Ответ #23 : 23.05.2015, 18:17:47 »

а так работает (из документации Joomla)?

Код:
        location / {
                try_files $uri $uri/ /index.php?$args;
        }
Записан
Bismuth
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 141



« Ответ #24 : 23.05.2015, 18:35:33 »

а так работает (из документации Joomla)?

Код:
        location / {
                try_files $uri $uri/ /index.php?$args;
        }


вот так все работает и сайт и поиск и админка, поменял только одну букву с !-f на !-е
Код:
location / {
                try_files $uri $uri/ /index.php?q=$request_uri;
                if (!-e $request_filename) {
                rewrite ^(.*)$ /index.php;

                }
        }
пока полет нормальный
Записан
ChaosHead
Профи
********

Репутация: +382/-10
Offline Offline

Пол: Мужской
Сообщений: 4397



« Ответ #25 : 23.05.2015, 20:21:11 »

Видел готовые настройки. Нужно просто погуглитт.
Записан
Fat
Разработчик расширений для Joomla 1.5
*

Репутация: +25/-0
Offline Offline

Пол: Мужской
Сообщений: 473


Разрабатываю компоненты для Joomla


« Ответ #26 : 31.08.2016, 21:16:56 »

Bismuth, респект вам! Мне помогло решение!
Записан
Филипп Сорокин
Живу я здесь
******

Репутация: +121/-4
Offline Offline

Пол: Мужской
Сообщений: 1467


« Ответ #27 : 31.08.2016, 22:09:32 »

Второй вариант - хрень полнейшая. Зачем-то 2 рерайта, когда можно обойтись одним. Тот однострочный - это стандарт, все его используют.
Записан
Malory
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Пол: Женский
Сообщений: 44



« Ответ #28 : 12.11.2016, 16:39:04 »

С панелью Vesta побороть проблему помогла смена дефолтных настроек на:
Шаблон Web NGINX: Joomla   
Шаблон Backend PHP-FPM: socket
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet