Re: Оптимизация конфига
Илья Шипицин
chipitsine at gmail.com
Tue Feb 26 02:59:21 UTC 2013
погоня за универсальностью обычно всё хорошее и убивает.
25 февраля 2013 г., 23:19 пользователь Дмитрий Лялюев <dmitriy at lyalyuev.info
> написал:
> Спасибо, подумаю. Но что-то меня смущает замена конфига полностью.
> 25.02.2013 18:35 пользователь "Илья Шипицин" <chipitsine at gmail.com>
> написал:
>
> например, на время деплоя подменять конфигурацию на вот такую
>>
>> server {
>> listen 80;
>> server_name localhost;
>>
>> error_page 404 =503 /404.html;
>> root /etc/nginx/docs;
>>
>>
>> location / {
>> index nonexistent.html;
>> }
>> }
>>
>>
>> файл /etc/nginx/docs/404.html будет отдаваться на любой запрос, ответ
>> будет с кодом 503
>>
>>
>>
>> 25 февраля 2013 г., 21:47 пользователь Дмитрий Лялюев <
>> dmitriy at lyalyuev.info> написал:
>>
>>> Ну эта страничка выдается только в момент деплоя новой версии, т.е. не
>>> более нескольких минут. Думаю, что это не сильно критично.
>>>
>>> Но вот как сделать правильно?
>>> Т.е. как сделать так, чтоб при наличии этого файла отдавалась эта
>>> страница, но с кодом 503?
>>> Подскажете в какую стороны посмотреть?
>>>
>>>
>>> 25 февраля 2013 г., 17:02 пользователь Илья Шипицин <
>>> chipitsine at gmail.com> написал:
>>>
>>> абсолютных критериев "правильности" нет.
>>>> если отдавать 200, то вас прямо так проиндексируют поисковики (если у
>>>> вас публичный сайт и вас это беспокоит)
>>>> если отдавать 503, то вашу заглушку не проиндексируют, но MSIE и Chrome
>>>> по умолчанию любят показывать "friendly" страницы ошибок и они подменят
>>>> вашу заглушку.
>>>>
>>>> в зависимости от этого выбираете компромисс.
>>>>
>>>>
>>>> 25 февраля 2013 г., 20:52 пользователь Дмитрий Лялюев <
>>>> dmitriy at lyalyuev.info> написал:
>>>>
>>>> 1. О try_files можно подробнее как сделать правильно?
>>>>> 2. С переменной понятно все, но тут лучше вряд ли выйдет, т.к.
>>>>> "движок" один для любого домена и поддомена, которые добавляются простой
>>>>> регистрацией на сайте. Не генерить же новый конфиг на каждую регистрацию?
>>>>>
>>>>> Про рерайты и условия - понимаю, но таковы реалии задачи. Хотя вроде
>>>>> бы ничего особо сложного там нет.
>>>>>
>>>>> Спасибо большое за ваши комментарии.
>>>>>
>>>>>
>>>>> 25 февраля 2013 г., 16:37 пользователь Илья Шипицин <
>>>>> chipitsine at gmail.com> написал:
>>>>>
>>>>> вероятно, в этом месте
>>>>>>
>>>>>> try_files /maintenance.html $uri @apache;
>>>>>>
>>>>>> подразумевалась логика "если мы хотим повешать заглушку на сайт, то
>>>>>> мы положим файлик /maintenance.html",
>>>>>> это не очень хорошая идея, с точки зрения поисковых систем ответ
>>>>>> будет с кодом 200, прямо так вас и проиндексируют.
>>>>>>
>>>>>> с точки зрения нагрузки (если у вас высокая) переменную $HBW лучше
>>>>>> оформить в виде map-а, тогда она будет вычисляться только при обращении к
>>>>>> ней (сейчас каждый раз).
>>>>>>
>>>>>>
>>>>>> ну и вообще столько реврайтов и условий с регулярными выражениями
>>>>>> сильно снижает читаемость конфига.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> 25 февраля 2013 г., 19:14 пользователь Дмитрий Лялюев <
>>>>>> dmitriy at lyalyuev.info> написал:
>>>>>>
>>>>>>> Есть написанный мной конфиг. Хотелось бы выслушать предложения по
>>>>>>> его оптимизации и ругань, что я ламер и надо делать все не так. :) Поможете?
>>>>>>>
>>>>>>> server {
>>>>>>> listen 80 default;
>>>>>>> server_name ~^(?:www\.)*(?<HBW>.+)$;
>>>>>>> server_name_in_redirect off;
>>>>>>>
>>>>>>> access_log off;
>>>>>>> error_log /var/log/nginx/proxy.log;
>>>>>>>
>>>>>>> root /var/www/apps/application/current/public;
>>>>>>>
>>>>>>> include /etc/nginx/banned_ip.conf;
>>>>>>>
>>>>>>> location / {
>>>>>>> try_files /maintenance.html $uri @apache;
>>>>>>>
>>>>>>> location ~ ^(/Help|/pub) {
>>>>>>> proxy_pass http://wiki.application.com;
>>>>>>> proxy_set_header X-Real-IP $remote_addr;
>>>>>>> proxy_set_header Host $host;
>>>>>>> proxy_set_header X-Forwarded-For
>>>>>>> $proxy_add_x_forwarded_for;
>>>>>>> }
>>>>>>>
>>>>>>> location ~ /(assets|images/egg/sites) {
>>>>>>> expires modified +30d;
>>>>>>> access_log off;
>>>>>>> try_files /maintenance.html $uri @apache;
>>>>>>> }
>>>>>>>
>>>>>>> location ~ ^/stylesheets/(.*)/(.*) {
>>>>>>> rewrite /stylesheets/(.*) /assets/$1 last;
>>>>>>> }
>>>>>>>
>>>>>>> location ~ ^/(images|javascripts) {
>>>>>>> rewrite /(images|javascripts)/(.*) /assets/$2 last;
>>>>>>> }
>>>>>>>
>>>>>>> location ~* \.(gif|jpg|png|ico)$ {
>>>>>>> root /var/www/apps/application/current/eggs/$HBW;
>>>>>>> access_log off;
>>>>>>> expires modified +30d;
>>>>>>> error_page 404 @apache;
>>>>>>> }
>>>>>>> }
>>>>>>>
>>>>>>> location /crossdomain.xml$ {
>>>>>>> root /var/www/crossdomains/$HBW;
>>>>>>> }
>>>>>>>
>>>>>>> location @apache {
>>>>>>> proxy_pass http://localhost:8080;
>>>>>>> include /etc/nginx/proxy.conf;
>>>>>>> }
>>>>>>> }
>>>>>>>
>>>>>>> Спасибо заранее. :)
>>>>>>>
>>>>>>> --
>>>>>>> С уважением,
>>>>>>> Дмитрий Лялюев
>>>>>>> тел. +380 (66) 532-29-62
>>>>>>> Все контакты для связи на http://lyalyuev.info
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> nginx-ru mailing list
>>>>>>> nginx-ru at nginx.org
>>>>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> nginx-ru mailing list
>>>>>> nginx-ru at nginx.org
>>>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> С уважением,
>>>>> Дмитрий Лялюев
>>>>> тел. +380 (66) 532-29-62
>>>>> Все контакты для связи на http://lyalyuev.info
>>>>>
>>>>> _______________________________________________
>>>>> nginx-ru mailing list
>>>>> nginx-ru at nginx.org
>>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> nginx-ru mailing list
>>>> nginx-ru at nginx.org
>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>>
>>>
>>>
>>>
>>> --
>>> С уважением,
>>> Дмитрий Лялюев
>>> тел. +380 (66) 532-29-62
>>> Все контакты для связи на http://lyalyuev.info
>>>
>>> _______________________________________________
>>> nginx-ru mailing list
>>> nginx-ru at nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru at nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20130226/e7c00732/attachment-0001.html>
Подробная информация о списке рассылки nginx-ru