Re: Last-Modified от PHP fastcgi не приходит клиенту

Igor Sysoev igor на sysoev.ru
Пн Авг 2 13:41:11 MSD 2010


On Mon, Aug 02, 2010 at 05:29:02AM -0400, error500 wrote:

> Бьюсь головой апстол уже не превый день
> (сначала грешил на пхп и сложную
> структуру приложения - но вот написал
> тупо скрипт который шлёт Last-Modified
> заголовок )
> 
> Дебаг лог:
> 
> ...
> 
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi record length: 495
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header:
> "X-Powered-By: PHP/5.3.2-1ubuntu4.2"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header:
> "Set-Cookie: PHPSESSID=07471fd9175dae329c6242db5bb7ea56; path=/"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header: "Expires:
> Mon, 02 Aug 2010 11:49:50 GMT"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header:
> "Cache-Control: public, max-age=10800"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header:
> "Last-Modified: Mon, 02 Aug 2010 07:56:56 GMT"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header:
> "Content-type: text/html"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi parser: 1
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http fastcgi header done
> 2010/08/02 12:49:50 [debug] 18330#0: *1 charset: "" > "utf-8"
> 2010/08/02 12:49:50 [debug] 18330#0: *1 HTTP/1.1 200 OK
> Server: nginx/0.8.42
> Date: Mon, 02 Aug 2010 08:49:50 GMT
> Content-Type: text/html; charset=utf-8
> Transfer-Encoding: chunked
> Connection: keep-alive
> X-Powered-By: PHP/5.3.2-1ubuntu4.2
> Set-Cookie: PHPSESSID=07471fd9175dae329c6242db5bb7ea56; path=/
> Expires: Mon, 02 Aug 2010 11:49:50 GMT
> Cache-Control: public, max-age=10800
> 
> 2010/08/02 12:49:50 [debug] 18330#0: *1 write new buf t:1 f:0
> 0000000001317E50, pos 0000000001317E50, size: 348 file: 0, size: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http write filter: l:0 f:0
> s:348
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http cacheable: 0
> 2010/08/02 12:49:50 [debug] 18330#0: *1 http upstream process upstream
> 2010/08/02 12:49:50 [debug] 18330#0: *1 pipe read upstream: 1
> 2010/08/02 12:49:50 [debug] 18330#0: *1 pipe preread: 261
> 2010/08/02 12:49:50 [debug] 18330#0: *1 readv: 1:3576
> 2010/08/02 12:49:50 [debug] 18330#0: *1 pipe recv chain: 0
> ....
> 
> Конфиг:
> 
> 
> server {
>    listen              80;
> 
>    server_name         test;
>    charset             utf-8;
>    gzip                off;
>    ssi                 on;
> 
>    error_log          nginx.error.log debug;
>    access_log        nginx.access.log;
>     
>     
>    rewrite ^/sitemap(.*)\.xml /sitemap.php last;
>    rewrite /robots.txt /robots.php last;
> 
>    location    @phpfcgi {
> 	if_modified_since off;
> 
> 	fastcgi_connect_timeout		75;
> 	fastcgi_read_timeout		360;
> 	fastcgi_send_timeout		360;
>         fastcgi_pass			127.0.0.1:8080; #unix:/tmp/phpfcgi.sock;
>         include			/etc/nginx/fastcgi_params;
> 	fastcgi_pass_header		Last-Modified;
>         fastcgi_param			SCRIPT_FILENAME
> /home/error500/www/release_3/var/www/index.php;
> 
>     	}
> 
>    location ~ \.(php|php/.*)$ {
> 	if_modified_since off;
> 
> 	fastcgi_index			index.php;
> 	fastcgi_connect_timeout		75;
> 	fastcgi_read_timeout		240;
> 	fastcgi_send_timeout		240;
>         fastcgi_pass			127.0.0.1:8080; #unix:/tmp/phpfcgi.sock;
> 	fastcgi_pass_header             Last-Modified;
>         include         		/etc/nginx/fastcgi_params;
>         fastcgi_param   		SCRIPT_FILENAME
> /home/error500/www/release_3/var/www$fastcgi_script_name;
>     	}
> 
>     location / {
>         error_page      404 =200 @phpfcgi;
>         root    	/home/error500/www/release_3/var/www;
>         index   	index.shtml index.html index.htm index.php;
>     	}
> }
> 
> Что не так делаю?
> Посылал заголовок с параметром false (
> header('xxxxxxxx', false) ) тогда Last-Modified но не мой а
> тот что инжинкс обнаружил у самого РНР
> файла.

Потому что "ssi on".


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru