Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Проблема с реврайтами в joom la и с редиректами в 4images.
- To: nginx-ru@xxxxxxxxx
- Subject: Проблема с реврайтами в joom la и с редиректами в 4images.
- From: "F0iL" <nginx-forum@xxxxxxxx>
- Date: Wed, 17 Nov 2010 01:59:46 -0500
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mickey.jlkhosting.com; s=x; h=Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To:Date; bh=yKN5qBuIizFEtPwHxzrO68oOEuOOwjoeCWkhIAeZK/4=; b=joHpQfto/AaKEZv9dpAQNtg+BC5QbdqqrEz4A3PzeRb+2LN7A2oIqgahw+a1vPSFmqHs+W2+PwvkOiCG5T9kn2CA8lQkt72VwCWpLQAbdeyMjkE5egro5Jqp7FzDM+DP;
1) Всем доброго времени суток.
Сразу к делу.
Есть сайт с Joomla.
На сайте используются как "типа" ЧПУ:
http://xxxx.ru/index.php/20101111656/cat1/file.html
так и прямые линки:
http://xxxx.ru/index.php?option=com_kinoarhiv&Itemid=34
Нужно перенести его с Apache на Nginx+PHP-FPM.
Конфиг примерно вот такой:
[code]
root /srv/www/xxxx/htdocs/;
location / {
index index.php index.html index.htm;
}
location ~* (/|\.html?|\.feed|\.pdf|\.raw|/[^.]*)$ {
try_files $uri $uri/ @joomla;
}
# php-fastcgi
location ~ \.php$ {
try_files $uri @joomla;
proxy_buffering off;
fastcgi_pass unix:/var/run/php-fpm/default.socket;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
/srv/www/xxxx/htdocs/index.php;
fastcgi_param QUERY_STRING $query_string;
fastcgi_temp_path /spool/nginx/fastcgi_temp 1 2;
include fastcgi_params;
}
location @joomla {
fastcgi_pass unix:/var/run/php-fpm/default.socket;
fastcgi_pass unix:/var/run/php-fpm/default.socket;
fastcgi_param SCRIPT_FILENAME
/srv/www/xxxx/htdocs/index.php;
fastcgi_param QUERY_STRING $query_string;
include fastcgi_params;
}
location ~* \.(jpg|gif|png|css|js|ico)$ {
access_log off;
expires 30d;
}
location /403.html
{
root /srv/ftp/www/;
}
}
[/code]
Проблема следующая:
/ открывается отлично.
"ЧПУ"-адреса открываются тоже отлично.
а вот прямые адреса - Joomla выплевывает
ошибку, мол, нет доступа, или
неправильный модуль.
В логах ничего подозрительного нет.
Такое впечатление, что реврайт
неправильно срабатывает именно тогда,
когда идет запрос на реально
существующий URL (т.е. php-файл), но в чем
именно здесь может быть ошибка - в упор
не пойму.
Кто-нить с таким сталкивался? В какую
сторону копать, что еще проверить?
2) Вторая проблема - есть сайт с галереей
4images.
Задача та же.
Никаких ЧПУ нет, поэтому конфиг до
банального прост:
[code]
location / {
root /srv/www/aaaa/htdocs/;
index index.php;
}
# php-fastcgi
location ~ \.php$ {
proxy_buffering off;
fastcgi_pass unix:/var/run/php-fpm/default.socket;
fastcgi_intercept_errors on;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
/srv/www/aaaa/htdocs/$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_temp_path /spool/nginx/fastcgi_temp 1 2;
include fastcgi_params;
}
location ~* \.(jpg|gif|png|css|js)$ {
root /srv/www/aaaa/htdocs/;
access_log off;
expires 30d;
}
[/code]
Все бы замечательно, НО.
В скрипте 4images при некоторых действиях
делается несколько HTTP 302 redirect с одной
страницы на другую.
При работе на Apache все работает
замечательно, при работе с Nginx -
редирект "зацикливается", и после
долгого ожидания браузер пишет, что
получает бесконечное перенаправление
со страницы на ее саму же.
Причем детальный анализ HTTP-ответов
сервера и PHP-кода движка так и не помог
разобраться, из-за чего такая разница в
поведении при работе скриптов на apache и
на nginx+php-fpm.
Вопрос тот же:
Кто-нить с таким сталкивался? В какую
сторону копать, что еще проверить?
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,151332,151332#msg-151332
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|