Quantcast
Channel: Nginx Forum - Nginx Mailing List - Russian
Viewing all 3102 articles
Browse latest View live

SSL единый HTTP/HTTPS сервер (3 replies)

$
0
0
Добрый день,
есть ли возможность сделать единный HTTP/HTTPS сервер на отличном порту?
Например, чтобы example.com:6666 работал и по HTTP и по HTTPS?

Спасибо.

server_name regexp (1 reply)

$
0
0
Здравствуйте.

Какая-то ерунда наблюдается. Вот есть у меня хост, у которого есть
поддомены. И каждый поддомен должен идти на свой бэкенд. Но так же, у этого
хоста есть и https.
Вопрос первый. Правда ли, что с этом случае нельзя использовать регулярное
выражение для описания имени этого хоста? Если так, то нужно использовать
regexp имя и *.site.com ?
Вопрос второй. Я вот попробовал использовать такую конструкцию для описания
этого хоста, как в map, так и в server_name:
~^(?<n>).+site\.com$

И ни в map, ни в server_name я не получаю значение $n.

Я попробовал так:
~^(?<n>.+site\.com)$

И получил весь $http_host, вместо $n.

Что я делаю не так?



--
Best regards,
Anton Kiryushkin
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

location /pics/ только для картинок (2 replies)

$
0
0
Добрый день.

Нужно все запросы картинок jpg|jpeg|gif|png в uri которых присутствует /pics/ проксировать на отдельный сервер.
Ссылки вида example.com/pics/goods/big/komplekt_4-2.jpg

Пока сделал так и работает.

location /pics/ {
location ~* \.(jpg|jpeg|gif|png) {
include /etc/nginx/ext-pics.conf;
}
}

Верно ли использовать такую конструкцию или можно обойтись без вложения location ?

Максимально возможные значения для fastcgi_connect_timeout и fastcgi_read_timeout (4 replies)

$
0
0
Всем привет!

Когда-то давно я помню, что было обсуждение этих директив и было
упоминание, что
http://nginx.org/ru/docs/http/ngx_http_fastcgi_module.html#fastcgi_connect_timeout
поднять выше 75 секунд нельзя и это захаркожено и исходниках. В связи с чем
вопросы:

1) Где в коде эти 75 секунд заданы в случае, если нужно этот лимит поднять?
2) Есть ли для fastcgi_read_timeout подобных хардкод, и если да, то где он?
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Можно ли задать timeout для "shutting down" ? (3 replies)

$
0
0
Есть nginx, который кушает много памяти. Когда делаем nginx -s reload, старые процессы не умирают, а переходят в стостояние "is shutting down", продолжая потреблять память. На смену им запускаются новые worker-ы, которые тоже отъедают память.
Процессы "is shutting down" продолжают висеть долго.
Следовательно каждый nginx -s reload приводит к быстрому исчерпанию свободной памяти, запустил раза 2..3 и память кончилась.
Есть ли возможность ограничить время пребывания процессов в состоянии завершения работы ?
Искал по всем директивам - не нашёл :-(

Два вопроса (2 replies)

$
0
0
Всем привет.

1. Насколько я понимаю, proxy_сache на скрипт, который возвращает
X-Accel-Redirect не поддерживается ?
2. Как можно для одного location выключить функционал real-ip, если
set_real_ip_from/real_ip_header заданы для server {}. Пробовал задавать
другие real_ip_header и set_real_ip_from - всё равно срабатывает.

--
Sergey Smitienko

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Отключить acess_log внутри If (1 reply)

$
0
0
Всем привет!
Есть ли элегантный способ исключить логирование чтобы зря не засорять
access_log внутри такой конструкции, которая находится на уровне server?
if ($args ~ "^id=[0-9]{10,}&msg=$") {
return 444;
}

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Загрузка файла, не работает X-Accel-Redirect (1 reply)

$
0
0
Приветствую!

Появилась проблема с загрузкой файла, уже не пару часов провел в решении проблемы и гугления, так ее и не решил.

И так.

Файлы загружаются на сервер в каталог /var/www/servers/s_1/{при загрузке файла создается папка - имя хеш}/filename.txt

Ссылка на файл имеет вид http://example.com/file/{random_string}/{хеш созданной папки}/filename.txt

Т.е. на обработчик получаем три параметра: random_string, hash_folder, namefile. Проверяем файл и отдаем на скачивание с помощью заголовка header("X-Accel-Redirect: {$path}")

В итоге ничего не получается, все время ошибка 404, в логах пусто.

Локейшн

location /file/ {
rewrite /file/(.*)/(.*)/(.*) /downloadDirect.php?link=$1&link2=$2&name=$3 last;
}

Пробовал разные варианты и не один не подошел.

Буду очень благодарен за помощь.

Location хедер остается localhost (2 replies)

$
0
0
Конфигурация client - nginx - tomcat. При проходе ПОСТ-запроса на логаут внешний адрес как положено транслируется нгинксом в localhost. В приложении на томкате логаут редиректится на логин-страницу, высылается 302 респонс с Location="localhost...". Нгинкс не меняет его на внешний адрес, соответственно клиенту приходит для редиректа неверный url. Подскажите настройки нгинкс для подставления внешнего ip-адреса в Location в респонсе.

Поддержка ICP - Internet Cache Protocol (2 replies)

$
0
0
Добрый день.

Планируется ли в nginx поддержка Internet Cache Protocol ?

Есть задача в работе группы кешей (на 5-6 серверов) так, чтобы надо было
опросить соседей, нет ли у них нужного контента, и обратиться к бэканду,
только если ни в одном из кешей нужного контента нет. Городить
последовательный опрос серверов не так красиво и удобно, как использование
подобного протокола.

Возможно кто-то знает решение с уже имеющимися возможностями?

--
Рустам
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Bitrix + php-fpm (6 replies)

$
0
0
Пытаюсь перенести Bitrix с apache + php на nginx + php-fpm.

Bitrix 9.*
php-fpm 5.4.*

Пробовал писать сам и на примере
http://dev.1c-bitrix.ru/community/webdev/user/5427/blog/bitrix-nginx-phpfpm/?commentId=22761

Ни в какую не хочет работать.

Всю голову сломал. Это вообще возможно?
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

try_files и перенаправление 301 для / (корень сайта) (1 reply)

$
0
0
Здравствуйте, уважаемые форумчане!
Возможно кто-то сталкивался и может подсказать, корректно ли поведение nginx для следующего случая:
имеется try_files $uri /;
исходя из документации, fallback для try_files выполняет внутреннюю переадресацию, но, при этом, в данном случае, nginx отдает 301 код и новый адрес, в браузере это отображается как два запроса.

debug log:

[debug] 10125#0: *7 http script var: "/raw/test.jpg"
[debug] 10125#0: *7 trying to use file: "/raw/test.jpg" "/www/cdn.dev/raw/test.jpg"
[debug] 10125#0: *7 trying to use dir: "" "/www/cdn.dev"
[debug] 10125#0: *7 internal redirect: "?"
[debug] 10125#0: *7 rewrite phase: 1
[debug] 10125#0: *7 test location: "/"
[debug] 10125#0: *7 using configuration ""
[debug] 10125#0: *7 http cl:-1 max:1048576
[debug] 10125#0: *7 rewrite phase: 3
[debug] 10125#0: *7 post rewrite phase: 4
[debug] 10125#0: *7 generic phase: 5
[debug] 10125#0: *7 generic phase: 6
[debug] 10125#0: *7 generic phase: 7
[debug] 10125#0: *7 access phase: 8
[debug] 10125#0: *7 access phase: 9
[debug] 10125#0: *7 access phase: 10
[debug] 10125#0: *7 access phase: 11
[debug] 10125#0: *7 post access phase: 12
[debug] 10125#0: *7 try files phase: 13
[debug] 10125#0: *7 content phase: 14
[debug] 10125#0: *7 content phase: 15
[debug] 10125#0: *7 content phase: 16
[debug] 10125#0: *7 content phase: 17
[debug] 10125#0: *7 content phase: 18
[debug] 10125#0: *7 content phase: 19
[debug] 10125#0: *7 http filename: "/www/cdn.dev"
[debug] 10125#0: *7 add cleanup: 00000000024881C0
[debug] 10125#0: *7 http static fd: -1
[debug] 10125#0: *7 http dir
[debug] 10125#0: *7 http finalize request: 301, "?" a:1, c:2
[debug] 10125#0: *7 http special response: 301, "?"
[debug] 10125#0: *7 http set discard body
[debug] 10125#0: *7 xslt filter header
[debug] 10125#0: *7 HTTP/1.1 301 Moved Permanently

может быть кто-то сталкивался?

Re: try files и перенаправление 301 для / (корень сайта) (no replies)

$
0
0
On Nov 29, 2014, at 2:44 PM, excanoe <nginx-forum@nginx.us> wrote:
> прошу прощения, забыл добавить конфиг:
>
> server {
> error_log /var/log/nginx/error.log debug;
>
> server_name cdn.dev;
>
> root /www/cdn.dev;
>
> location / {
> return 444; # здесь может быть все что угодно
> }
>
> location /raw {
> try_files $uri /;
> }
> }
>
> запрос: http://cdn.dev/raw/test.jpg
>
> кстати, если выставить try_files $uri //; (два слеша), то выполняется
> внутренний проброс, без 301 кода.

Не указали версию, но скорее всего на этот баг (<1.7.2) наступаете:
http://hg.nginx.org/nginx/rev/790ba7484bb6

--
Sergey Kandaurov

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Проблемы с получением request_body (no replies)

$
0
0
Привет.
Я пишу модуль для Nginx в котором будут обрабатываются POST запросы.
Нашел несколько opensource проектов в которых тоже обрабатываются запросы такого типа.
Например https://github.com/calio/form-input-nginx-module .
Сделал этот функционал , но оно работает только на локальной среде. Если пробую с какого то online сервера то ответ от Nginx пустой.

Как я представляю в remote сервере request_body приходит гораздо медленнее чем на локале и где то возврашет ответ до исполнения хандлера ngx_http_read_client_request_body(r,toxic_post_body_handler).
Покапал в интернете ничего нет по этой теме. Просмотрел коды у других модулей вроде у меня тоже так же.

Вот мой код.

#include <ngx_config.h>
#include <ngx_core.h>
#include <ngx_http.h>
#include <ngx_event.h>

............................... // Еше несколько

typedef struct {
char *key;
void(*callback)(const char *str, unsigned int str_length);
} toxic_request_callback;

typedef struct
{
unsigned done:1;
unsigned waiting_more_body:1;
unsigned body_end:1;
} toxic_ctx;


static char *ngx_http_toxic(ngx_conf_t *cf, void *post, void *data);


static ngx_conf_post_handler_pt ngx_http_toxic_p = ngx_http_toxic;

typedef struct {
ngx_str_t name;
} ngx_http_toxic_loc_conf_t;

static void * ngx_http_toxic_create_loc_conf(ngx_conf_t *cf)
{
ngx_http_toxic_loc_conf_t *conf;

conf = ngx_pcalloc(cf->pool, sizeof(ngx_http_toxic_loc_conf_t));
if (conf == NULL) {
return NULL;
}

return conf;
}

static ngx_command_t ngx_http_toxic_commands[] = {
{ ngx_string("toxic"),
NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1,
ngx_conf_set_str_slot,
NGX_HTTP_LOC_CONF_OFFSET,
offsetof(ngx_http_toxic_loc_conf_t, name),
&ngx_http_toxic_p },

ngx_null_command
};


static ngx_str_t toxic_string;
static ngx_http_module_t ngx_http_toxic_module_ctx = {
NULL, /* preconfiguration */
NULL, /* postconfiguration */

NULL, /* create main configuration */
NULL, /* init main configuration */

NULL, /* create server configuration */
NULL, /* merge server configuration */

ngx_http_toxic_create_loc_conf, /* create location configuration */
NULL /* merge location configuration */
};


ngx_module_t ngx_http_toxic_module = {
NGX_MODULE_V1,
&ngx_http_toxic_module_ctx, /* module context */
ngx_http_toxic_commands, /* module directives */
NGX_HTTP_MODULE, /* module type */
NULL, /* init master */
NULL, /* init module */
NULL, /* init process */
NULL, /* init thread */
NULL, /* exit thread */
NULL, /* exit process */
NULL, /* exit master */
NGX_MODULE_V1_PADDING
};

static ngx_int_t
ngx_http_toxic_handler(ngx_http_request_t *r);

static ngx_int_t toxic_excecute(ngx_http_request_t *r, char *content_type)
{
char * base_str;
int base_len = 0;

....................................................... // функционал с base_str и base_len

r->headers_out.content_type_len = strlen(content_type);
r->headers_out.content_type.data = (u_char *) content_type;
r->headers_out.status = NGX_HTTP_OK;
r->headers_out.content_length_n = base_len;
ngx_http_send_header(r);


ngx_buf_t *b;
ngx_chain_t *out;
out = ngx_pcalloc(r->pool, sizeof(out));
b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t));
if (b == NULL) {
return 0;
}
out->buf = b;
out->next = NULL;

/* adjust the pointers of the buffer */
b->pos = (u_char*)base_str;
b->last = (u_char*)base_str + base_len;
b->memory = 1; /* this buffer is in memory */
b->last_buf = 1; /* this is the last buffer in the buffer chain */

/* send the buffer chain of response */
ngx_int_t rc;
rc = ngx_http_output_filter ( r , out );
while( rc == NGX_AGAIN ) {
if( out->next == NULL )
break;
rc = ngx_http_output_filter ( r , out->next );
out = out->next;
}

return NGX_DONE;
}


static void toxic_post_body_handler(ngx_http_request_t *r)
{
toxic_ctx *ctx;

ctx = ngx_http_get_module_ctx(r, ngx_http_toxic_module);
ctx->done = 1;
#if defined(nginx_version) && nginx_version >= 8011
r->main->count--;
#endif
/* waiting_more_body my rewrite phase handler */
if (ctx->waiting_more_body) {
ctx->waiting_more_body = 0;
ngx_http_core_run_phases(r->main); // Думаю проблема здесь но не представляю что делать
}


// предполагаю что здесь уже весь POST пришел
ngx_buf_t * buf;
ngx_chain_t * chain;
char *post_body= "";
int post_len=0;
chain = r->request_body->bufs;
while (chain) {
buf = chain->buf;
int len = buf->end - buf->start;
if(post_len > 0)
{
post_body = (char*)realloc(post_body, sizeof(char) * (len + post_len));
strncat(post_body, (char *)buf->start, len);
}
else
{
post_body = (char*)malloc(sizeof(char) * len);
int i;
for(i=0;i<len;i++)
{
post_body[i] = buf->start[i];
}
post_body[len] = '\0';
}
post_len += len;
chain = chain->next;
}

............................ // функционал с post_body и post_len

}

/*
* Main handler function of the module.
*/
static ngx_int_t
ngx_http_toxic_handler(ngx_http_request_t *r)
{
ngx_int_t rc;
toxic_ctx *ctx;

if ((r->method & (NGX_HTTP_POST|NGX_HTTP_PUT))) {
ctx = ngx_http_get_module_ctx(r, ngx_http_toxic_module);

if (ctx != NULL) {
if (ctx->done) {
return NGX_DECLINED;
}

return NGX_DONE;
}

ctx = ngx_pcalloc(r->pool, sizeof(toxic_ctx));
if (ctx == NULL) {
return NGX_ERROR;
}

ngx_http_set_ctx(r, ctx, ngx_http_toxic_module);

rc = ngx_http_read_client_request_body(r,toxic_post_body_handler);
if (rc == NGX_ERROR || rc >= NGX_HTTP_SPECIAL_RESPONSE) {
return rc;
}

if (rc == NGX_AGAIN) {
ctx->waiting_more_body = 1;
ngx_http_set_ctx(r, ctx, ngx_http_toxic_module);
return NGX_DONE;
}
}

ngx_http_finalize_request(r, toxic_excecute(r, "text/html"));

return NGX_OK;
}

/*
* Function for the directive toxic , it validates its value
* and copies it to a static variable to be printed later
*/
static char * ngx_http_toxic(ngx_conf_t *cf, void *post, void *data)
{
ngx_http_core_loc_conf_t *clcf;

clcf = ngx_http_conf_get_module_loc_conf(cf, ngx_http_core_module);
clcf->handler = ngx_http_toxic_handler;

ngx_str_t *name = data; // i.e., first field of ngx_http_toxic_loc_conf_t

if (ngx_strcmp(name->data, "") == 0) {
return NGX_CONF_ERROR;
}

return NGX_CONF_OK;
}

Re: Проблемы с получением request body (no replies)

$
0
0
Hello!

On Mon, Dec 01, 2014 at 08:35:35AM -0500, tigran.bayburtsyan wrote:

> Привет.
> Я пишу модуль для Nginx в котором будут обрабатываются POST запросы.
> Нашел несколько opensource проектов в которых тоже обрабатываются запросы
> такого типа.
> Например https://github.com/calio/form-input-nginx-module .
> Сделал этот функционал , но оно работает только на локальной среде. Если
> пробую с какого то online сервера то ответ от Nginx пустой.
>
> Как я представляю в remote сервере request_body приходит гораздо медленнее
> чем на локале и где то возврашет ответ до исполнения хандлера
> ngx_http_read_client_request_body(r,toxic_post_body_handler).
> Покапал в интернете ничего нет по этой теме. Просмотрел коды у других
> модулей вроде у меня тоже так же.
>
> Вот мой код.

[...]

> static void toxic_post_body_handler(ngx_http_request_t *r)
> {
> toxic_ctx *ctx;
>
> ctx = ngx_http_get_module_ctx(r, ngx_http_toxic_module);
> ctx->done = 1;
> #if defined(nginx_version) && nginx_version >= 8011
> r->main->count--;
> #endif
> /* waiting_more_body my rewrite phase handler */
> if (ctx->waiting_more_body) {
> ctx->waiting_more_body = 0;
> ngx_http_core_run_phases(r->main); // Думаю проблема здесь но не
> представляю что делать
> }

А зачем вы вообще всё это делаете?

Вызов toxic_post_body_handler() происходит тогда и только тогда,
когда тело получено. Ничего уменьшать или звать тут не надо -
следует обработать тело, отправить ответ, после чего
финализировать запрос с помощью ngx_http_finalize_request().

[...]

> rc =
> ngx_http_read_client_request_body(r,toxic_post_body_handler);
> if (rc == NGX_ERROR || rc >= NGX_HTTP_SPECIAL_RESPONSE) {
> return rc;
> }
>
> if (rc == NGX_AGAIN) {
> ctx->waiting_more_body = 1;
> ngx_http_set_ctx(r, ctx, ngx_http_toxic_module);
> return NGX_DONE;
> }

Это неправильно. Если вы читаете тело, то в случае любого
положительного ответа от ngx_http_read_client_request_body()
следует возвращать из обраотчика NGX_DONE. А всю работу - делать
в обработчике тела, так:

rc = ngx_http_read_client_request_body(r, handler);

if (rc >= NGX_HTTP_SPECIAL_RESPONSE) {
return rc;
}

return NGX_DONE;

--
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

nginx-1.7.8 (5 replies)

$
0
0
Изменения в nginx 1.7.8 02.12.2014

*) Изменение: теперь строки "If-Modified-Since", "If-Range" и им
подобные в заголовке запроса клиента передаются бэкенду при
включённом кэшировании, если nginx заранее знает, что не будет
кэшировать ответ (например, при использовании proxy_cache_min_uses).

*) Изменение: теперь после истечения proxy_cache_lock_timeout nginx
отправляет запрос на бэкенд без кэширования; новые директивы
proxy_cache_lock_age, fastcgi_cache_lock_age, scgi_cache_lock_age и
uwsgi_cache_lock_age позволяют указать, через какое время блокировка
будет принудительно снята и будет сделана ещё одна попытка
закэшировать ответ.

*) Изменение: директива log_format теперь может использоваться только на
уровне http.

*) Добавление: директивы proxy_ssl_certificate,
proxy_ssl_certificate_key, proxy_ssl_password_file,
uwsgi_ssl_certificate, uwsgi_ssl_certificate_key и
uwsgi_ssl_password_file.
Спасибо Piotr Sikora.

*) Добавление: теперь с помощью X-Accel-Redirect можно перейти в
именованный location.
Спасибо Toshikuni Fukaya.

*) Добавление: теперь директива tcp_nodelay работает для
SPDY-соединений.

*) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
Спасибо Peter Wu.

*) Исправление: nginx игнорировал значение "s-maxage" в строке
"Cache-Control" в заголовке ответа бэкенда.
Спасибо Piotr Sikora.

*) Исправление: в модуле ngx_http_spdy_module.
Спасибо Piotr Sikora.

*) Исправление: в директиве ssl_password_file при использовании OpenSSL
0.9.8zc, 1.0.0o, 1.0.1j.

*) Исправление: при использовании директивы post_action в лог писались
сообщения "header already sent"; ошибка появилась в nginx 1.5.4.

*) Исправление: при использовании директивы "postpone_output 0" с
SSI-подзапросами в лог могли писаться сообщения "the http output
chain is empty".

*) Исправление: в директиве proxy_cache_lock при использовании
SSI-подзапросов.
Спасибо Yichun Zhang.


--
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Проблема с AJAX (no replies)

$
0
0
Здравствуйте. Использую аналитическую платформу Pentaho BI Server и в нем OLAP-клиент Saiku. Проблема в том, что Saiku корректно работает только в локальной сети, из вне же не функционирует частично AJAX-функционал (настройка измерений, например). Взаимодействие с внешним миром идет через nginx. Есть подозрения, что проблема в его настройке. Слышал можно отключить упорядочивание очереди запросов/ответов и проблема может быть в этом.
Все необходимые данные, необходимые для идентификации проблемы, предоставлю. Спасибо.

Nginx plus cache invalidation problem (3 replies)

$
0
0
Добрый день!
nginx не инвалидирует кеш по патерну.
- версия nginx: version: nginx/1.7.3 (nginx-plus-extras-r4-p1)
- запрос инвалидации кеша: curl -X PURGE -D - "http://i.xxxxxx.yy/html/*-test/*"

upstream s3 {
keepalive 10;

server lm-zzzzzzzz-eu-west.s3-eu-west-1.amazonaws.com fail_timeout=0;

zone s3 512k;
}

proxy_cache_path /tmp/cache
levels=1:2
keys_zone=S3_CACHE:1024m
loader_threshold=300
loader_files=200
inactive=120m;

map $request_method $purge_method {
PURGE 1;
default 0;
}

