Re: Каким образом можно заставить nginx возвращать заголовки Last-Modified и If-Modified-Since?
greenh
greenh at gmail.com
Sun Nov 9 21:14:10 UTC 2014
Если я все правильно понял, то указанные заголовки возвращаются исходя из
даты изменения файла. Поскольку пхп возвращает динамический контент, то
такой информации у nginx нет и быть не может, и соответственно,
ответственность за заголовки лежит на бекенде
09.11.2014 20:33 пользователь "Sferg" <nginx-forum at nginx.us> написал:
> Здравствуйте, господа. Установлена связка nginx + php-fpm. При обращении к
> статичному контенту (html, jpg и т.д.) заголовок Last-Modified возвращается
> нормально, но не возвращается If-Modified-Since. Если же обращаюсь к
> динамичному контенту (php), то ни один из этих заголовков не возвращается.
> Подскажите, пожалуйста, каким образом можно заставить nginx возвращать
> заголовки Last-Modified и If-Modified-Since? В качестве средства проверки
> использую сайт http://last-modified.com/ru/if-modified-since.html.
>
> Вот мой конфиг nginx:
>
> user www-data www-data;
> worker_processes 2;
> worker_cpu_affinity 0101 1010;
> worker_rlimit_nofile 8192;
> worker_priority -5;
> timer_resolution 100ms;
> error_log /var/log/nginx/error.log warn;
> pid /var/run/nginx.pid;
>
> events {
> worker_connections 2048;
> multi_accept on;
> accept_mutex on;
> use epoll;
> }
>
> http {
> include mime.types;
> default_type application/octet-stream;
> index index.html index.htm index.php;
>
> upstream example.com {
> server unix:/var/run/php5-fpm_example.com.sock max_fails=3
> fail_timeout=3s;
> }
>
> server {
> listen *:80;
> server_name example.com;
> root /home/example.com/www;
> access_log /var/log/nginx/access.log;
>
> location ~ ^.+\.php(?:/.*)?$ {
> fastcgi_pass example.com;
> include fastcgi_params;
> fastcgi_split_path_info ^(.+?\.php)(/.*)$;
> if ($uri ~ ^(?<script_name>.+\.php)?(?<path_info>/.*)?$) {}
>
> set $path_info_final $path_info;
> if ($fastcgi_path_info != '') {
> set $path_info_final $fastcgi_path_info;
> }
>
> fastcgi_param PATH_INFO $path_info_final;
>
> set $script_name_final '/index.php';
> if ($script_name != '') {
> set $script_name_final $script_name;
> }
>
> fastcgi_param SCRIPT_FILENAME $document_root$script_name_final;
>
> if (!-e $document_root$script_name_final) {
> return 404;
> }
>
> fastcgi_param SCRIPT_NAME $script_name_final;
>
> set $request_uri_final $request_uri;
> if ($path_info_final != '') {
> set $request_uri_final $path_info_final$is_args$args;
> }
>
> fastcgi_param REQUEST_URI $request_uri_final;
> fastcgi_index index.php;
> fastcgi_next_upstream error timeout;
> fastcgi_keep_conn on;
> fastcgi_hide_header "X-Powered-By";
> }
>
> location / {
> index index.html index.htm index.php;
> try_files $uri $uri/ /index.html /index.htm /index.php;
> }
>
> location /blog {
> try_files $uri $uri/ /blog/index.php?q=$uri&$args;
> }
>
> location ~ \.(htc|js|js2|js3|js4)$ {
> expires 31536000s;
> add_header Pragma "public";
> add_header Cache-Control "max-age=31536000, public,
> must-revalidate, proxy-revalidate";
> }
>
> location ~ \.(html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml)$ {
> expires 3600s;
> add_header Pragma "public";
> add_header Cache-Control "max-age=3600, public,
> must-revalidate,
> proxy-revalidate";
> }
>
> location ~
>
> \.(asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|json|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|wav|wma|wri|xla|xls|xlsx|xlt|xlw|zip)$
> {
> expires 31536000s;
> add_header Pragma "public";
> add_header Cache-Control "max-age=31536000, public,
> must-revalidate, proxy-revalidate";
> }
>
> }
>
> }
>
> Posted at Nginx Forum:
> http://forum.nginx.org/read.php?21,254706,254706#msg-254706
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20141109/923f048e/attachment.html>
Подробная информация о списке рассылки nginx-ru