Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: custom uri для error page в определе нной директории
Спасибо за объяснения! Буду обдумывать, ибо вопрос для меня также актуальный.
2009/11/5 Sergey Shepelev <temotor@xxxxxxxxx>:
> 2009/11/5 Alex, the Marrch Ca'at <marrch.caat@xxxxxxxxx>:
>> Хм... Вот так вот проксировать самому себе?.. Да, интересная мысль,
>> спасибо. Но не будут ли в таком случае накладные расходы уже сравнимы
>> с накладными расходами по вызову для ресайза-кропа-итд скрипта по
>> try_files?
>
> По-моему, очевидно, что любые операции внутри одного процесса
> происходят очень-очень быстро. Но скорость здесь не так существенна.
>
>> А поскольку написание отдельного скрипта для этого, с одной
>> стороны, совершенно не сложно, а с другой - дает существенно больший
>> контроль над процессом обработки - есть ли в таком подходе реальный
>> практический смысл?
>
> Да, во-первых, nginx увидит ошибку в конфиге. PHP и программист - нет.
> Во-вторых, не надо выкатывать лишний скрипт / делать пакет на сервера.
> В-третьих, этот скрипт должен работать демоном, иначе накладные
> расходы ещё хуже чем без проксирования. Интерпретатор будет жрать
> лишнюю память.
> В-четвертых, это субъективное мнение, почти всё - лучше, чем то, что
> сделано "PHP прогером".
>
>>
>> 2009/11/5 Oleksandr V. Typlyns'kyi <wangsamp@xxxxxxxxx>:
>>> Today Nov 5, 2009 at 10:14 Alex, the Marrch Ca'at wrote:
>>>
>>>> Генерировать-то превью nginx может, и верю, что хорошо. Но ведь ему
>>>> это придется делать при каждом запросе, он же не умеет сгенерированные
>>>> превьюшки в соотв. файлы складывать и потом оттуда брать? Или я что-то
>>>> упускаю?
>>>
>>> server {
>>> ...
>>> location /thumbnail/ {
>>> root /some/path/img;
>>> error_page 404 = @crop;
>>> }
>>> location @crop {
>>> root /some/path/img;
>>> proxy_pass http://nginx;
>>> proxy_set_header Host crop.local;
>>> proxy_store on;
>>> }
>>> ...
>>> }
>>>
>>> server {
>>> server_name crop.local;
>>> ...
>>> location /thumbnail/ {
>>> alias /some/path/img/original/;
>>> image_filter crop ...;
>>> }
>>> }
>>>
>>> Может не совсем красиво, но должно работать.
>>>
>>> --
>>> WNGS-RIPE
>>>
>>>
>>
>
|