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

nginx security advisory (CVE-2014-3616) (no replies)

$
0
0
Hello!

Antoine Delignat-Lavaud обнаружил проблему в кэшировании SSL-сессий в
nginx. Было возможно повторно использовать SSL-сессию в контексте
другого блока server{}, что позволяло атакующему, контролирующему канал
между клиентом и nginx'ом, вызывать обработку запросов в неправильном
блоке server{} (CVE-2014-3616).

Проблеме подвержен nginx 0.5.6 - 1.7.4, если в нескольких блоках
server{} используется один и тот же разделяемый ssl_session_cache и/или
ssl_session_ticket_key.

Проблема исправлена в nginx 1.7.5, 1.6.2.

Более подробную информацию можно найти в статье Antoine Delignat-Lavaud
et al., доступной по адресу http://bh.ht.vc/vhost_confusion.pdf.


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

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

map uri fastcgi_pass (2 replies)

$
0
0
Здравствуйте, есть задача: перенаправить запрос c uri вида /some/path/03_dfsakfa на бекенд server03.domain.tld с номером 03(берется из uri).
Все остальные запросы надо отправлять на upstream fpm.

OS Debian 7.6
nginx version: nginx/1.2.1

При перезапуске nginx получаю ошибку:
Restarting nginx: nginx: [emerg] invalid number of the map parameters in /etc/nginx/nginx.conf

Подскажите, что я делаю неправильно, где ошибка?

nginx.conf

