X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> rewrite и nginx - ошибки в логах
fahrenheit
fahrenheit
Topic Starter сообщение 26.2.2012, 15:09; Ответить: fahrenheit
Сообщение #1


Здравствуйте.
Имеется дедик. На старом сервере как-то не обращал внимание на логи, но сейчас заглянул в error.log и ужаснулся. Там куча ошибок, связанных с изображениями, урл которых изменен через RewriteRule (.htaccess). Пример ошибки:
2012/02/26 15:01:01 [error] 13523#0: *2689 open() "/var/www/mod/data/www/img.my-site.com/di-SELZ.png" failed (2: No such file or directory), client: 46.162.32.161, server: img.my-site.com, request: "GET /di-SELZ.png HTTP/1.1", host: "img.my-site.com", referrer: "http://my-site.com/forum/showthread.php?t=1685&page=156"

p.s. ссылку на сайт изменил, на всякий случай =)

в .htaccess так:
RewriteRule ^di-(.*)\.(jpg|jpeg|png|gif|bmp)$ index.php?di=$1 [L]

Само по себе изображение img.my-site.com/di-SELZ.png существует, и судя по всему, nginx его не видит. Прочитал что nginx не понимает RewriteRule из .htaccess, и для него надо писать отдельно в конфиге редиректы.

Итак, открыл конфиг /etc/nginx/nginx.conf, нашел:
server {
listen мой_ип:80;
server_name img.my-site.com www.img.my-site.com;
rewrite ^(/manager/.*)$ https://$host$1 permanent;
error_page 404 = @fallback;
location ~* ^/(webstat/|awstats|webmail/|myadmin/|manimg/) {
proxy_pass http://мой_ип:8080;
proxy_redirect http://img.my-site.com:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
location / {
proxy_pass http://мой_ип:8080;
proxy_redirect http://img.my-site.com:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;

}
location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar)$ {
root /var/www/hunter/data/www/img.my-site.com;
access_log /var/www/httpd-logs/img.my-site.com.access.log ;
access_log /var/www/nginx-logs/mod isp;
}
location @fallback {
proxy_pass http://мой_ип:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}


Добавил rewrite ^di-(.*)\.(jpg|jpeg|png|gif|bmp)$ /index.php?di=$1 last; и получилось так:
server {
listen мой_ип:80;
server_name img.my-site.com www.img.my-site.com;
rewrite ^(/manager/.*)$ https://$host$1 permanent;
error_page 404 = @fallback;
location ~* ^/(webstat/|awstats|webmail/|myadmin/|manimg/) {
proxy_pass http://мой_ип:8080;
proxy_redirect http://img.my-site.com:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
location / {
proxy_pass http://мой_ип:8080;
proxy_redirect http://img.my-site.com:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
rewrite "^di-(.*)\.(jpg|jpeg|png|gif|bmp)$" /index.php?di=$1 last;

}
location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar)$ {
root /var/www/hunter/data/www/img.my-site.com;
access_log /var/www/httpd-logs/img.my-site.com.access.log ;
access_log /var/www/nginx-logs/mod isp;
}
location @fallback {
proxy_pass http://мой_ип:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}


Перезапустил nginx, но ошибки не пропали. В чем тогда дело? м.б. что-то не правильно делаю?


--------------------
Всё о Need For Speed
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
DmitrySidorov
DmitrySidorov
сообщение 8.3.2012, 13:34; Ответить: DmitrySidorov
Сообщение #2


А зачем Вам отдавать картинки через php-скрипт?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
fire002
fire002
сообщение 8.3.2012, 14:37; Ответить: fire002
Сообщение #3


(DmitrySidorov @ 8.3.2012, 13:34) *
А зачем Вам отдавать картинки через php-скрипт?

А вы никогда не встречали, что некоторые картинки могут генерироватся пхп скриптами?
PS\\ Тема раритет.


--------------------
*nix administrator. AntiDDos systems.
Я рекомендую FastVPS (fastfire_vps - скидка 15% на VPS, fastfire_dedic - скидка 8% на dedicated)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
DmitrySidorov
DmitrySidorov
сообщение 8.3.2012, 14:50; Ответить: DmitrySidorov
Сообщение #4


(fire002 @ 8.3.2012, 13:37) *
А вы никогда не встречали, что некоторые картинки могут генерироватся пхп скриптами?
PS\\ Тема раритет.

Я то встречал, вопрос в другом, файлы есть на сервере, но их нужно отдавать через index.php...Единственное логичное объяснение - обработка файла скриптом, что тоже для меня крайне не понятно, зачем каждый раз обрабатывать smile.gif В общем, можно сделать в разы проще и без заморочек. Из темы удаляюсь.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
fahrenheit
fahrenheit
Topic Starter сообщение 9.3.2012, 19:00; Ответить: fahrenheit
Сообщение #5


(DmitrySidorov @ 8.3.2012, 13:50) *
Я то встречал, вопрос в другом, файлы есть на сервере, но их нужно отдавать через index.php...Единственное логичное объяснение - обработка файла скриптом, что тоже для меня крайне не понятно, зачем каждый раз обрабатывать В общем, можно сделать в разы проще и без заморочек. Из темы удаляюсь.

это всего лишь пример. Есть случаи, которые без редиректа - никак.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Всё о Need For Speed
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Исправлю HTML ошибки на страницах Вашего сайта
17 guruapps 17180 11.2.2020, 15:06
автор: guruapps
Открытая тема (нет новых ответов) Как перенести правила переадресации из .htaccess в php обработчик nginx?
0 KrisGuseva 2096 28.12.2019, 7:33
автор: KrisGuseva
Открытая тема (нет новых ответов) Ошибки при выборе оффера!
0 leadkreditrf 1424 21.7.2019, 20:30
автор: -leadkreditrf-
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыSeo аудит и анализ конверсии сайта. Выявляем ошибки оптимизации
0 РАН 1466 25.5.2016, 17:13
автор: РАН
Открытая тема (нет новых ответов) Поправить ошибки на сайте-визитке Joomla
До 28.03.2016 г. - поправить ошибки
0 Onix 1916 26.3.2016, 8:35
автор: Onix


 



RSS Текстовая версия Сейчас: 18.4.2024, 5:52
Дизайн