ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Last-modified фича?



$date_gmt, насколько я понимаю, не существует в этот момент.
это же переменная ngx_http_ssi_module
а вот почему падает воркер непонятно.

Program terminated with signal 11, Segmentation fault.
#0 ngx_http_ssi_date_gmt_local_variable (r=0x80c2a90, v=0x80c33d4, gmt=1) at src/http/modules/ngx_http_ssi_filter_module.c:2583
2583        if (ctx->timefmt.len == sizeof("%s") - 1
(gdb) bt
#0 ngx_http_ssi_date_gmt_local_variable (r=0x80c2a90, v=0x80c33d4, gmt=1) at src/http/modules/ngx_http_ssi_filter_module.c:2583 #1 0x08074c99 in ngx_http_get_indexed_variable (r=0x80c2a90, index=7) at src/http/ngx_http_variables.c:375 #2 0x08077115 in ngx_http_script_copy_var_len_code (e=0x7) at src/ http/ngx_http_script.c:453 #3 0x080762b0 in ngx_http_script_run (r=0x80c2a90, value=0xbfd0c7e4, code_lengths=0x80bca6c, len=0, code_values=0x80bca9c) at src/http/ ngx_http_script.c:331 #4 0x0807f3a9 in ngx_http_headers_filter (r=0x80c2a90) at src/http/ modules/ngx_http_headers_filter_module.c:166 #5 0x0807f46c in ngx_http_not_modified_header_filter (r=0x1b) at src/ http/modules/ngx_http_not_modified_filter_module.c:60 #6 0x08066fa6 in ngx_http_send_header (r=0x80c3318) at src/http/ ngx_http_core_module.c:1207 #7 0x08088545 in ngx_http_autoindex_handler (r=0x80c2a90) at src/ http/modules/ngx_http_autoindex_module.c:236 #8 0x0806a99b in ngx_http_core_content_phase (r=0x80c2a90, ph=0x80de424) at src/http/ngx_http_core_module.c:873 #9 0x08066cc5 in ngx_http_core_run_phases (r=0x80c2a90) at src/http/ ngx_http_core_module.c:592 #10 0x08066de8 in ngx_http_handler (r=0x7) at src/http/ ngx_http_core_module.c:575 #11 0x0806ce0f in ngx_http_process_request (r=0x80c2a90) at src/http/ ngx_http_request.c:1448 #12 0x0806f224 in ngx_http_process_request_headers (rev=0x80f5bdc) at src/http/ngx_http_request.c:934 #13 0x0806f6de in ngx_http_process_request_line (rev=0x80f5bdc) at src/http/ngx_http_request.c:742 #14 0x0806c548 in ngx_http_init_request (rev=0x80f5bdc) at src/http/ ngx_http_request.c:455 #15 0x0806cf64 in ngx_http_init_connection (c=0x80e1c28) at src/http/ ngx_http_request.c:199 #16 0x0805afad in ngx_event_accept (ev=0x80f5b74) at src/event/ ngx_event_accept.c:251 #17 0x08062f2f in ngx_epoll_process_events (cycle=0x80b0ad8, timer=4294967295, flags=<value optimized out>) at src/event/modules/ ngx_epoll_module.c:521 #18 0x08059ca5 in ngx_process_events_and_timers (cycle=0x80b0ad8) at src/event/ngx_event.c:245 #19 0x080606cd in ngx_worker_process_cycle (cycle=0x80b0ad8, data=0x0) at src/os/unix/ngx_process_cycle.c:760 #20 0x0805efd1 in ngx_spawn_process (cycle=0x80b0ad8, proc=0x806003b <ngx_worker_process_cycle>, data=0x0, name=0x8096f4f "worker process", respawn=0)
    at src/os/unix/ngx_process.c:187
#21 0x0806106c in ngx_master_process_cycle (cycle=0x80b0ad8) at src/ os/unix/ngx_process_cycle.c:561
#22 0x0804b30c in main (argc=1, argv=Cannot access memory at address 0xb
) at src/core/nginx.c:353
(gdb)

On 28.09.2007, at 21:11, Oleg Motienko wrote:

Кстати, попробовал протестировать для такой конфигурации

location / {
            ssi  on;
            ssi_silent_errors on;
            proxy_pass http://127.0.0.3:80;
            proxy_set_header   Host             $host;
            proxy_set_header  X-Real-IP  $remote_addr;
            sub_filter  </body> '<!--#include virtual="/banners.html"
--></body>';
            sub_filter_once   off;
#           add_header Last-Modified $date_gmt;
            expires     1h;
}

Если включаю строчку add_header, то получаю пустой ответ, даже без заголовков.
В логе вижу:

2007/09/28 21:10:07 [notice] 21240#0: start worker processes
2007/09/28 21:10:07 [notice] 21240#0: start worker process 21241
2007/09/28 21:10:13 [notice] 21240#0: signal 20 (SIGCHLD) received
2007/09/28 21:10:13 [alert] 21240#0: worker process 21241 exited on signal 11
2007/09/28 21:10:13 [notice] 21240#0: start worker process 21278
2007/09/28 21:10:14 [notice] 21240#0: signal 20 (SIGCHLD) received
2007/09/28 21:10:14 [alert] 21240#0: worker process 21278 exited on signal 11
2007/09/28 21:10:14 [notice] 21240#0: start worker process 21279
2007/09/28 21:10:16 [notice] 21240#0: signal 20 (SIGCHLD) received
2007/09/28 21:10:16 [alert] 21240#0: worker process 21279 exited on signal 11
2007/09/28 21:10:16 [notice] 21240#0: start worker process 21280




On 9/28/07, proforg <proforg@xxxxxxxxxxxx> wrote:
On 28.09.2007, at 19:05, Gena Makhomed wrote:

Здравствуйте, Evgeny!

Friday, September 28, 2007, 5:26:30 PM, you wrote:

Довольно часто требуется вставить
асинхронно сгенерированный кусок
в страницу (чаще всего
закэшированный) с помощью ssi.
Терять last-modified при этом не хотелось
бы.

Last-modified чего должен остаться ?
Страницы или вставляемого куска (ов) ?
Или самого нового из них ?

ES> Самого нового, конечно.

модуль ngx_http_ssi имеет встроенную
переменную $date_gmt
модуль ngx_http_headers имеет директиву add_header

разве add_header Last-Modified: $date_gmt;
(или через промежуточный set) не будет
работать?

PS http://sysoev.ru/nginx/docs/

И что это даст ? Текущщее время  как Last-
modified ?
Зачем ???

Алексей Бещёков
proforg@xxxxxxxxxxxx
+7 495 7853149







--
Regards,
Oleg



Алексей Бещёков
proforg@xxxxxxxxxxxx
+7 495 7853149



Attachment: smime.p7s
Description: S/MIME cryptographic signature



 




Copyright © Lexa Software, 1996-2009.