http {
...
...
upstream fpm {
server 1.1.1.1:9001;
server 2.2.2.2:9001;
}

map $uri $back {
default "fpm";
~*"/some/path/(?<key>^\d{2})$(.+)$" server$key\.domain\.tld;

}
...
...
server {
...
location / {
root /some/path;
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php?$args last;
break;
}

location ~ \.php$ {
include fastcgi_params;
root /some/path;
fastcgi_pass $back;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

epoll_wait() reported that client prematurely closed connection (1 reply)

$
0
0
Здравствуйте.
При увеличении количества запросов с клиента на nginx в error.log отображаются сообщения:

epoll_wait() reported that client prematurely closed connection, so upstream connection is closed too while sending request to upstream,
epoll_wait() reported that client prematurely closed connection, so upstream connection is closed too (32: Broken pipe) while reading upstream

Передача осуществляется png файлов размером от 120-80000 байт.

Основные настройки:

worker_processes 8;
events {
worker_connections 25000;
use epoll;
}
keepalive_timeout 45 45;
keepalive_requests 100;

proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;

client_max_body_size 1m;
client_body_buffer_size 128k;
client_body_timeout 45;
send_timeout 45;

Пытался решить установкой параметра proxy_ignore_client_abort on, однако, к моему удивлению, не помогло...

Подскажите, пожалуйста, как можно устранить данную проблему. Спасибо.
(используется кластер проксируемых серверов, но добавить нету возможности;увеличить timeout со стороны клиентского js-приложения также нельзя).

ssi_etag (2 replies)

$
0
0
В документации не нашел, описания как включить ревалидацию по ETag, для модуля SSI, аналог SSIETag в Apache .
В Nginx, ssi_etag уже есть, или пока что в разработке?

Загадочные симптомы при неправильных правах (8 replies)

$
0
0
Приветствую. Столкнулся со следующей странной проблемой:

Есть домашний веб-сервер на gentoo, на nginx + php-fpm. Сделал к нему скрипт для автоматического создания заготовки сайта(создаются конфиги для nginx и fpm, домашняя папка с дефолтным index.php и т.п.).

После размещения контента в созданной скриптом директории и подключения базы, обнаружил странную проблему. Сайт открывается некорректно, некоторые css, картинки и html-файлы не отдаются nginx'ом с причиной "access denied". Проблема не устранилась даже когда для отладки на весь контент было проставлено разрешение 777.

Решилось в итоге установкой владельца содержимого сайта в пользователь:вебсервер, вместо пользователь:пользователь, как было изначально.

Вопросов, собственно, два. Почему работало наполовину? Я бы понял, если бы не работало совсем, но чтобы так... И почему не помогла установка прав в 777? По идее же она даёт полные права любому? Могу только предположить, что логика прав nginx несколько отлична от логики самой ОС. Хотелось бы узнать подробности.

http-хедеры на несколько строчек (баг ?) (6 replies)

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

есть пример запроса

=================<начало>================
POST / HTTP/1.1
AS2-From: 8xxxxx
AS2-To: 4xxxxxx
AS2-Version: 1.1
Message-ID: <2b580a6e-6713-451d-821d-92a45448a39c>
MIME-Version: 1.0
Subject: MDN response from Edicom AS2/AS4 Java Server
Recipient-Address: http://xxx.xxx.ru
Content-Type: multipart/signed;
protocol="application/pkcs7-signature"; micalg=sha1;
boundary="----=_Part_1083146_929576324.1411455894713"
Content-Length: 3115
Host: xxx.xxx.ru
Connection: Keep-Alive
User-Agent: edicom AS2 Server

------=_Part_1083146_929576324.1411455894713
Content-Type: multipart/report; Report-Type=disposition-notification;
.boundary="----=_Part_1083144_1856859678.1411455894692"

------=_Part_1083144_1856859678.1411455894692
Content-Type: Text/Plain
Content-Transfer-Encoding: 8bit

MDN for -
MessageID : <2b580a6e-6713-451d-821d-92a45448a39c>
From : 4xxxxx
To : 8xxxxx
Subject : Communication with xxx.xxx.AS2
Received on : 23/09/2014 09:04:54
Status : Processed
Coment : This is not a guarantee that the message has
been completely processed or understood by
Edicom AS2/AS4 Java Server.
=================<конец>=====================


при проксировании запроса nginx "отрывает" значение boundary (оно идет
на отдельной строке), я поизучал RFC, не вижу явных противоречий,
почему бы нельзя было так делать.


скажите, это баг ? или нельзя хедер разносить на разные строки ?



Илья Шипицин
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

proxy_cache_purge Или каким способом лучше почистить одну запись в кеше (no replies)

$
0
0
На форуме и в сети много обсуждений на тему как почистить одну конкретную запись в кэше.

Есть как я вычитал официальный путь - использовать proxy_cache_purge

Но тут ограничение - опция доступна только в платном продукте.

Есть иной вариант, попросту удалить ненужный файл из директории где хранятся все записи.

Хочется разобраться раз и навсегда в этой ситуации...

Вопрос экспертам - насколько вариант с жестким удалением файла из кэша кривой?

PS: Я бы попробовал коммерческий продукт - но ради одной этой фичи выкладыть 1350$ пока не готов

Re: proxy cache purge Или каким способом лучше почистить одну запись в кеше (2 replies)

$
0
0
On Wednesday 24 September 2014 16:12:47 Dimka wrote:
[..]
> Хочется разобраться раз и навсегда в этой ситуации...
>
> Вопрос экспертам - насколько вариант с жестким удалением файла из кэша
> кривой?

Удаление файлов кэша вручную не затрагивает информации о состоянии кэша,
хранящейся в разделяемой памяти. И до тех пор, пока к файлу не произойдет
очередного обращения, nginx будет считать, что он присутствует и из-за этого,
как минимум, неверно рассчитывать объем занимаемого пространства на диске.

--
Валентин Бартенев
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: proxy cache purge Или каким способом лучше почистить одну запись в кеше (no replies)

$
0
0
25.09.2014 00:12, Dimka пишет:
> На форуме и в сети много обсуждений на тему как почистить одну конкретную
> запись в кэше.

> Есть иной вариант, попросту удалить ненужный файл из директории где хранятся
> все записи.

> Вопрос экспертам - насколько вариант с жестким удалением файла из кэша
> кривой?

Доброй ночи, Dimka!

Это вполне рабочий вариант - в нашем вьетнамскои поиске http://wada.vn/
мы первое время именно так кешировали XML'ки с результатами вычисления
поисковых запросов.

Директиву "open_file_cache" выставили в "off" - и замечательно удаляли
некоторые ответы прямо из каталога кеша (скриптом по крону вычищались
наполные\неверные ответы).

Успешно дожили до 600 запросов в секунду - когда был запущен более умный
WebDAV-кеш.



--
Best regards,
Andrey Kopeyko <andrey@kopeyko.ru>

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

map (no replies)

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

Не совсем понятна документация по директиве map:

http://nginx.org/en/docs/http/ngx_http_map_module.html

Там в качестве примера приводится использование заголовка $http_host
но в этом списке рассылки неоднократно говорили о том, что сам nginx
иногда игнорирует поле заголовка Host: (значение переменной $http_host)
и если придет запрос

GET http://example.com/top-secret-file.pdf
Host: example.org

- он будет отдавать файл с хоста example.com,
не смотря на то, что в переменной $http_host
будет записано другое значение, example.org

============================================

Разве не лучше будет в этом примере и вообще всегда
в документации использовать только переменную $host ?

В каких случаях в nginx может быть полезно/необходимо
использовать значение из переменной $http_host а не $host?

--
Best regards,
Gena

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

подвержен ли nginx уязвимости ShellShock? (1 reply)

$
0
0
Несколько по-ламерски сформулировал вопрос, но все равно очень интересует, стоит опасаться за безопасность своих серверов или nginx не взаимодействует с шелом?

Отсутствует ETAG, nginx-1.6.2 (2 replies)

$
0
0
Нет etag в заголовке (nginx-1.6.2)


Пример из конфига

location ~ "^/start/([0-9a-f]{32}).js$" {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $http_host;

etag on;

limit_req zone=r_unified burst=5;

# Cache. Temporary stop while development
log_not_found off;
proxy_cache_valid 4M;
proxy_cache c_unified_js;
expires max;
}

По логике должен быть - а по сути нет :(

Запрос на файл javascript передаётся в томкат http://127.0.0.1:8080, после кешируется, при повторном обращении выдаётся из кеша, но etag так и не присутствует...


Response headers:
Cache-Control:max-age=315360000
Connection:keep-alive
Content-Type:application/javascript;charset=ISO-8859-1
Date:Mon, 29 Sep 2014 13:56:45 GMT
Expires:Thu, 31 Dec 2037 23:55:55 GMT
Server:nginx
Transfer-Encoding:chunked



Может tomcat ковырять недо или что-то в nginx?

nginx правильный редирект на / (no replies)

$
0
0
Поскольук RweriteCond не может проверить на 404, до редиректа можно только в nginx правило нужно переписать под nginx

Требуется сделать редирект на слеш но хитрый.
RewriteCond ЕСЛИ НЕ 400
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [R=301]


И того.
редирект должен сработать если
1. страница не отдает 400 ( посколкьу иначе отдаст 301+400)
2. если урл НЕ заканчивается .html|php|txt и тд посколкуь слеш после расширения глупо.
3 если урл НЕ содержит слеш в конце ( тобишь уже не требуется)
То седлать редирект со всех урлов на урлы со слешем вконце.



index.html - не редиректит поскольку заканчивается расширение м
index.php/aaa/aaa/ - не редиректит посколку слеш вконце
index.php/?=ID2333s правило не затрагивает гет запросы
404 правило неработает посколкьу 404 в редиректе не нуждается.

nginx-1.7.6 (no replies)

$
0
0
Изменения в nginx 1.7.6 30.09.2014

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

*) Добавление: в директивах limit_conn_zone и limit_req_zone теперь
можно использовать комбинации нескольких переменных.

*) Исправление: при повторной отправке FastCGI-запроса на бэкенд тело
запроса могло передаваться неправильно.

*) Исправление: в логгировании в syslog.


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

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

Модуль ngx_http_mp4_module не переставляет moov-атом (2 replies)

$
0
0
После замены стороннего модуля nginx_mod_h264_streaming на стандартный
with-http_mp4_module обнаружилась проблема с раздачей mp4 видео файлов для
псевдостриминга - сторонний модуль делал перестановку moov-атома в начало
файла, стандартный отдает файл в неизменном виде (проверяем с помощью
qtfaststart -l file.mp4).
В документации сказано что стандартный модуль должен это делать с оговоркой
что это создает дополнительную нагрузку:
> До начала воспроизведения плееру необходимо прочитать метаданные. Для
этого он отсылает специальный запрос с аргументом start=0. Многие
кодирующие программы добавляют метаданные в конец файла. Это неоптимально
для псевдо-стриминга, поскольку плееру потребуется загрузить файл целиком
прежде чем начать воспроизведение. Если метаданные находятся в начале
файла, nginx’у достаточно начать отправлять в ответ содержимое файла. Если
же метаданные находятся в конце файла, потребуется прочитать весь файл и
подготовить новый поток, в котором метаданные предшествуют медийным данным.
Это требует дополнительного процессорного времени, памяти и дискового
ввода/вывода, поэтому лучше заранее подготовить исходный файл для
псевдо-стриминга, нежели делать это для каждого запроса.
В нашем хранилище видео лежит с moov-атомом в конце файла и мы понимаем что
предварительная подготовка решит проблему, но при нашем объеме видео
подготовка и проверка займет очень много времени.
Хотелось бы понимать почему модуль ngx_http_mp4_module не выполняет функцию
заявленную в документации и исходя из этого принимать решение о дальнейших
действиях.
Проблема наблюдается на двух версиях (хотя набор модулей практически
одинаковый):

nginx 1.7.3
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
TLS SNI support enabled
configure arguments: --add-module=./../echo-nginx-module-0.47
--add-module=./../encrypted-session-nginx-module-master
--add-module=./../ngx_devel_kit/ --add-module=./../nginx-upload-module-2.2
--add-module=./../lua-nginx-module
--add-module=./../redis2-nginx-module-0.11
--add-module=./../set-misc-nginx-module-0.24 --add-module=./../nginx-ctpp
--add-module=./../ngx_http_substitutions_filter_module --prefix=/etc/nginx/
--sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx
--with-http_ssl_module --with-http_realip_module
--with-http_addition_module --with-http_sub_module --with-http_mp4_module
--with-http_flv_module --with-http_gunzip_module
--with-http_gzip_static_module --with-http_secure_link_module
--with-http_stub_status_module --with-http_geoip_module
--with-http_image_filter_module --with-http_xslt_module --with-md5=YES
--with-file-aio --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
-fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64
-mtune=generic'

nginx 1.6.0
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
TLS SNI support enabled
configure arguments: --add-module=./../echo-nginx-module-0.47
--add-module=./../encrypted-session-nginx-module-master
--add-module=./../ngx_devel_kit/ --add-module=./../nginx-upload-module-2.2
--add-module=./../lua-nginx-module
--add-module=./../redis2-nginx-module-0.11
--add-module=./../nginx_upstream_hash-0.3.2
--add-module=./../set-misc-nginx-module-0.24 --add-module=./../nginx-ctpp
--prefix=/etc/nginx/ --sbin-path=/usr/sbin/nginx
--conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx
--with-rtsig_module --with-select_module --with-poll_module --with-md5=YES
--with-http_addition_module --with-http_ssl_module
--with-http_realip_module --with-http_geoip_module
--with-http_addition_module --with-http_sub_module --with-http_mp4_module
--with-http_flv_module --with-http_image_filter_module
--with-http_gzip_static_module --with-http_secure_link_module
--with-http_stub_status_module --with-file-aio --with-http_xslt_module
--with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'


Это предыдующая версия со сторонним модулем в которой перестановка
moov-атома работала:
nginx/1.4.7
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
TLS SNI support enabled
configure arguments: --add-module=./../mod_strip
--add-module=./../echo-nginx-module-0.47
--add-module=./../nginx_syslog_patch
--add-module=./../encrypted-session-nginx-module-master
--add-module=./../nginx_mod_h264_streaming-2.2.7
--add-module=./../nginx_upstream_hash-0.3.2
--add-module=./../ngx_devel_kit/ --add-module=./../ngx_http_mp4frag/
--add-module=./../nginx-upload-module-2.2
--add-module=./../lua-nginx-module
--add-module=./../redis2-nginx-module-0.10
--add-module=./../set-misc-nginx-module-0.22rc8
--add-module=./../nginx-ctpp --add-module=./../xss-nginx
--prefix=/etc/nginx/ --sbin-path=/usr/sbin/nginx
--conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx
--with-rtsig_module --with-select_module --with-poll_module --with-md5=YES
--with-http_addition_module --with-http_ssl_module
--with-http_realip_module --with-http_geoip_module
--with-http_addition_module --with-http_sub_module --with-http_dav_module
--with-http_flv_module --with-http_image_filter_module
--with-http_gzip_static_module --with-http_random_index_module
--with-http_secure_link_module --with-http_stub_status_module --with-mail
--with-mail_ssl_module --with-file-aio --with-ipv6 --with-http_xslt_module
--with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'

В соответствующем location включены только limit_rate и mp4 опции.

--

Regards,
Alexey Schurov
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Автоматические поддомены и реврайты (no replies)

$
0
0
Доброго времени суток.

Столкнулся с такой проблемой.
Есть основной домен project.local. Есть несколько служебных поддоменов: m.project.local, media.project.local, login.project.local. Для каждого из них прописаны свои реврайры. Сейчас пилим автоматическое создание поддоменов для профилей пользователей и как вот тут и появилась проблема.

Запросы вида m.project.local, media.project.local, login.project.local обрабатываются как нужно. Запрос anysubdomain.project.local тоже отрабатывает как надо и реврайтит на project.local/Script3.aspx?ArgURL=anysubdomain.
Как при этом заставить Nginx корректно реврайтить запрос типа anysubdomain.project.local/name-i200 на project.local/Script1.aspx?ArgID=200&ArgURL=name

Конфиг:

server {
listen 192.168.2.6:8080 default_server;
server_name ~(www|m|login).project.local project.local;
include /etc/nginx/custom.conf.d/headers.conf;
include /etc/nginx/custom.conf.d/rewrite.conf;
location / {
proxy_pass http://webfarm;
}
}
server {
listen 192.168.2.6:8080;
server_name media.project.local;
include /etc/nginx/custom.conf.d/swift-rewrite.conf;
location /{
proxy_pass http://swift;
}
}
server {
listen 192.168.2.6:8080;
server_name ~^(?<subdom>.+)\.project\.local$;
rewrite /([a-z0-9-]+)-i([0-9]+)(/?)$ /Script1.aspx?ArgID=$2&ArgURL=$1 last;
rewrite ^ http://www.vorotila.local/Script3.aspx?ArgURL=$subdom last;
location / {
proxy_pass http://webfarm;
}
}

Заранее спасибо за подсказки.

nginx и /etc/hosts (6 replies)

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

Мы тут заметили, что при старте nginx, он довольно часто перечитывает
/etc/hosts и /etc/resolv.conf. Можно ли как-то узнать зачем. Причем ладно
бы один раз, а то ведь раз 5, по ощущениям.

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

Проверка всех header'ов (1 reply)

$
0
0
Я тут надумал избавиться от товарищей, проверяющих на ShellShock и выдавать им
444 (евпочя).
Но беда в том, что кодовая фраза "() {" может содержаться не только в
Referrer, но и практически в любом хидере.

Перечислять все в if-блоке — идея не лучшая. Но отчего-то ничего умнее мне в
голову не приходет (не считая написания кастомного модуля).

Не могли бы вы подкинуть идей? :)


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

