LINUX.ORG.RU
решено ФорумAdmin

nginx не хочет работать с файлами, названия которых с русскими символами


0

1

Добрый день. Проблема такая:

Установил систему тикетов trac. Установил так: бакэнд apache+mod_wsgi на 8080 порту + nginx на 80 порту. Апач настроен так:

<VirtualHost *:8080>
	ServerAdmin self@dicos.ru

	DocumentRoot /***/www/src/
	ServerName domain.ru

	WSGIScriptAlias / /***/www/trac.wsgi
        WSGIDaemonProcess trac processes=2 maximum-requests=6 threads=3 user=trac umask=000
	WSGIProcessGroup trac

        ErrorLog /***/www/error_log
        CustomLog /***/www/access_log common
        ServerSignature On

        <Location "/login">
          AuthType Basic
          AuthName "Trac"
          AuthUserFile /***/www/src/trac.passwd
          Require valid-user
        </Location>
Апач «отдает» нормально файл, то есть через браузер могу зайти на порт 8080 и посмотреть http://domain.ru:8080/attachment/ticket/114/рекламный блок 1 (страница новост...

nginx настроен так:

server {
    listen 80;
    server_name domain.ru;
    access_log /***/www/nginx.access_log;
    error_log /***/www/nginx.error_log;
    client_max_body_size 50M;
    location ~ /*\.py* {
        deny all;
    }
    location / {
        proxy_pass http://127.0.0.1:8080/;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-for $remote_addr;
        proxy_set_header Host $host;
        proxy_connect_timeout 60;
        proxy_send_timeout 90;
        proxy_read_timeout 90;
        proxy_redirect off;
        proxy_set_header Connection close;
        proxy_pass_header Content-Type;
        proxy_pass_header Content-Disposition;
        proxy_pass_header Content-Length;
    }
}
Когда через браузер запрашиваю файл http://domain.ru/attachment/ticket/114/рекламный блок 1 (страница новостей в ... пишет
403 Forbidden
nginx/0.8.54
Что не так настроил в nginx?

★★

Ответ на: комментарий от true_admin

логи с ошибкой пишет только nginx:

2011/08/23 17:55:07 [error] 16377#0: *7 access forbidden by rule, client: 92.127.143.110, server: example.ru, request: "GET /attachments/ticket/114/%D1%80%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%BD%D1%8B%D0%B9%20%D0%B1%D0%BB%D0%BE%D0%BA%201%20%28%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0%20%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B5%D0%B9%20%D0%B2%20%D0%B3%D0%BE%D1%80%D0%BE%D0%B4%D0%B5%29.png HTTP/1.1", host: "example.ru"

dicos ★★
() автор топика
Ответ на: комментарий от pekmop1024

локали что для пользователя root, что для пользователя www-data:

sudo su -c locale www-data 
LANG=ru_RU.UTF-8
LANGUAGE=
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=ru_RU.UTF-8

dicos ★★
() автор топика
Ответ на: комментарий от anonymous

Проблема началась с переносом настроенной системы на новый сервер. Настройки со старого сервера (sites-avalible) я перенес один-в-один, все настройки старого сервера не могу посмотреть.

uwsgi не смог настроить автозапуск.

dicos ★★
() автор топика
Ответ на: комментарий от anonymous

да,

$sudo /etc/init.d/nginx restart
Restarting nginx: nginx.
$

dicos ★★
() автор топика
Ответ на: комментарий от pekmop1024

ни чего не трогал, дефолтные значения URL оставлял как есть (в nginx это 4k)

Запрос такой (вместо домена ***):

http://***/attachments/ticket/114/%D1%80%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%BD%D1%8B%D0%B9%20%D0%B1%D0%BB%D0%BE%D0%BA%201%20%28%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0%20%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B5%D0%B9%20%D0%B2%20%D0%B3%D0%BE%D1%80%D0%BE%D0%B4%D0%B5%29.png
он занимает 263 килобайта

dicos ★★
() автор топика
Ответ на: поменяй первый локейшен от amgorb

Подставил вместо «„„location ~ /*\.py*““» «„„location ~ \.py($|/)““», все заработало. Спасибо всем.

dicos ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.