annotate auto/feature @ 508:68c0ae0a4959 NGINX_0_7_66

nginx 0.7.66 *) Security: now nginx/Windows ignores default file stream name. Thanks to Jose Antonio Vazquez Gonzalez. *) Change: now the charset filter runs before the SSI filter. *) Change: now no message is written in an error log if a variable is not found by $r->variable() method. *) Change: now keepalive connections after POST requests are not disabled for MSIE 7.0+. Thanks to Adam Lounds. *) Feature: the "proxy_no_cache" and "fastcgi_no_cache" directives. *) Feature: now the "rewrite" directive does a redirect automatically if the $scheme variable is used. Thanks to Piotr Sikora. *) Feature: the "chunked_transfer_encoding" directive. *) Feature: the $geoip_city_continent_code, $geoip_latitude, and $geoip_longitude variables. Thanks to Arvind Sundararajan. *) Feature: now the ngx_http_image_filter_module deletes always EXIF and other application specific data if the data consume more than 5% of a JPEG file. *) Feature: now the "msie_padding" directive works for Chrome too. *) Workaround: now keepalive connections are disabled for Safari. Thanks to Joshua Sierles. *) Bugfix: nginx ignored the "private" and "no-store" values in the "Cache-Control" backend response header line. *) Bugfix: an "&" character was not escaped when it was copied in arguments part in a rewrite rule. *) Bugfix: nginx might be terminated abnormally while a signal processing or if the directive "timer_resolution" was used on platforms which do not support kqueue or eventport notification methods. Thanks to George Xie and Maxim Dounin. *) Bugfix: if temporary files and permanent storage area resided at different file systems, then permanent file modification times were incorrect. Thanks to Maxim Dounin. *) Bugfix: ngx_http_memcached_module might issue the error message "memcached sent invalid trailer". Thanks to Maxim Dounin. *) Bugfix: nginx could not built zlib-1.2.4 library using the library sources. Thanks to Maxim Dounin. *) Bugfix: values of the $query_string, $arg_..., etc. variables cached in main request were used by the SSI module in subrequests. *) Bugfix: nginx did not support HTTPS referrers. *) Bugfix: nginx/Windows might not find file if path in configuration was given in other character case; the bug had appeared in 0.7.65. *) Bugfix: the $date_local variable has an incorrect value, if the "%s" format was used. Thanks to Maxim Dounin. *) Bugfix: nginx did not support all ciphers and digests used in client certificates. Thanks to Innocenty Enikeew. *) Bugfix: if ssl_session_cache was not set or was set to "none", then during client certificate verify the error "session id context uninitialized" might occur; the bug had appeared in 0.7.1. *) Bugfix: OpenSSL-1.0.0 compatibility on 64-bit Linux. Thanks to Maxim Dounin. *) Bugfix: a geo range returned default value if the range included two or more /16 networks and did not begin at /16 network boundary. *) Bugfix: the $uid_got variable might not be used in the SSI and perl modules. *) Bugfix: a worker process hung if a FIFO file was requested. Thanks to Vicente Aguilar and Maxim Dounin. *) Bugfix: a variable value was repeatedly encoded after each an "echo" SSI-command output; the bug had appeared in 0.6.14. *) Bugfix: a "stub" parameter of an "include" SSI directive was not used, if empty response has 200 status code. *) Bugfix: a block used in a "stub" parameter of an "include" SSI directive was output with "text/plain" MIME type. *) Bugfix: if a proxied or FastCGI request was internally redirected to another proxied or FastCGI location, then a segmentation fault might occur in a worker process; the bug had appeared in 0.7.65. Thanks to Yichun Zhang. *) Bugfix: IMAP connections may hang until they timed out while talking to Zimbra server. Thanks to Alan Batie. *) Bugfix: nginx did not support chunked transfer encoding for 201 responses. Thanks to Julian Reich.
author Igor Sysoev <http://sysoev.ru>
date Mon, 07 Jun 2010 00:00:00 +0400
parents 34fb3a573548
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
1
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
3
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
4
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
5 echo $ngx_n "checking for $ngx_feature ...$ngx_c"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
6
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
7 cat << END >> $NGX_AUTOCONF_ERR
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
8
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
9 ----------------------------------------
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
10 checking for $ngx_feature
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
11
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
12 END
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
13
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
14 ngx_found=no
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
15
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
16 if test -n "$ngx_feature_name"; then
194
003bd800ec2a nginx 0.3.44
Igor Sysoev <http://sysoev.ru>
parents: 168
diff changeset
17 ngx_have_feature=`echo $ngx_feature_name \
003bd800ec2a nginx 0.3.44
Igor Sysoev <http://sysoev.ru>
parents: 168
diff changeset
18 | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
19 fi
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
20
258
6ae1357b7b7c nginx 0.4.14
Igor Sysoev <http://sysoev.ru>
parents: 236
diff changeset
21 if test -n "$ngx_feature_path"; then
392
34fb3a573548 nginx 0.7.8
Igor Sysoev <http://sysoev.ru>
parents: 270
diff changeset
22 for ngx_temp in $ngx_feature_path; do
34fb3a573548 nginx 0.7.8
Igor Sysoev <http://sysoev.ru>
parents: 270
diff changeset
23 ngx_feature_inc_path="$ngx_feature_inc_path -I $ngx_temp"
34fb3a573548 nginx 0.7.8
Igor Sysoev <http://sysoev.ru>
parents: 270
diff changeset
24 done
258
6ae1357b7b7c nginx 0.4.14
Igor Sysoev <http://sysoev.ru>
parents: 236
diff changeset
25 fi
6ae1357b7b7c nginx 0.4.14
Igor Sysoev <http://sysoev.ru>
parents: 236
diff changeset
26
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
27 cat << END > $NGX_AUTOTEST.c
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
28
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
29 #include <sys/types.h>
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
30 $NGX_INCLUDE_UNISTD_H
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
31 $ngx_feature_incs
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
32
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
33 int main() {
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
34 $ngx_feature_test;
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
35 return 0;
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
36 }
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
37
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
38 END
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
39
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
40
258
6ae1357b7b7c nginx 0.4.14
Igor Sysoev <http://sysoev.ru>
parents: 236
diff changeset
41 ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS $ngx_feature_inc_path \
508
68c0ae0a4959 nginx 0.7.66
Igor Sysoev <http://sysoev.ru>
parents: 392
diff changeset
42 -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_TEST_LD_OPT $ngx_feature_libs"
10
46833bd150cb nginx 0.1.5
Igor Sysoev <http://sysoev.ru>
parents: 4
diff changeset
43
258
6ae1357b7b7c nginx 0.4.14
Igor Sysoev <http://sysoev.ru>
parents: 236
diff changeset
44 ngx_feature_inc_path=
6ae1357b7b7c nginx 0.4.14
Igor Sysoev <http://sysoev.ru>
parents: 236
diff changeset
45
270
6eb1e38f0f1f nginx 0.5.5
Igor Sysoev <http://sysoev.ru>
parents: 258
diff changeset
46 eval "/bin/sh -c \"$ngx_test\" >> $NGX_AUTOCONF_ERR 2>&1"
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
47
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
48
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
49 if [ -x $NGX_AUTOTEST ]; then
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
50
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
51 case "$ngx_feature_run" in
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
52
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
53 yes)
236
c982febb7588 nginx 0.4.3
Igor Sysoev <http://sysoev.ru>
parents: 194
diff changeset
54 # /bin/sh is used to intercept "Killed" or "Abort trap" messages
c982febb7588 nginx 0.4.3
Igor Sysoev <http://sysoev.ru>
parents: 194
diff changeset
55 if /bin/sh -c $NGX_AUTOTEST >/dev/null 2>&1; then
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
56 echo " found"
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
57 ngx_found=yes
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
58
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
59 if test -n "$ngx_feature_name"; then
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
60 have=$ngx_have_feature . auto/have
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
61 fi
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
62
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
63 else
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
64 echo " found but is not working"
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
65 fi
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
66 ;;
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
67
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
68 bug)
236
c982febb7588 nginx 0.4.3
Igor Sysoev <http://sysoev.ru>
parents: 194
diff changeset
69 # /bin/sh is used to intercept "Killed" or "Abort trap" messages
c982febb7588 nginx 0.4.3
Igor Sysoev <http://sysoev.ru>
parents: 194
diff changeset
70 if /bin/sh -c $NGX_AUTOTEST >/dev/null 2>&1; then
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
71 echo " not found"
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
72
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
73 else
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
74 echo " found"
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
75 ngx_found=yes
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
76
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
77 if test -n "$ngx_feature_name"; then
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
78 have=$ngx_have_feature . auto/have
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
79 fi
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
80 fi
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
81 ;;
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
82
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
83 *)
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
84 echo " found"
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
85 ngx_found=yes
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
86
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
87 if test -n "$ngx_feature_name"; then
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
88 have=$ngx_have_feature . auto/have
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
89 fi
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
90 ;;
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
91
168
3314be145cb9 nginx 0.3.31
Igor Sysoev <http://sysoev.ru>
parents: 132
diff changeset
92 esac
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
93
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
94 else
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
95 echo " not found"
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
96
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
97 echo "----------" >> $NGX_AUTOCONF_ERR
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
98 cat $NGX_AUTOTEST.c >> $NGX_AUTOCONF_ERR
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
99 echo "----------" >> $NGX_AUTOCONF_ERR
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
100 echo $ngx_test >> $NGX_AUTOCONF_ERR
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents: 0
diff changeset
101 echo "----------" >> $NGX_AUTOCONF_ERR
0
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
102 fi
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
103
f0b350454894 nginx 0.1.0
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
104 rm $NGX_AUTOTEST*