Nginx + Joomla + sh404sef

Nginx + Joomla + sh404sef

Знакомый ведёт пару блогов используя cms Joomla с плагином для ЧПУ sh404sef. При переезде на новый хостинг вылезла проблема связанная с обработкой ЧПУ. Ссылки в конце которых присутствовал слеш не обрабатывались и кидали ошибку. Все конфигурации которые предлагались в интернете для Joomla + sh404sef + nginx не давали положительных результатов. Пришлось писать своё.

Как запустить Joomla с плагином sh404sef на nginx:

    server {
    listen 11.22.33.44;
    server_name site.ru www.site.ru;
    root /www/site.ru;
    index index.php;

    location / {
    error_page 404 = @joomla;
    log_not_found off;
    }

    location @joomla {
    rewrite ^(.*)$ /index.php?q=$1 last;
    }

    location ~ .php$ {
    expires epoch;
    fastcgi_next_upstream error timeout http_500;
    fastcgi_intercept_errors on;
    fastcgi_pass 127.0.0.1:8888;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /www/site.ru/$fastcgi_script_name;
    include fastcgi_params;
    }
    }

Nginx + Joomla + sh404sef: 2 комментария

  1. Хм, играюсь на локальной машине, спасибо за конфиг.
    Возникла интересная проблема: в URL manager у sh404sef (и соответственно в таблице базы %_redirection) пусто. Она сама не наполняется. При этом при заходе на главную все ссылки человекочитаемые.

    Причём на апаче всё работало, а если вручную наполнить список редиректов (взять из дампа базы), то на nginx всё идеально работает.

    P.S. Извиняюсь, если коряво описал.

  2. Просто спасибо! ) конфиг помог )

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *