Welcome! Log In Create A New Profile

Advanced

опаздывание с возвращением обновлений css/javascript файлов

September 13, 2011 10:50AM
Привет!

Проблема следующая, которая возникает периодически, без очевидной связи. Я обновляю статический CSS или JS файл по FTP. Делаю рефреш в браузере. Браузер "не видит" обновления, потому что сервер возвращает 304 Not Modified. Через некоторое время (от секунды до минуты и даже больше), после нескольких рефрешев, наконец возвращается 200 OK и код обновляется. Использовались браузеры: Safari 5.1 (Mac OS X), Firefox 6.0.2 (Win 7), Chrome 13.0.782.220 m (Win 7)

Пробовал выносить css/javascript из gzip_types, но это не изменило ситуации. Откатывался на nginx/1.0.5, но это не помогло. В общем, обновления видятся через какое-то неопределённое время, но не сразу.

Дорогие коллеги, с чем это может быть связано и как решить данную проблему?

nginx -V :

nginx: nginx version: nginx/1.1.2
nginx: TLS SNI support enabled
nginx: configure arguments: --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error_log --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-cc-opt=-I/usr/include --with-ld-opt=-L/usr/lib --http-log-path=/var/log/nginx/access_log --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --http-scgi-temp-path=/var/tmp/nginx/scgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --with-file-aio --with-aio_module --with-pcre --without-http_auth_basic_module --without-http_geo_module --without-http_limit_req_module --without-http_limit_zone_module --without-http_memcached_module --without-http_referer_module --without-http_scgi_module --without-http_ssi_module --without-http_split_clients_module --without-http_userid_module --without-http_uwsgi_module --with-http_flv_module --with-http_geoip_module --with-http_stub_status_module --with-http_realip_module --add-module=/var/tmp/portage/www-servers/nginx-1.1.2/work/masterzen-nginx-upload-progress-module-8b55a34 --with-http_ssl_module --without-mail_imap_module --without-mail_pop3_module --without-mail_smtp_module

nginx.conf:

user www www;
worker_processes 2;
worker_rlimit_nofile 10000;
#worker_cpu_affinity 0001 0010 0100 1000;

error_log /var/log/nginx/error_log warn;

events {
worker_connections 128;
use epoll;
# debug_connection 217.24.65.183;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

log_format main
'$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" '
'"$gzip_ratio" $request_time';

client_header_timeout 10m;
client_body_timeout 10m;
send_timeout 10m;

client_max_body_size 700m;
connection_pool_size 256;
client_body_buffer_size 1024k;
client_header_buffer_size 8k;
large_client_header_buffers 4 8k;
request_pool_size 4k;

proxy_buffering on;
proxy_buffer_size 4k;
proxy_buffers 4096 4k;

open_file_cache max=2000 inactive=60s;
open_file_cache_valid 60;
open_log_file_cache max=1000 inactive=60s valid=1m;

geoip_country /usr/share/GeoIP/GeoIP.dat; # the country IP database
geoip_city /usr/share/GeoIP/GeoLiteCity.dat; # the city IP database

gzip on;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

output_buffers 1 32k;
postpone_output 1460;

aio on;
directio 512;
sendfile on;
tcp_nopush on;
tcp_nodelay on;

keepalive_timeout 75 20;
keepalive_disable msie6;

ignore_invalid_headers on;
server_name_in_redirect on;

fastcgi_pass_request_headers on;
fastcgi_intercept_errors on;
fastcgi_buffer_size 4k;
fastcgi_buffers 1024 4k;
fastcgi_read_timeout 300;
fastcgi_send_timeout 300;

index index.html;

upstream phpfarm {
server unix:/var/run/fastcgi/php-fpm-1.sock weight=100 max_fails=3 fai
server unix:/var/run/fastcgi/php-fpm-2.sock weight=100 max_fails=3 fai
server unix:/var/run/fastcgi/php-fpm-3.sock weight=100 max_fails=3 fai
}

# upload progress
upload_progress uploads 1m;
upload_progress_content_type "application/json";
upload_progress_json_output;

# virtual host configuration

# devel.testsite
server {
listen 80;
server_name devel.testsite;
client_max_body_size 1000m;

access_log /var/log/nginx/testsite.access_log main;
error_log /var/log/nginx/testsite.error_log warn;

root /opt/www/testsite;

location / {
index index.php;
}

# include common settings
include common.conf;

charset utf-8;

location /data {
deny all;
}

location = /uploads/progress {
report_uploads uploads;
}

# glue css/js files into a single file for faster loading
rewrite .*/(css|javascript)/[^,]+,.+ /glue.php last;

location ~ ^(?<script_filename>.+\.php)$ {
try_files $script_filename =404;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$script_filename;
fastcgi_pass phpfarm;
track_uploads uploads 30s;
}
}
Subject Author Posted

опаздывание с возвращением обновлений css/javascript файлов

locojohn September 13, 2011 10:50AM

Re: опаздывание с возвращением обновлений css/javascript файлов

locojohn September 13, 2011 10:54AM

Re: опаздывание с возвращением обновлений css/javascript файлов

Alexander Moskalenko September 13, 2011 10:56AM

Re: опаздывание с возвращением обновлений css/javascript файлов

kaa@berloga.ru September 13, 2011 11:06AM

Re: опаздывание с возвращением обновлений css/javascript файлов

locojohn September 13, 2011 11:22AM

Re: опаздывание с возвращением обновлений css/javascript файлов

Игорь Вавржин September 14, 2011 08:02AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 206
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready