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



 

Здравствуйте, гость ( Вход | Регистрация )

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


Участник
***

Группа: User
Сообщений: 117
Регистрация: 29.4.2009
Из: Украина
Поблагодарили: 2 раза
Репутация:   2  


Здравствуйте.
Имеется дедик. На старом сервере как-то не обращал внимание на логи, но сейчас заглянул в 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


Участник
***

Группа: User
Сообщений: 149
Регистрация: 20.5.2011
Поблагодарили: 23 раза
Репутация:   3  


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


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


Участник
***

Группа: User
Сообщений: 222
Регистрация: 9.6.2011
Поблагодарили: 50 раз
Репутация:   12  


(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


Участник
***

Группа: User
Сообщений: 149
Регистрация: 20.5.2011
Поблагодарили: 23 раза
Репутация:   3  


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

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


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


Участник
***

Группа: User
Сообщений: 117
Регистрация: 29.4.2009
Из: Украина
Поблагодарили: 2 раза
Репутация:   2  


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

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


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


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Исправлю HTML ошибки на страницах Вашего сайта
10 guruapps 1213 30.11.2017, 22:59
автор: maxim1249
Открытая тема (нет новых ответов) Bootstrap 4 SASS компиляция ошибки в _root.scss?
3 mxxx 593 3.11.2017, 15:57
автор: mmkulikov
Открытая тема (нет новых ответов) DLE и nginx
1 yurashklyaev 724 4.10.2017, 12:28
автор: WellWeb
Открытая тема (нет новых ответов) Поправить ошибки на сайте-визитке Joomla
До 28.03.2016 г. - поправить ошибки
0 Onix 767 26.3.2016, 8:35
автор: Onix
Открытая тема (нет новых ответов) Бесплатная массовая проверка страниц вашего сайта на орфографические ошибки
2 uberata 3478 6.3.2015, 17:22
автор: uberata


 



RSS Текстовая версия Сейчас: 18.12.2017, 9:35
Дизайн