Помогите решить задачу (1 reply)

$
0
0
Есть 2 сервера nginx. Как с сервера 1 пропискать конфигурационный файл так чтобы был доступ к www.1, www2,www3
[url=http://rghost.ru/58318117.view][img]http://rghost.ru/58318117/thumb.png[/img][/url]

Минимальное время кеширования (4 replies)

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

Некий php-скрипт отдает в ответ на запрос время в секундах, оставшееся до
события. В связи с сотнями запросов в секунду к скрипту, возникла
необходимость кешировать ответ.

Создал кеш
proxy_cache_path /tmp/an_cache levels=1 keys_zone=pagecache:1m max_size=1m;

Прописал в location
proxy_cache pagecache;
proxy_cache_valid 200 1s;
proxy_ignore_headers Expires Cache-Control;
if ($arg_callback) {
set $callback callback;
}
proxy_cache_key $scheme$proxy_host$uri$arg_widget$callback;
proxy_pass_header "X-Accel-Expires";

В скрипте указываю:
header("X-Accel-Expires: 1");

Однако при монотонном F5 страницы скрипта теперь счетчик тикает не каждую
секунду, как и должен был бы, а раз в 2. Я понимаю, что кеш не совпадает с
моментом перехода между секундами и привносит погрешность в рамках секунды,
однако, почему кешированная страница живет дольше указанной 1 секунды?
Хотелось бы это исправить.

Спасибо.
_______________________________________________
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>