server {
server_name i.xxxxxx.yy;

status_zone s3;

add_header X-Proxy-Cache $upstream_cache_status;

location / {
try_files $uri @s3;
}

location ~ .mp4$ {
mp4;
mp4_buffer_size 1m;
mp4_max_buffer_size 15m;

try_files $uri @s3;
}

location @s3 {
proxy_set_header Host lm-zzzzzzzz-eu-west.s3-eu-west-1.amazonaws.com;
proxy_set_header Authorization '';
proxy_hide_header x-amz-id-2;
proxy_hide_header x-amz-request-id;
proxy_hide_header Set-Cookie;
proxy_ignore_headers "Set-Cookie";
proxy_intercept_errors on;

proxy_cache S3_CACHE;
proxy_cache_valid 200 168h;
proxy_cache_valid 403 1h;
proxy_cache_bypass $http_cache_purge;
proxy_cache_purge $purge_method;

proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_pass http://s3;
}
}

Заранее спасибо!

Too many open files (1 reply)

$
0
0
Добрый день.
Возникла такая ситуация:
на сервере порядка 550 виртуальных хостов, у каждого вхоста есть два лога +
каждый вхост инклюдит файл типа "банлиста" со списком айпи.
при запуске nginx -t выдаёт это сообщение:
nginx: [emerg] open() "/data/nginx/logs/wongamib.vhost.com-error.log"
failed (24: Too many open files)
nginx можно рестартовать, релоадить, но вот при проверке конфигов
происходит такое.

конфиги:
/etc/nginx/nginx.conf
worker_rlimit_nofile 81920;

/etc/init.d/nginx
ulimit -n 250000

/etc/security/limits.conf
nginx soft nofile 65000
nginx hard nofile 65000

/etc/sysctl.conf
fs.file-max = 250000

nginx version: nginx/1.7.7

Спасибо за помощь!


2014-12-05 14:00 GMT+02:00 <nginx-ru-request@nginx.org>:

> Сообщения, предназначенные для списка рассылки nginx-ru, необходимо
> отправлять по адресу
> nginx-ru@nginx.org
>
> Для изменения параметров подписки вы можеже использовать веб-страницу
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
> Для получения информации о том, как пользовать почтовым интерфейсом,
> отправьте письмо, в теле или теме которого будет слово 'help', по
> адресу:
> nginx-ru-request@nginx.org
>
> Адрес человека, ответственного за этот список рассылки:
> nginx-ru-owner@nginx.org
>
> При ответе, пожалуйста, измение тему письма так, чтобы она была более
> содержательной чем "Re: Содержание дайджеста списка рассылки
> nginx-ru..."
>
> Today's Topics:
>
> 1. Re: Проблема с AJAX (Kouki)
>
>
> ---------- Forwarded message ----------
> From: Kouki <nginx-forum@nginx.us>
> To: nginx-ru@nginx.org
> Cc:
> Date: Fri, 05 Dec 2014 06:57:17 -0500
> Subject: Re: Проблема с AJAX
> Вот два лога. Первый при работе локально:
>
> Remote Address:192.168.50.174:8080
> Request
> URL:
> http://192.168.50.174:8080/pentaho/plugin/saiku/api/api/query/CDEB1935-BE4A-A016-9694-9F0F5A6808C8/result/metadata/hierarchies/%5BAbonent%5D/levels/Conglomeration?result=true&searchlimit=3000&_=1417777699019
> Request Method:GET
> Status Code:200 OK
>
> Request Headers
> view source
> Accept:application/json, text/javascript, */*; q=0.01
> Accept-Encoding:gzip, deflate, sdch
> Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
> Connection:keep-alive
> Content-Type:application/x-www-form-urlencoded
> Cookie:JSESSIONID=54FA59B71793F6FEA985550A1F543253; session-flushed=true;
> __utma=45556068.1265588375.1413368749.1414138403.1415442107.10;
>
> __utmz=45556068.1415442107.10.7.utmcsr=localhost:2607|utmccn=(referral)|utmcmd=referral|utmcct=/Analytics/Olap;
> JSESSIONID=CEEB1D13D26E6791AA9C080E5356ECF9
> Host:192.168.50.174:8080
> Referer:
> http://192.168.50.174:8080/pentaho/content/saiku-ui/index.html?biplugin5=true&ts=1417777698873
> User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,
> like Gecko) Chrome/39.0.2171.71 Safari/537.36
> X-Requested-With:XMLHttpRequest
>
> Query String Parameters
> view sourceview URL encoded
> result:true
> searchlimit:3000
> _:1417777699019
>
> Response Headers
> view source
> Content-Encoding:gzip
> Content-Type:application/json
> Date:Fri, 05 Dec 2014 11:08:41 GMT
> Server:Apache-Coyote/1.1
> Transfer-Encoding:chunked
> Vary:Accept-Encoding
>
>
>
> Второй при работе удаленно:
>
> Remote Address:91.xx.xx.xx:80
> Request
> URL:
> http://example.com/pentaho/plugin/saiku/api/api/query/2F8B491C-CBEB-C952-B5A6-D378C1B653EF/result/metadata/hierarchies/%5BAbonent%5D/levels/Conglomeration?result=true&searchlimit=3000&_=1417736518300
> Request Method:GET
> Status Code:400 Bad Request
>
> Request Headers
> view source
> Accept:application/json, text/javascript, */*; q=0.01
> Accept-Encoding:gzip, deflate, sdch
> Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
> Connection:keep-alive
> Content-Type:application/x-www-form-urlencoded
> Cookie:oam.Flash.RENDERMAP.TOKEN=-14btfezv34;
> JSESSIONID=3F331CCB8B2D57AC273C31B4D239B441; session-flushed=true;
> __utma=180178164.1511279123.1388941895.1412200496.1412891505.11;
> __utmc=180178164;
> __utmz=180178164.1401530943.8.3.utmcsr=career.ru
> |utmccn=(referral)|utmcmd=referral|utmcct=/applicant/resumes/view;
> __utma=41801265.543875512.1413360992.1415312537.1415482538.3;
> __utmc=41801265;
>
> __utmz=41801265.1413360992.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none);
> JSESSIONID=FAC71298660B340B837D5AD7DA76A456
> Host:example.com
> Referer:
> http://example.com/pentaho/content/saiku-ui/index.html?biplugin5=true&ts=1417736517689
> User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,
> like Gecko) Chrome/39.0.2171.71 Safari/537.36
> X-Requested-With:XMLHttpRequest
>
> Query String Parameters
> view sourceview URL encoded
> result:true
> searchlimit:3000
> _:1417736518300
>
> Response Headers
> view source
> Connection:keep-alive
> Content-Encoding:gzip
> Content-Type:text/html;charset=utf-8
> Date:Thu, 04 Dec 2014 23:43:00 GMT
> Server:nginx/1.6.2
> Transfer-Encoding:chunked
> Vary:Accept-Encoding
>
> Posted at Nginx Forum:
> http://forum.nginx.org/read.php?21,255278,255319#msg-255319
>
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Странности с try_files (8 replies)

$
0
0
Добрый день
Подскажите плз, что происходит не так и куда смотреть
Имеется несколько серверов, отдающих статический контент, и один сервер,
являющийся для них мастером
Делается это следующим образом:
server {
listen *:80;
server_name img.site.com img-h10.site.com ;
root /home/site.com/site.com;

location / {
expires 14d;

root /home/site.com/img.site.com;
try_files $uri $uri/ @fallback;
error_log /home/site.com/logs/img.site.com-img-error.log;
}

location @fallback
{
proxy_pass http://db.site.com;
proxy_store /home/site.com/img.site.com/$request_uri;
proxy_cache_key $host$uri$query_string;
root /home/site.com/img.site.com;
proxy_store_access user:rw group:rw all:rw;
error_log /home/site.com/logs/img.fallback-error.log warn;
access_log /home/site.com/logs/img.fallback-access.log ;
access_log /home/site.com/logs/img.fallback-count.log count;
}

}
Но при анализе img.fallback-access.log выясняется, что один и тот же файл
запрашивается много раз, хотя в ФС он физически присутствует. Что это может
быть?
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Viewing all 3102 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>