<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/http, branch release-1.9.4</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Perl: prototyping behavior explicitly specified.</title>
<updated>2015-08-18T13:26:18+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-08-18T13:26:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2e004237c52b6281514571714bf0ba0b23452846'/>
<id>2e004237c52b6281514571714bf0ba0b23452846</id>
<content type='text'>
When prototyping behavior is not explicitly specified, xsubpp emits
a message to stderr asking to do so (see ticket #608).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When prototyping behavior is not explicitly specified, xsubpp emits
a message to stderr asking to do so (see ticket #608).
</pre>
</div>
</content>
</entry>
<entry>
<title>Perl: fixed warning about "sep" may be used uninitialized.</title>
<updated>2015-08-18T13:26:05+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-08-18T13:26:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=a0aea61b50e90adf94b713cef4b789f932107107'/>
<id>a0aea61b50e90adf94b713cef4b789f932107107</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: MSVC 2015 compatibility.</title>
<updated>2015-08-17T15:09:17+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-08-17T15:09:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=84b0ad63fbe5f0de38ae642060a96db34e14287f'/>
<id>84b0ad63fbe5f0de38ae642060a96db34e14287f</id>
<content type='text'>
Resolved warnings about declarations that hide previous local declarations.
Warnings about WSASocketA() being deprecated resolved by explicit use of
WSASocketW() instead of WSASocket().  When compiling without IPv6 support,
WinSock deprecated warnings are disabled to allow use of gethostbyname().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Resolved warnings about declarations that hide previous local declarations.
Warnings about WSASocketA() being deprecated resolved by explicit use of
WSASocketW() instead of WSASocket().  When compiling without IPv6 support,
WinSock deprecated warnings are disabled to allow use of gethostbyname().
</pre>
</div>
</content>
</entry>
<entry>
<title>Sub filter: support of variables in the strings to replace.</title>
<updated>2015-08-17T14:42:02+00:00</updated>
<author>
<name>Dmitry Volyntsev</name>
<email>xeioex@nginx.com</email>
</author>
<published>2015-08-17T14:42:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=1576cd10aabf94e02e65a900302c87c3c149c265'/>
<id>1576cd10aabf94e02e65a900302c87c3c149c265</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Sub filter: support of multiple strings to replace.</title>
<updated>2015-08-17T14:42:02+00:00</updated>
<author>
<name>Dmitry Volyntsev</name>
<email>xeioex@nginx.com</email>
</author>
<published>2015-08-17T14:42:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=934b49923c295997450d247b07c7d84a7f20422c'/>
<id>934b49923c295997450d247b07c7d84a7f20422c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed wrong URI after try_files in nested location (ticket #97).</title>
<updated>2015-08-16T07:51:34+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-08-16T07:51:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=05982ffdf547332155d0c1540624717f57503cf0'/>
<id>05982ffdf547332155d0c1540624717f57503cf0</id>
<content type='text'>
The following configuration with alias, nested location and try_files
resulted in wrong file being used.  Request "/foo/test.gif" tried to
use "/tmp//foo/test.gif" instead of "/tmp/test.gif":

    location /foo/ {
        alias /tmp/;
        location ~ gif {
            try_files $uri =405;
        }
    }

Additionally, rev. c985d90a8d1f introduced a regression if
the "/tmp//foo/test.gif" file was found (ticket #768).  Resulting URI
was set to "gif?/foo/test.gif", as the code used clcf-&gt;name of current
location ("location ~ gif") instead of parent one ("location /foo/").

Fix is to use r-&gt;uri instead of clcf-&gt;name in all cases in the
ngx_http_core_try_files_phase() function.  It is expected to be
already matched and identical to the clcf-&gt;name of the right
location.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The following configuration with alias, nested location and try_files
resulted in wrong file being used.  Request "/foo/test.gif" tried to
use "/tmp//foo/test.gif" instead of "/tmp/test.gif":

    location /foo/ {
        alias /tmp/;
        location ~ gif {
            try_files $uri =405;
        }
    }

Additionally, rev. c985d90a8d1f introduced a regression if
the "/tmp//foo/test.gif" file was found (ticket #768).  Resulting URI
was set to "gif?/foo/test.gif", as the code used clcf-&gt;name of current
location ("location ~ gif") instead of parent one ("location /foo/").

Fix is to use r-&gt;uri instead of clcf-&gt;name in all cases in the
ngx_http_core_try_files_phase() function.  It is expected to be
already matched and identical to the clcf-&gt;name of the right
location.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed segfault with try_files introduced by c985d90a8d1f.</title>
<updated>2015-08-16T07:51:16+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2015-08-16T07:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=4fec72dc8cbd4af81ce2602e778cae849aac072b'/>
<id>4fec72dc8cbd4af81ce2602e778cae849aac072b</id>
<content type='text'>
If alias was used in a location given by a regular expression,
nginx used to do wrong thing in try_files if a location name (i.e.,
regular expression) was an exact prefix of URI.  The following
configuration triggered a segmentation fault on a request to "/mail":

    location ~ /mail {
        alias /path/to/directory;
        try_files $uri =404;
    }

Reported by Per Hansson.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If alias was used in a location given by a regular expression,
nginx used to do wrong thing in try_files if a location name (i.e.,
regular expression) was an exact prefix of URI.  The following
configuration triggered a segmentation fault on a request to "/mail":

    location ~ /mail {
        alias /path/to/directory;
        try_files $uri =404;
    }

Reported by Per Hansson.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: idle connections now closed only once on exiting.</title>
<updated>2015-08-11T13:28:55+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2015-08-11T13:28:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=50ff8b3c3a3eba0984ce55c63ab8ac07dcb65265'/>
<id>50ff8b3c3a3eba0984ce55c63ab8ac07dcb65265</id>
<content type='text'>
Iterating through all connections takes a lot of CPU time, especially
with large number of worker connections configured.  As a result
nginx processes used to consume CPU time during graceful shutdown.
To mitigate this we now only do a full scan for idle connections when
shutdown signal is received.

Transitions of connections to idle ones are now expected to be
avoided if the ngx_exiting flag is set.  The upstream keepalive module
was modified to follow this.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Iterating through all connections takes a lot of CPU time, especially
with large number of worker connections configured.  As a result
nginx processes used to consume CPU time during graceful shutdown.
To mitigate this we now only do a full scan for idle connections when
shutdown signal is received.

Transitions of connections to idle ones are now expected to be
avoided if the ngx_exiting flag is set.  The upstream keepalive module
was modified to follow this.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed strict aliasing warnings with old GCC versions.</title>
<updated>2015-07-16T11:20:48+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-07-16T11:20:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=6dc03bf1a44169918841797080f903324c6d2165'/>
<id>6dc03bf1a44169918841797080f903324c6d2165</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Upstream: fixed shared upstreams on win32.</title>
<updated>2015-06-15T21:43:00+00:00</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@nginx.com</email>
</author>
<published>2015-06-15T21:43:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=1e94ab0db02ec1aeb8e386539ff61ffd3ccf4fdf'/>
<id>1e94ab0db02ec1aeb8e386539ff61ffd3ccf4fdf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
