读懂每一行代码! 问题大全new
你需要登录才能添加代码说明
nginx-1.4.4/ CHANGES
 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99  100  101  102  103  104  105  106  107  108  109  110  111  112  113  114  115  116  117  118  119  120  121  122  123  124  125  126  127  128  129  130  131  132  133  134  135  136  137  138  139  140  141  142  143  144  145  146  147  148  149  150  151  152  153  154  155  156  157  158  159  160  161  162  163  164  165  166  167  168  169  170  171  172  173  174  175  176  177  178  179  180  181  182  183  184  185  186  187  188  189  190  191  192  193  194  195  196  197  198  199  200  201  202  203  204  205  206  207  208  209  210  211  212  213  214  215  216  217  218  219  220  221  222  223  224  225  226  227  228  229  230  231  232  233  234  235  236  237  238  239  240  241  242  243  244  245  246  247  248  249  250  251  252  253  254  255  256  257  258  259  260  261  262  263  264  265  266  267  268  269  270  271  272  273  274  275  276  277  278  279  280  281  282  283  284  285  286  287  288  289  290  291  292  293  294  295  296  297  298  299  300  301  302  303  304  305  306  307  308  309  310  311  312  313  314  315  316  317  318  319  320  321  322  323  324  325  326  327  328  329  330  331  332  333  334  335  336  337  338  339  340  341  342  343  344  345  346  347  348  349  350  351  352  353  354  355  356  357  358  359  360  361  362  363  364  365  366  367  368  369  370  371  372  373  374  375  376  377  378  379  380  381  382  383  384  385  386  387  388  389  390  391  392  393  394  395  396  397  398  399  400  401  402  403  404  405  406  407  408  409  410  411  412  413  414  415  416  417  418  419  420  421  422  423  424  425  426  427  428  429  430  431  432  433  434  435  436  437  438  439  440  441  442  443  444  445  446  447  448  449  450  451  452  453  454  455  456  457  458  459  460  461  462  463  464  465  466  467  468  469  470  471  472  473  474  475  476  477  478  479  480  481  482  483  484  485  486  487  488  489  490  491  492  493  494  495  496  497  498  499  500  501  502  503  504  505  506  507  508  509  510  511  512  513  514  515  516  517  518  519  520  521  522  523  524  525  526  527  528  529  530  531  532  533  534  535  536  537  538  539  540  541  542  543  544  545  546  547  548  549  550  551  552  553  554  555  556  557  558  559  560  561  562  563  564  565  566  567  568  569  570  571  572  573  574  575  576  577  578  579  580  581  582  583  584  585  586  587  588  589  590  591  592  593  594  595  596  597  598  599  600  601  602  603  604  605  606  607  608  609  610  611  612  613  614  615  616  617  618  619  620  621  622  623  624  625  626  627  628  629  630  631  632  633  634  635  636  637  638  639  640  641  642  643  644  645  646  647  648  649  650  651  652  653  654  655  656  657  658  659  660  661  662  663  664  665  666  667  668  669  670  671  672  673  674  675  676  677  678  679  680  681  682  683  684  685  686  687  688  689  690  691  692  693  694  695  696  697  698  699  700  701  702  703  704  705  706  707  708  709  710  711  712  713  714  715  716  717  718  719  720  721  722  723  724  725  726  727  728  729  730  731  732  733  734  735  736  737  738  739  740  741  742  743  744  745  746  747  748  749  750  751  752  753  754  755  756  757  758  759  760  761  762  763  764  765  766  767  768  769  770  771  772  773  774  775  776  777  778  779  780  781  782  783  784  785  786  787  788  789  790  791  792  793  794  795  796  797  798  799  800  801  802  803  804  805  806  807  808  809  810  811  812  813  814  815  816  817  818  819  820  821  822  823  824  825  826  827  828  829  830  831  832  833  834  835  836  837  838  839  840  841  842  843  844  845  846  847  848  849  850  851  852  853  854  855  856  857  858  859  860  861  862  863  864  865  866  867  868  869  870  871  872  873  874  875  876  877  878  879  880  881  882  883  884  885  886  887  888  889  890  891  892  893  894  895  896  897  898  899  900  901  902  903  904  905  906  907  908  909  910  911  912  913  914  915  916  917  918  919  920  921  922  923  924  925  926  927  928  929  930  931  932  933  934  935  936  937  938  939  940  941  942  943  944  945  946  947  948  949  950  951  952  953  954  955  956  957  958  959  960  961  962  963  964  965  966  967  968  969  970  971  972  973  974  975  976  977  978  979  980  981  982  983  984  985  986  987  988  989  990  991  992  993  994  995  996  997  998  999  1000  1001  1002  1003  1004  1005  1006  1007  1008  1009  1010  1011  1012  1013  1014  1015  1016  1017  1018  1019  1020  1021  1022  1023  1024  1025  1026  1027  1028  1029  1030  1031  1032  1033  1034  1035  1036  1037  1038  1039  1040  1041  1042  1043  1044  1045  1046  1047  1048  1049  1050  1051  1052  1053  1054  1055  1056  1057  1058  1059  1060  1061  1062  1063  1064  1065  1066  1067  1068  1069  1070  1071  1072  1073  1074  1075  1076  1077  1078  1079  1080  1081  1082  1083  1084  1085  1086  1087  1088  1089  1090  1091  1092  1093  1094  1095  1096  1097  1098  1099  1100  1101  1102  1103  1104  1105  1106  1107  1108  1109  1110  1111  1112  1113  1114  1115  1116  1117  1118  1119  1120  1121  1122  1123  1124  1125  1126  1127  1128  1129  1130  1131  1132  1133  1134  1135  1136  1137  1138  1139  1140  1141  1142  1143  1144  1145  1146  1147  1148  1149  1150  1151  1152  1153  1154  1155  1156  1157  1158  1159  1160  1161  1162  1163  1164  1165  1166  1167  1168  1169  1170  1171  1172  1173  1174  1175  1176  1177  1178  1179  1180  1181  1182  1183  1184  1185  1186  1187  1188  1189  1190  1191  1192  1193  1194  1195  1196  1197  1198  1199  1200  1201  1202  1203  1204  1205  1206  1207  1208  1209  1210  1211  1212  1213  1214  1215  1216  1217  1218  1219  1220  1221  1222  1223  1224  1225  1226  1227  1228  1229  1230  1231  1232  1233  1234  1235  1236  1237  1238  1239  1240  1241  1242  1243  1244  1245  1246  1247  1248  1249  1250  1251  1252  1253  1254  1255  1256  1257  1258  1259  1260  1261  1262  1263  1264  1265  1266  1267  1268  1269  1270  1271  1272  1273  1274  1275  1276  1277  1278  1279  1280  1281  1282  1283  1284  1285  1286  1287  1288  1289  1290  1291  1292  1293  1294  1295  1296  1297  1298  1299  1300  1301  1302  1303  1304  1305  1306  1307  1308  1309  1310  1311  1312  1313  1314  1315  1316  1317  1318  1319  1320  1321  1322  1323  1324  1325  1326  1327  1328  1329  1330  1331  1332  1333  1334  1335  1336  1337  1338  1339  1340  1341  1342  1343  1344  1345  1346  1347  1348  1349  1350  1351  1352  1353  1354  1355  1356  1357  1358  1359  1360  1361  1362  1363  1364  1365  1366  1367  1368  1369  1370  1371  1372  1373  1374  1375  1376  1377  1378  1379  1380  1381  1382  1383  1384  1385  1386  1387  1388  1389  1390  1391  1392  1393  1394  1395  1396  1397  1398  1399  1400  1401  1402  1403  1404  1405  1406  1407  1408  1409  1410  1411  1412  1413  1414  1415  1416  1417  1418  1419  1420  1421  1422  1423  1424  1425  1426  1427  1428  1429  1430  1431  1432  1433  1434  1435  1436  1437  1438  1439  1440  1441  1442  1443  1444  1445  1446  1447  1448  1449  1450  1451  1452  1453  1454  1455  1456  1457  1458  1459  1460  1461  1462  1463  1464  1465  1466  1467  1468  1469  1470  1471  1472  1473  1474  1475  1476  1477  1478  1479  1480  1481  1482  1483  1484  1485  1486  1487  1488  1489  1490  1491  1492  1493  1494  1495  1496  1497  1498  1499  1500  1501  1502  1503  1504  1505  1506  1507  1508  1509  1510  1511  1512  1513  1514  1515  1516  1517  1518  1519  1520  1521  1522  1523  1524  1525  1526  1527  1528  1529  1530  1531  1532  1533  1534  1535  1536  1537  1538  1539  1540  1541  1542  1543  1544  1545  1546  1547  1548  1549  1550  1551  1552  1553  1554  1555  1556  1557  1558  1559  1560  1561  1562  1563  1564  1565  1566  1567  1568  1569  1570  1571  1572  1573  1574  1575  1576  1577  1578  1579  1580  1581  1582  1583  1584  1585  1586  1587  1588  1589  1590  1591  1592  1593  1594  1595  1596  1597  1598  1599  1600  1601  1602  1603  1604  1605  1606  1607  1608  1609  1610  1611  1612  1613  1614  1615  1616  1617  1618  1619  1620  1621  1622  1623  1624  1625  1626  1627  1628  1629  1630  1631  1632  1633  1634  1635  1636  1637  1638  1639  1640  1641  1642  1643  1644  1645  1646  1647  1648  1649  1650  1651  1652  1653  1654  1655  1656  1657  1658  1659  1660  1661  1662  1663  1664  1665  1666  1667  1668  1669  1670  1671  1672  1673  1674  1675  1676  1677  1678  1679  1680  1681  1682  1683  1684  1685  1686  1687  1688  1689  1690  1691  1692  1693  1694  1695  1696  1697  1698  1699  1700  1701  1702  1703  1704  1705  1706  1707  1708  1709  1710  1711  1712  1713  1714  1715  1716  1717  1718  1719  1720  1721  1722  1723  1724  1725  1726  1727  1728  1729  1730  1731  1732  1733  1734  1735  1736  1737  1738  1739  1740  1741  1742  1743  1744  1745  1746  1747  1748  1749  1750  1751  1752  1753  1754  1755  1756  1757  1758  1759  1760  1761  1762  1763  1764  1765  1766  1767  1768  1769  1770  1771  1772  1773  1774  1775  1776  1777  1778  1779  1780  1781  1782  1783  1784  1785  1786  1787  1788  1789  1790  1791  1792  1793  1794  1795  1796  1797  1798  1799  1800  1801  1802  1803  1804  1805  1806  1807  1808  1809  1810  1811  1812  1813  1814  1815  1816  1817  1818  1819  1820  1821  1822  1823  1824  1825  1826  1827  1828  1829  1830  1831  1832  1833  1834  1835  1836  1837  1838  1839  1840  1841  1842  1843  1844  1845  1846  1847  1848  1849  1850  1851  1852  1853  1854  1855  1856  1857  1858  1859  1860  1861  1862  1863  1864  1865  1866  1867  1868  1869  1870  1871  1872  1873  1874  1875  1876  1877  1878  1879  1880  1881  1882  1883  1884  1885  1886  1887  1888  1889  1890  1891  1892  1893  1894  1895  1896  1897  1898  1899  1900  1901  1902  1903  1904  1905  1906  1907  1908  1909  1910  1911  1912  1913  1914  1915  1916  1917  1918  1919  1920  1921  1922  1923  1924  1925  1926  1927  1928  1929  1930  1931  1932  1933  1934  1935  1936  1937  1938  1939  1940  1941  1942  1943  1944  1945  1946  1947  1948  1949  1950  1951  1952  1953  1954  1955  1956  1957  1958  1959  1960  1961  1962  1963  1964  1965  1966  1967  1968  1969  1970  1971  1972  1973  1974  1975  1976  1977  1978  1979  1980  1981  1982  1983  1984  1985  1986  1987  1988  1989  1990  1991  1992  1993  1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  2025  2026  2027  2028  2029  2030  2031  2032  2033  2034  2035  2036  2037  2038  2039  2040  2041  2042  2043  2044  2045  2046  2047  2048  2049  2050  2051  2052  2053  2054  2055  2056  2057  2058  2059  2060  2061  2062  2063  2064  2065  2066  2067  2068  2069  2070  2071  2072  2073  2074  2075  2076  2077  2078  2079  2080  2081  2082  2083  2084  2085  2086  2087  2088  2089  2090  2091  2092  2093  2094  2095  2096  2097  2098  2099  2100  2101  2102  2103  2104  2105  2106  2107  2108  2109  2110  2111  2112  2113  2114  2115  2116  2117  2118  2119  2120  2121  2122  2123  2124  2125  2126  2127  2128  2129  2130  2131  2132  2133  2134  2135  2136  2137  2138  2139  2140  2141  2142  2143  2144  2145  2146  2147  2148  2149  2150  2151  2152  2153  2154  2155  2156  2157  2158  2159  2160  2161  2162  2163  2164  2165  2166  2167  2168  2169  2170  2171  2172  2173  2174  2175  2176  2177  2178  2179  2180  2181  2182  2183  2184  2185  2186  2187  2188  2189  2190  2191  2192  2193  2194  2195  2196  2197  2198  2199  2200  2201  2202  2203  2204  2205  2206  2207  2208  2209  2210  2211  2212  2213  2214  2215  2216  2217  2218  2219  2220  2221  2222  2223  2224  2225  2226  2227  2228  2229  2230  2231  2232  2233  2234  2235  2236  2237  2238  2239  2240  2241  2242  2243  2244  2245  2246  2247  2248  2249  2250  2251  2252  2253  2254  2255  2256  2257  2258  2259  2260  2261  2262  2263  2264  2265  2266  2267  2268  2269  2270  2271  2272  2273  2274  2275  2276  2277  2278  2279  2280  2281  2282  2283  2284  2285  2286  2287  2288  2289  2290  2291  2292  2293  2294  2295  2296  2297  2298  2299  2300  2301  2302  2303  2304  2305  2306  2307  2308  2309  2310  2311  2312  2313  2314  2315  2316  2317  2318  2319  2320  2321  2322  2323  2324  2325  2326  2327  2328  2329  2330  2331  2332  2333  2334  2335  2336  2337  2338  2339  2340  2341  2342  2343  2344  2345  2346  2347  2348  2349  2350  2351  2352  2353  2354  2355  2356  2357  2358  2359  2360  2361  2362  2363  2364  2365  2366  2367  2368  2369  2370  2371  2372  2373  2374  2375  2376  2377  2378  2379  2380  2381  2382  2383  2384  2385  2386  2387  2388  2389  2390  2391  2392  2393  2394  2395  2396  2397  2398  2399  2400  2401  2402  2403  2404  2405  2406  2407  2408  2409  2410  2411  2412  2413  2414  2415  2416  2417  2418  2419  2420  2421  2422  2423  2424  2425  2426  2427  2428  2429  2430  2431  2432  2433  2434  2435  2436  2437  2438  2439  2440  2441  2442  2443  2444  2445  2446  2447  2448  2449  2450  2451  2452  2453  2454  2455  2456  2457  2458  2459  2460  2461  2462  2463  2464  2465  2466  2467  2468  2469  2470  2471  2472  2473  2474  2475  2476  2477  2478  2479  2480  2481  2482  2483  2484  2485  2486  2487  2488  2489  2490  2491  2492  2493  2494  2495  2496  2497  2498  2499  2500  2501  2502  2503  2504  2505  2506  2507  2508  2509  2510  2511  2512  2513  2514  2515  2516  2517  2518  2519  2520  2521  2522  2523  2524  2525  2526  2527  2528  2529  2530  2531  2532  2533  2534  2535  2536  2537  2538  2539  2540  2541  2542  2543  2544  2545  2546  2547  2548  2549  2550  2551  2552  2553  2554  2555  2556  2557  2558  2559  2560  2561  2562  2563  2564  2565  2566  2567  2568  2569  2570  2571  2572  2573  2574  2575  2576  2577  2578  2579  2580  2581  2582  2583  2584  2585  2586  2587  2588  2589  2590  2591  2592  2593  2594  2595  2596  2597  2598  2599  2600  2601  2602  2603  2604  2605  2606  2607  2608  2609  2610  2611  2612  2613  2614  2615  2616  2617  2618  2619  2620  2621  2622  2623  2624  2625  2626  2627  2628  2629  2630  2631  2632  2633  2634  2635  2636  2637  2638  2639  2640  2641  2642  2643  2644  2645  2646  2647  2648  2649  2650  2651  2652  2653  2654  2655  2656  2657  2658  2659  2660  2661  2662  2663  2664  2665  2666  2667  2668  2669  2670  2671  2672  2673  2674  2675  2676  2677  2678  2679  2680  2681  2682  2683  2684  2685  2686  2687  2688  2689  2690  2691  2692  2693  2694  2695  2696  2697  2698  2699  2700  2701  2702  2703  2704  2705  2706  2707  2708  2709  2710  2711  2712  2713  2714  2715  2716  2717  2718  2719  2720  2721  2722  2723  2724  2725  2726  2727  2728  2729  2730  2731  2732  2733  2734  2735  2736  2737  2738  2739  2740  2741  2742  2743  2744  2745  2746  2747  2748  2749  2750  2751  2752  2753  2754  2755  2756  2757  2758  2759  2760  2761  2762  2763  2764  2765  2766  2767  2768  2769  2770  2771  2772  2773  2774  2775  2776  2777  2778  2779  2780  2781  2782  2783  2784  2785  2786  2787  2788  2789  2790  2791  2792  2793  2794  2795  2796  2797  2798  2799  2800  2801  2802  2803  2804  2805  2806  2807  2808  2809  2810  2811  2812  2813  2814  2815  2816  2817  2818  2819  2820  2821  2822  2823  2824  2825  2826  2827  2828  2829  2830  2831  2832  2833  2834  2835  2836  2837  2838  2839  2840  2841  2842  2843  2844  2845  2846  2847  2848  2849  2850  2851  2852  2853  2854  2855  2856  2857  2858  2859  2860  2861  2862  2863  2864  2865  2866  2867  2868  2869  2870  2871  2872  2873  2874  2875  2876  2877  2878  2879  2880  2881  2882  2883  2884  2885  2886  2887  2888  2889  2890  2891  2892  2893  2894  2895  2896  2897  2898  2899  2900  2901  2902  2903  2904  2905  2906  2907  2908  2909  2910  2911  2912  2913  2914  2915  2916  2917  2918  2919  2920  2921  2922  2923  2924  2925  2926  2927  2928  2929  2930  2931  2932  2933  2934  2935  2936  2937  2938  2939  2940  2941  2942  2943  2944  2945  2946  2947  2948  2949  2950  2951  2952  2953  2954  2955  2956  2957  2958  2959  2960  2961  2962  2963  2964  2965  2966  2967  2968  2969  2970  2971  2972  2973  2974  2975  2976  2977  2978  2979  2980  2981  2982  2983  2984  2985  2986  2987  2988  2989  2990  2991  2992  2993  2994  2995  2996  2997  2998  2999  3000  3001  3002  3003  3004  3005  3006  3007  3008  3009  3010  3011  3012  3013  3014  3015  3016  3017  3018  3019  3020  3021  3022  3023  3024  3025  3026  3027  3028  3029  3030  3031  3032  3033  3034  3035  3036  3037  3038  3039  3040  3041  3042  3043  3044  3045  3046  3047  3048  3049  3050  3051  3052  3053  3054  3055  3056  3057  3058  3059  3060  3061  3062  3063  3064  3065  3066  3067  3068  3069  3070  3071  3072  3073  3074  3075  3076  3077  3078  3079  3080  3081  3082  3083  3084  3085  3086  3087  3088  3089  3090  3091  3092  3093  3094  3095  3096  3097  3098  3099  3100  3101  3102  3103  3104  3105  3106  3107  3108  3109  3110  3111  3112  3113  3114  3115  3116  3117  3118  3119  3120  3121  3122  3123  3124  3125  3126  3127  3128  3129  3130  3131  3132  3133  3134  3135  3136  3137  3138  3139  3140  3141  3142  3143  3144  3145  3146  3147  3148  3149  3150  3151  3152  3153  3154  3155  3156  3157  3158  3159  3160  3161  3162  3163  3164  3165  3166  3167  3168  3169  3170  3171  3172  3173  3174  3175  3176  3177  3178  3179  3180  3181  3182  3183  3184  3185  3186  3187  3188  3189  3190  3191  3192  3193  3194  3195  3196  3197  3198  3199  3200  3201  3202  3203  3204  3205  3206  3207  3208  3209  3210  3211  3212  3213  3214  3215  3216  3217  3218  3219  3220  3221  3222  3223  3224  3225  3226  3227  3228  3229  3230  3231  3232  3233  3234  3235  3236  3237  3238  3239  3240  3241  3242  3243  3244  3245  3246  3247  3248  3249  3250  3251  3252  3253  3254  3255  3256  3257  3258  3259  3260  3261  3262  3263  3264  3265  3266  3267  3268  3269  3270  3271  3272  3273  3274  3275  3276  3277  3278  3279  3280  3281  3282  3283  3284  3285  3286  3287  3288  3289  3290  3291  3292  3293  3294  3295  3296  3297  3298  3299  3300  3301  3302  3303  3304  3305  3306  3307  3308  3309  3310  3311  3312  3313  3314  3315  3316  3317  3318  3319  3320  3321  3322  3323  3324  3325  3326  3327  3328  3329  3330  3331  3332  3333  3334  3335  3336  3337  3338  3339  3340  3341  3342  3343  3344  3345  3346  3347  3348  3349  3350  3351  3352  3353  3354  3355  3356  3357  3358  3359  3360  3361  3362  3363  3364  3365  3366  3367  3368  3369  3370  3371  3372  3373  3374  3375  3376  3377  3378  3379  3380  3381  3382  3383  3384  3385  3386  3387  3388  3389  3390  3391  3392  3393  3394  3395  3396  3397  3398  3399  3400  3401  3402  3403  3404  3405  3406  3407  3408  3409  3410  3411  3412  3413  3414  3415  3416  3417  3418  3419  3420  3421  3422  3423  3424  3425  3426  3427  3428  3429  3430  3431  3432  3433  3434  3435  3436  3437  3438  3439  3440  3441  3442  3443  3444  3445  3446  3447  3448  3449  3450  3451  3452  3453  3454  3455  3456  3457  3458  3459  3460  3461  3462  3463  3464  3465  3466  3467  3468  3469  3470  3471  3472  3473  3474  3475  3476  3477  3478  3479  3480  3481  3482  3483  3484  3485  3486  3487  3488  3489  3490  3491  3492  3493  3494  3495  3496  3497  3498  3499  3500  3501  3502  3503  3504  3505  3506  3507  3508  3509  3510  3511  3512  3513  3514  3515  3516  3517  3518  3519  3520  3521  3522  3523  3524  3525  3526  3527  3528  3529  3530  3531  3532  3533  3534  3535  3536  3537  3538  3539  3540  3541  3542  3543  3544  3545  3546  3547  3548  3549  3550  3551  3552  3553  3554  3555  3556  3557  3558  3559  3560  3561  3562  3563  3564  3565  3566  3567  3568  3569  3570  3571  3572  3573  3574  3575  3576  3577  3578  3579  3580  3581  3582  3583  3584  3585  3586  3587  3588  3589  3590  3591  3592  3593  3594  3595  3596  3597  3598  3599  3600  3601  3602  3603  3604  3605  3606  3607  3608  3609  3610  3611  3612  3613  3614  3615  3616  3617  3618  3619  3620  3621  3622  3623  3624  3625  3626  3627  3628  3629  3630  3631  3632  3633  3634  3635  3636  3637  3638  3639  3640  3641  3642  3643  3644  3645  3646  3647  3648  3649  3650  3651  3652  3653  3654  3655  3656  3657  3658  3659  3660  3661  3662  3663  3664  3665  3666  3667  3668  3669  3670  3671  3672  3673  3674  3675  3676  3677  3678  3679  3680  3681  3682  3683  3684  3685  3686  3687  3688  3689  3690  3691  3692  3693  3694  3695  3696  3697  3698  3699  3700  3701  3702  3703  3704  3705  3706  3707  3708  3709  3710  3711  3712  3713  3714  3715  3716  3717  3718  3719  3720  3721  3722  3723  3724  3725  3726  3727  3728  3729  3730  3731  3732  3733  3734  3735  3736  3737  3738  3739  3740  3741  3742  3743  3744  3745  3746  3747  3748  3749  3750  3751  3752  3753  3754  3755  3756  3757  3758  3759  3760  3761  3762  3763  3764  3765  3766  3767  3768  3769  3770  3771  3772  3773  3774  3775  3776  3777  3778  3779  3780  3781  3782  3783  3784  3785  3786  3787  3788  3789  3790  3791  3792  3793  3794  3795  3796  3797  3798  3799  3800  3801  3802  3803  3804  3805  3806  3807  3808  3809  3810  3811  3812  3813  3814  3815  3816  3817  3818  3819  3820  3821  3822  3823  3824  3825  3826  3827  3828  3829  3830  3831  3832  3833  3834  3835  3836  3837  3838  3839  3840  3841  3842  3843  3844  3845  3846  3847  3848  3849  3850  3851  3852  3853  3854  3855  3856  3857  3858  3859  3860  3861  3862  3863  3864  3865  3866  3867  3868  3869  3870  3871  3872  3873  3874  3875  3876  3877  3878  3879  3880  3881  3882  3883  3884  3885  3886  3887  3888  3889  3890  3891  3892  3893  3894  3895  3896  3897  3898  3899  3900  3901  3902  3903  3904  3905  3906  3907  3908  3909  3910  3911  3912  3913  3914  3915  3916  3917  3918  3919  3920  3921  3922  3923  3924  3925  3926  3927  3928  3929  3930  3931  3932  3933  3934  3935  3936  3937  3938  3939  3940  3941  3942  3943  3944  3945  3946  3947  3948  3949  3950  3951  3952  3953  3954  3955  3956  3957  3958  3959  3960  3961  3962  3963  3964  3965  3966  3967  3968  3969  3970  3971  3972  3973  3974  3975  3976  3977  3978  3979  3980  3981  3982  3983  3984  3985  3986  3987  3988  3989  3990  3991  3992  3993  3994  3995  3996  3997  3998  3999  4000  4001  4002  4003  4004  4005  4006  4007  4008  4009  4010  4011  4012  4013  4014  4015  4016  4017  4018  4019  4020  4021  4022  4023  4024  4025  4026  4027  4028  4029  4030  4031  4032  4033  4034  4035  4036  4037  4038  4039  4040  4041  4042  4043  4044  4045  4046  4047  4048  4049  4050  4051  4052  4053  4054  4055  4056  4057  4058  4059  4060  4061  4062  4063  4064  4065  4066  4067  4068  4069  4070  4071  4072  4073  4074  4075  4076  4077  4078  4079  4080  4081  4082  4083  4084  4085  4086  4087  4088  4089  4090  4091  4092  4093  4094  4095  4096  4097  4098  4099  4100  4101  4102  4103  4104  4105  4106  4107  4108  4109  4110  4111  4112  4113  4114  4115  4116  4117  4118  4119  4120  4121  4122  4123  4124  4125  4126  4127  4128  4129  4130  4131  4132  4133  4134  4135  4136  4137  4138  4139  4140  4141  4142  4143  4144  4145  4146  4147  4148  4149  4150  4151  4152  4153  4154  4155  4156  4157  4158  4159  4160  4161  4162  4163  4164  4165  4166  4167  4168  4169  4170  4171  4172  4173  4174  4175  4176  4177  4178  4179  4180  4181  4182  4183  4184  4185  4186  4187  4188  4189  4190  4191  4192  4193  4194  4195  4196  4197  4198  4199  4200  4201  4202  4203  4204  4205  4206  4207  4208  4209  4210  4211  4212  4213  4214  4215  4216  4217  4218  4219  4220  4221  4222  4223  4224  4225  4226  4227  4228  4229  4230  4231  4232  4233  4234  4235  4236  4237  4238  4239  4240  4241  4242  4243  4244  4245  4246  4247  4248  4249  4250  4251  4252  4253  4254  4255  4256  4257  4258  4259  4260  4261  4262  4263  4264  4265  4266  4267  4268  4269  4270  4271  4272  4273  4274  4275  4276  4277  4278  4279  4280  4281  4282  4283  4284  4285  4286  4287  4288  4289  4290  4291  4292  4293  4294  4295  4296  4297  4298  4299  4300  4301  4302  4303  4304  4305  4306  4307  4308  4309  4310  4311  4312  4313  4314  4315  4316  4317  4318  4319  4320  4321  4322  4323  4324  4325  4326  4327  4328  4329  4330  4331  4332  4333  4334  4335  4336  4337  4338  4339  4340  4341  4342  4343  4344  4345  4346  4347  4348  4349  4350  4351  4352  4353  4354  4355  4356  4357  4358  4359  4360  4361  4362  4363  4364  4365  4366  4367  4368  4369  4370  4371  4372  4373  4374  4375  4376  4377  4378  4379  4380  4381  4382  4383  4384  4385  4386  4387  4388  4389  4390  4391  4392  4393  4394  4395  4396  4397  4398  4399  4400  4401  4402  4403  4404  4405  4406  4407  4408  4409  4410  4411  4412  4413  4414  4415  4416  4417  4418  4419  4420  4421  4422  4423  4424  4425  4426  4427  4428  4429  4430  4431  4432  4433  4434  4435  4436  4437  4438  4439  4440  4441  4442  4443  4444  4445  4446  4447  4448  4449  4450  4451  4452  4453  4454  4455  4456  4457  4458  4459  4460  4461  4462  4463  4464  4465  4466  4467  4468  4469  4470  4471  4472  4473  4474  4475  4476  4477  4478  4479  4480  4481  4482  4483  4484  4485  4486  4487  4488  4489  4490  4491  4492  4493  4494  4495  4496  4497  4498  4499  4500  4501  4502  4503  4504  4505  4506  4507  4508  4509  4510  4511  4512  4513  4514  4515  4516  4517  4518  4519  4520  4521  4522  4523  4524  4525  4526  4527  4528  4529  4530  4531  4532  4533  4534  4535  4536  4537  4538  4539  4540  4541  4542  4543  4544  4545  4546  4547  4548  4549  4550  4551  4552  4553  4554  4555  4556  4557  4558  4559  4560  4561  4562  4563  4564  4565  4566  4567  4568  4569  4570  4571  4572  4573  4574  4575  4576  4577  4578  4579  4580  4581  4582  4583  4584  4585  4586  4587  4588  4589  4590  4591  4592  4593  4594  4595  4596  4597  4598  4599  4600  4601  4602  4603  4604  4605  4606  4607  4608  4609  4610  4611  4612  4613  4614  4615  4616  4617  4618  4619  4620  4621  4622  4623  4624  4625  4626  4627  4628  4629  4630  4631  4632  4633  4634  4635  4636  4637  4638  4639  4640  4641  4642  4643  4644  4645  4646  4647  4648  4649  4650  4651  4652  4653  4654  4655  4656  4657  4658  4659  4660  4661  4662  4663  4664  4665  4666  4667  4668  4669  4670  4671  4672  4673  4674  4675  4676  4677  4678  4679  4680  4681  4682  4683  4684  4685  4686  4687  4688  4689  4690  4691  4692  4693  4694  4695  4696  4697  4698  4699  4700  4701  4702  4703  4704  4705  4706  4707  4708  4709  4710  4711  4712  4713  4714  4715  4716  4717  4718  4719  4720  4721  4722  4723  4724  4725  4726  4727  4728  4729  4730  4731  4732  4733  4734  4735  4736  4737  4738  4739  4740  4741  4742  4743  4744  4745  4746  4747  4748  4749  4750  4751  4752  4753  4754  4755  4756  4757  4758  4759  4760  4761  4762  4763  4764  4765  4766  4767  4768  4769  4770  4771  4772  4773  4774  4775  4776  4777  4778  4779  4780  4781  4782  4783  4784  4785  4786  4787  4788  4789  4790  4791  4792  4793  4794  4795  4796  4797  4798  4799  4800  4801  4802  4803  4804  4805  4806  4807  4808  4809  4810  4811  4812  4813  4814  4815  4816  4817  4818  4819  4820  4821  4822  4823  4824  4825  4826  4827  4828  4829  4830  4831  4832  4833  4834  4835  4836  4837  4838  4839  4840  4841  4842  4843  4844  4845  4846  4847  4848  4849  4850  4851  4852  4853  4854  4855  4856  4857  4858  4859  4860  4861  4862  4863  4864  4865  4866  4867  4868  4869  4870  4871  4872  4873  4874  4875  4876  4877  4878  4879  4880  4881  4882  4883  4884  4885  4886  4887  4888  4889  4890  4891  4892  4893  4894  4895  4896  4897  4898  4899  4900  4901  4902  4903  4904  4905  4906  4907  4908  4909  4910  4911  4912  4913  4914  4915  4916  4917  4918  4919  4920  4921  4922  4923  4924  4925  4926  4927  4928  4929  4930  4931  4932  4933  4934  4935  4936  4937  4938  4939  4940  4941  4942  4943  4944  4945  4946  4947  4948  4949  4950  4951  4952  4953  4954  4955  4956  4957  4958  4959  4960  4961  4962  4963  4964  4965  4966  4967  4968  4969  4970  4971  4972  4973  4974  4975  4976  4977  4978  4979  4980  4981  4982  4983  4984  4985  4986  4987  4988  4989  4990  4991  4992  4993  4994  4995  4996  4997  4998  4999  5000  5001  5002  5003  5004  5005  5006  5007  5008  5009  5010  5011  5012  5013  5014  5015  5016  5017  5018  5019  5020  5021  5022  5023  5024  5025  5026  5027  5028  5029  5030  5031  5032  5033  5034  5035  5036  5037  5038  5039  5040  5041  5042  5043  5044  5045  5046  5047  5048  5049  5050  5051  5052  5053  5054  5055  5056  5057  5058  5059  5060  5061  5062  5063  5064  5065  5066  5067  5068  5069  5070  5071  5072  5073  5074  5075  5076  5077  5078  5079  5080  5081  5082  5083  5084  5085  5086  5087  5088  5089  5090  5091  5092  5093  5094  5095  5096  5097  5098  5099  5100  5101  5102  5103  5104  5105  5106  5107  5108  5109  5110  5111  5112  5113  5114  5115  5116  5117  5118  5119  5120  5121  5122  5123  5124  5125  5126  5127  5128  5129  5130  5131  5132  5133  5134  5135  5136  5137  5138  5139  5140  5141  5142  5143  5144  5145  5146  5147  5148  5149  5150  5151  5152  5153  5154  5155  5156  5157  5158  5159  5160  5161  5162  5163  5164  5165  5166  5167  5168  5169  5170  5171  5172  5173  5174  5175  5176  5177  5178  5179  5180  5181  5182  5183  5184  5185  5186  5187  5188  5189  5190  5191  5192  5193  5194  5195  5196  5197  5198  5199  5200  5201  5202  5203  5204  5205  5206  5207  5208  5209  5210  5211  5212  5213  5214  5215  5216  5217  5218  5219  5220  5221  5222  5223  5224  5225  5226  5227  5228  5229  5230  5231  5232  5233  5234  5235  5236  5237  5238  5239  5240  5241  5242  5243  5244  5245  5246  5247  5248  5249  5250  5251  5252  5253  5254  5255  5256  5257  5258  5259  5260  5261  5262  5263  5264  5265  5266  5267  5268  5269  5270  5271  5272  5273  5274  5275  5276  5277  5278  5279  5280  5281  5282  5283  5284  5285  5286  5287  5288  5289  5290  5291  5292  5293  5294  5295  5296  5297  5298  5299  5300  5301  5302  5303  5304  5305  5306  5307  5308  5309  5310  5311  5312  5313  5314  5315  5316  5317  5318  5319  5320  5321  5322  5323  5324  5325  5326  5327  5328  5329  5330  5331  5332  5333  5334  5335  5336  5337  5338  5339  5340  5341  5342  5343  5344  5345  5346  5347  5348  5349  5350  5351  5352  5353  5354  5355  5356  5357  5358  5359  5360  5361  5362  5363  5364  5365  5366  5367  5368  5369  5370  5371  5372  5373  5374  5375  5376  5377  5378  5379  5380  5381  5382  5383  5384  5385  5386  5387  5388  5389  5390  5391  5392  5393  5394  5395  5396  5397  5398  5399  5400  5401  5402  5403  5404  5405  5406  5407  5408  5409  5410  5411  5412  5413  5414  5415  5416  5417  5418  5419  5420  5421  5422  5423  5424  5425  5426  5427  5428  5429  5430  5431  5432  5433  5434  5435  5436  5437  5438  5439  5440  5441  5442  5443  5444  5445  5446  5447  5448  5449  5450  5451  5452  5453  5454  5455  5456  5457  5458  5459  5460  5461  5462  5463  5464  5465  5466  5467  5468  5469  5470  5471  5472  5473  5474  5475  5476  5477  5478  5479  5480  5481  5482  5483  5484  5485  5486  5487  5488  5489  5490  5491  5492  5493  5494  5495  5496  5497  5498  5499  5500  5501  5502  5503  5504  5505  5506  5507  5508  5509  5510  5511  5512  5513  5514  5515  5516  5517  5518  5519  5520  5521  5522  5523  5524  5525  5526  5527  5528  5529  5530  5531  5532  5533  5534  5535  5536  5537  5538  5539  5540  5541  5542  5543  5544  5545  5546  5547  5548  5549  5550  5551  5552  5553  5554  5555  5556  5557  5558  5559  5560  5561  5562  5563  5564  5565  5566  5567  5568  5569  5570  5571  5572  5573  5574  5575  5576  5577  5578  5579  5580  5581  5582  5583  5584  5585  5586  5587  5588  5589  5590  5591  5592  5593  5594  5595  5596  5597  5598  5599  5600  5601  5602  5603  5604  5605  5606  5607  5608  5609  5610  5611  5612  5613  5614  5615  5616  5617  5618  5619  5620  5621  5622  5623  5624  5625  5626  5627  5628  5629  5630  5631  5632  5633  5634  5635  5636  5637  5638  5639  5640  5641  5642  5643  5644  5645  5646  5647  5648  5649  5650  5651  5652  5653  5654  5655  5656  5657  5658  5659  5660  5661  5662  5663  5664  5665  5666  5667  5668  5669  5670  5671  5672  5673  5674  5675  5676  5677  5678  5679  5680  5681  5682  5683  5684  5685  5686  5687  5688  5689  5690  5691  5692  5693  5694  5695  5696  5697  5698  5699  5700  5701  5702  5703  5704  5705  5706  5707  5708  5709  5710  5711  5712  5713  5714  5715  5716  5717  5718  5719  5720  5721  5722  5723  5724  5725  5726  5727  5728  5729  5730  5731  5732  5733  5734  5735  5736  5737  5738  5739  5740  5741  5742  5743  5744  5745  5746  5747  5748  5749  5750  5751  5752  5753  5754  5755  5756  5757  5758  5759  5760  5761  5762  5763  5764  5765  5766  5767  5768  5769  5770  5771  5772  5773  5774  5775  5776  5777  5778  5779  5780  5781  5782  5783  5784  5785  5786  5787  5788  5789  5790  5791  5792  5793  5794  5795  5796  5797  5798  5799  5800  5801  5802  5803  5804  5805  5806  5807  5808  5809  5810  5811  5812  5813  5814  5815  5816  5817  5818  5819  5820  5821  5822  5823  5824  5825  5826  5827  5828  5829  5830  5831  5832  5833  5834  5835  5836  5837  5838  5839  5840  5841  5842  5843  5844  5845  5846  5847  5848  5849  5850  5851  5852  5853  5854  5855  5856  5857  5858  5859  5860  5861  5862  5863  5864  5865  5866  5867  5868  5869  5870  5871  5872  5873  5874  5875  5876  5877  5878  5879  5880  5881  5882  5883  5884  5885  5886  5887  5888  5889  5890  5891  5892  5893  5894  5895  5896  5897  5898  5899  5900  5901  5902  5903  5904  5905  5906  5907  5908  5909  5910  5911  5912  5913  5914  5915  5916  5917  5918  5919  5920  5921  5922  5923  5924  5925  5926  5927  5928  5929  5930  5931  5932  5933  5934  5935  5936  5937  5938  5939  5940  5941  5942  5943  5944  5945  5946  5947  5948  5949  5950  5951  5952  5953  5954  5955  5956  5957  5958  5959  5960  5961  5962  5963  5964  5965  5966  5967  5968  5969  5970  5971  5972  5973  5974  5975  5976  5977  5978  5979  5980  5981  5982  5983  5984  5985  5986  5987  5988  5989  5990  5991  5992  5993  5994  5995  5996  5997  5998  5999  6000  6001  6002  6003  6004  6005  6006  6007  6008  6009  6010  6011  6012  6013  6014  6015  6016  6017  6018  6019  6020  6021  6022  6023  6024  6025  6026  6027  6028  6029  6030  6031  6032  6033  6034  6035  6036  6037  6038  6039  6040  6041  6042  6043  6044  6045  6046  6047  6048  6049  6050  6051  6052  6053  6054  6055  6056  6057  6058  6059  6060  6061  6062  6063  6064  6065  6066  6067  6068  6069  6070  6071  6072  6073  6074  6075  6076  6077  6078  6079  6080  6081  6082  6083  6084  6085  6086  6087  6088  6089  6090  6091  6092  6093  6094  6095  6096  6097  6098  6099  6100  6101  6102  6103  6104  6105  6106  6107  6108  6109  6110  6111  6112  6113  6114  6115  6116  6117  6118  6119  6120  6121  6122  6123  6124  6125  6126  6127  6128  6129  6130  6131  6132  6133  6134  6135  6136  6137  6138  6139  6140  6141  6142  6143  6144  6145  6146  6147  6148  6149  6150  6151  6152  6153  6154  6155  6156  6157  6158  6159  6160  6161  6162  6163  6164  6165  6166  6167  6168  6169  6170  6171  6172  6173  6174  6175  6176  6177  6178  6179  6180  6181  6182  6183  6184  6185  6186  6187  6188  6189  6190  6191  6192  6193  6194  6195  6196  6197  6198  6199  6200  6201  6202  6203  6204  6205  6206  6207  6208  6209  6210  6211  6212  6213  6214  6215  6216  6217  6218  6219  6220  6221  6222  6223  6224  6225  6226  6227  6228  6229  6230  6231  6232  6233  6234  6235  6236  6237  6238  6239  6240  6241  6242  6243  6244  6245  6246  6247  6248  6249  6250  6251  6252  6253  6254  6255  6256  6257  6258  6259  6260  6261  6262  6263  6264  6265  6266  6267  6268  6269  6270  6271  6272  6273  6274  6275  6276  6277  6278  6279  6280  6281  6282  6283  6284  6285  6286  6287  6288  6289  6290  6291  6292  6293  6294  6295  6296  6297  6298  6299  6300  6301  6302  6303  6304  6305  6306  6307  6308  6309  6310  6311  6312  6313  6314  6315  6316  6317  6318  6319  6320  6321  6322  6323  6324  6325  6326  6327  6328  6329  6330 

Changes with nginx 1.4.4                                         19 Nov 2013

    *) Security: a character following an unescaped space in a request line
       was handled incorrectly (CVE-2013-4547); the bug had appeared in
       0.8.41.
       Thanks to Ivan Fratric of the Google Security Team.


Changes with nginx 1.4.3                                         08 Oct 2013

    *) Bugfix: a segmentation fault might occur in a worker process if the
       ngx_http_spdy_module was used with the "client_body_in_file_only"
       directive.

    *) Bugfix: a segmentation fault might occur on start or during
       reconfiguration if the "try_files" directive was used with an empty
       parameter.

    *) Bugfix: the $request_time variable did not work in nginx/Windows.

    *) Bugfix: in the ngx_http_auth_basic_module when using "$apr1$"
       password encryption method.
       Thanks to Markus Linnala.

    *) Bugfix: in the ngx_http_autoindex_module.

    *) Bugfix: in the mail proxy server.


Changes with nginx 1.4.2                                         17 Jul 2013

    *) Bugfix: the $r->header_in() embedded perl method did not return value
       of the "Cookie" and "X-Forwarded-For" request header lines; the bug
       had appeared in 1.3.14.

    *) Bugfix: nginx could not be built with the ngx_mail_ssl_module, but
       without ngx_http_ssl_module; the bug had appeared in 1.3.14.

    *) Bugfix: in the "proxy_set_body" directive.
       Thanks to Lanshun Zhou.

    *) Bugfix: the "fail_timeout" parameter of the "server" directive in the
       "upstream" context might not work if "max_fails" parameter was used;
       the bug had appeared in 1.3.0.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "ssl_stapling" directive was used.
       Thanks to Piotr Sikora.

    *) Bugfix: nginx/Windows might stop accepting connections if several
       worker processes were used.


Changes with nginx 1.4.1                                         07 May 2013

    *) Security: a stack-based buffer overflow might occur in a worker
       process while handling a specially crafted request, potentially
       resulting in arbitrary code execution (CVE-2013-2028); the bug had
       appeared in 1.3.9.
       Thanks to Greg MacManus, iSIGHT Partners Labs.


Changes with nginx 1.4.0                                         24 Apr 2013

    *) Bugfix: nginx could not be built with the ngx_http_perl_module if the
       --with-openssl option was used; the bug had appeared in 1.3.16.

    *) Bugfix: in a request body handling in the ngx_http_perl_module; the
       bug had appeared in 1.3.9.


Changes with nginx 1.3.16                                        16 Apr 2013

    *) Bugfix: a segmentation fault might occur in a worker process if
       subrequests were used; the bug had appeared in 1.3.9.

    *) Bugfix: the "tcp_nodelay" directive caused an error if a WebSocket
       connection was proxied into a unix domain socket.

    *) Bugfix: the $upstream_response_length variable has an incorrect value
       "0" if buffering was not used.
       Thanks to Piotr Sikora.

    *) Bugfix: in the eventport and /dev/poll methods.


Changes with nginx 1.3.15                                        26 Mar 2013

    *) Change: opening and closing a connection without sending any data in
       it is no longer logged to access_log with error code 400.

    *) Feature: the ngx_http_spdy_module.
       Thanks to Automattic for sponsoring this work.

    *) Feature: the "limit_req_status" and "limit_conn_status" directives.
       Thanks to Nick Marden.

    *) Feature: the "image_filter_interlace" directive.
       Thanks to Ian Babrou.

    *) Feature: $connections_waiting variable in the
       ngx_http_stub_status_module.

    *) Feature: the mail proxy module now supports IPv6 backends.

    *) Bugfix: request body might be transmitted incorrectly when retrying a
       request to the next upstream server; the bug had appeared in 1.3.9.
       Thanks to Piotr Sikora.

    *) Bugfix: in the "client_body_in_file_only" directive; the bug had
       appeared in 1.3.9.

    *) Bugfix: responses might hang if subrequests were used and a DNS error
       happened during subrequest processing.
       Thanks to Lanshun Zhou.

    *) Bugfix: in backend usage accounting.


Changes with nginx 1.3.14                                        05 Mar 2013

    *) Feature: $connections_active, $connections_reading, and
       $connections_writing variables in the ngx_http_stub_status_module.

    *) Feature: support of WebSocket connections in the
       ngx_http_uwsgi_module and ngx_http_scgi_module.

    *) Bugfix: in virtual servers handling with SNI.

    *) Bugfix: new sessions were not always stored if the "ssl_session_cache
       shared" directive was used and there was no free space in shared
       memory.
       Thanks to Piotr Sikora.

    *) Bugfix: multiple X-Forwarded-For headers were handled incorrectly.
       Thanks to Neal Poole for sponsoring this work.

    *) Bugfix: in the ngx_http_mp4_module.
       Thanks to Gernot Vormayr.


Changes with nginx 1.3.13                                        19 Feb 2013

    *) Change: a compiler with name "cc" is now used by default.

    *) Feature: support for proxying of WebSocket connections.
       Thanks to Apcera and CloudBees for sponsoring this work.

    *) Feature: the "auth_basic_user_file" directive supports "{SHA}"
       password encryption method.
       Thanks to Louis Opter.


Changes with nginx 1.3.12                                        05 Feb 2013

    *) Feature: variables support in the "proxy_bind", "fastcgi_bind",
       "memcached_bind", "scgi_bind", and "uwsgi_bind" directives.

    *) Feature: the $pipe, $request_length, $time_iso8601, and $time_local
       variables can now be used not only in the "log_format" directive.
       Thanks to Kiril Kalchev.

    *) Feature: IPv6 support in the ngx_http_geoip_module.
       Thanks to Gregor Kališnik.

    *) Bugfix: in the "proxy_method" directive.

    *) Bugfix: a segmentation fault might occur in a worker process if
       resolver was used with the poll method.

    *) Bugfix: nginx might hog CPU during SSL handshake with a backend if
       the select, poll, or /dev/poll methods were used.

    *) Bugfix: the "[crit] SSL_write() failed (SSL:)" error.

    *) Bugfix: in the "client_body_in_file_only" directive; the bug had
       appeared in 1.3.9.

    *) Bugfix: in the "fastcgi_keep_conn" directive.


Changes with nginx 1.3.11                                        10 Jan 2013

    *) Bugfix: a segmentation fault might occur if logging was used; the bug
       had appeared in 1.3.10.

    *) Bugfix: the "proxy_pass" directive did not work with IP addresses
       without port specified; the bug had appeared in 1.3.10.

    *) Bugfix: a segmentation fault occurred on start or during
       reconfiguration if the "keepalive" directive was specified more than
       once in a single upstream block.

    *) Bugfix: parameter "default" of the "geo" directive did not set
       default value for IPv6 addresses.


Changes with nginx 1.3.10                                        25 Dec 2012

    *) Change: domain names specified in configuration file are now resolved
       to IPv6 addresses as well as IPv4 ones.

    *) Change: now if the "include" directive with mask is used on Unix
       systems, included files are sorted in alphabetical order.

    *) Change: the "add_header" directive adds headers to 201 responses.

    *) Feature: the "geo" directive now supports IPv6 addresses in CIDR
       notation.

    *) Feature: the "flush" and "gzip" parameters of the "access_log"
       directive.

    *) Feature: variables support in the "auth_basic" directive.

    *) Bugfix: nginx could not be built with the ngx_http_perl_module in
       some cases.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       ngx_http_xslt_module was used.

    *) Bugfix: nginx could not be built on MacOSX in some cases.
       Thanks to Piotr Sikora.

    *) Bugfix: the "limit_rate" directive with high rates might result in
       truncated responses on 32-bit platforms.
       Thanks to Alexey Antropov.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "if" directive was used.
       Thanks to Piotr Sikora.

    *) Bugfix: a "100 Continue" response was issued with "413 Request Entity
       Too Large" responses.

    *) Bugfix: the "image_filter", "image_filter_jpeg_quality" and
       "image_filter_sharpen" directives might be inherited incorrectly.
       Thanks to Ian Babrou.

    *) Bugfix: "crypt_r() failed" errors might appear if the "auth_basic"
       directive was used on Linux.

    *) Bugfix: in backup servers handling.
       Thanks to Thomas Chen.

    *) Bugfix: proxied HEAD requests might return incorrect response if the
       "gzip" directive was used.


Changes with nginx 1.3.9                                         27 Nov 2012

    *) Feature: support for chunked transfer encoding while reading client
       request body.

    *) Feature: the $request_time and $msec variables can now be used not
       only in the "log_format" directive.

    *) Bugfix: cache manager and cache loader processes might not be able to
       start if more than 512 listen sockets were used.

    *) Bugfix: in the ngx_http_dav_module.


Changes with nginx 1.3.8                                         30 Oct 2012

    *) Feature: the "optional_no_ca" parameter of the "ssl_verify_client"
       directive.
       Thanks to Mike Kazantsev and Eric O'Connor.

    *) Feature: the $bytes_sent, $connection, and $connection_requests
       variables can now be used not only in the "log_format" directive.
       Thanks to Benjamin Grössing.

    *) Feature: the "auto" parameter of the "worker_processes" directive.

    *) Bugfix: "cache file ... has md5 collision" alert.

    *) Bugfix: in the ngx_http_gunzip_filter_module.

    *) Bugfix: in the "ssl_stapling" directive.


Changes with nginx 1.3.7                                         02 Oct 2012

    *) Feature: OCSP stapling support.
       Thanks to Comodo, DigiCert and GlobalSign for sponsoring this work.

    *) Feature: the "ssl_trusted_certificate" directive.

    *) Feature: resolver now randomly rotates addresses returned from cache.
       Thanks to Anton Jouline.

    *) Bugfix: OpenSSL 0.9.7 compatibility.


Changes with nginx 1.3.6                                         12 Sep 2012

    *) Feature: the ngx_http_gunzip_filter_module.

    *) Feature: the "memcached_gzip_flag" directive.

    *) Feature: the "always" parameter of the "gzip_static" directive.

    *) Bugfix: in the "limit_req" directive; the bug had appeared in 1.1.14.
       Thanks to Charles Chen.

    *) Bugfix: nginx could not be built by gcc 4.7 with -O2 optimization if
       the --with-ipv6 option was used.


Changes with nginx 1.3.5                                         21 Aug 2012

    *) Change: the ngx_http_mp4_module module no longer skips tracks in
       formats other than H.264 and AAC.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "map" directive was used with variables as values.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "geo" directive was used with the "ranges" parameter but without the
       "default" parameter; the bug had appeared in 0.8.43.
       Thanks to Zhen Chen and Weibin Yao.

    *) Bugfix: in the -p command-line parameter handling.

    *) Bugfix: in the mail proxy server.

    *) Bugfix: of minor potential bugs.
       Thanks to Coverity.

    *) Bugfix: nginx/Windows could not be built with Visual Studio 2005
       Express.
       Thanks to HAYASHI Kentaro.


Changes with nginx 1.3.4                                         31 Jul 2012

    *) Change: the "ipv6only" parameter is now turned on by default for
       listening IPv6 sockets.

    *) Feature: the Clang compiler support.

    *) Bugfix: extra listening sockets might be created.
       Thanks to Roman Odaisky.

    *) Bugfix: nginx/Windows might hog CPU if a worker process failed to
       start.
       Thanks to Ricardo Villalobos Guevara.

    *) Bugfix: the "proxy_pass_header", "fastcgi_pass_header",
       "scgi_pass_header", "uwsgi_pass_header", "proxy_hide_header",
       "fastcgi_hide_header", "scgi_hide_header", and "uwsgi_hide_header"
       directives might be inherited incorrectly.


Changes with nginx 1.3.3                                         10 Jul 2012

    *) Feature: entity tags support and the "etag" directive.

    *) Bugfix: trailing dot in a source value was not ignored if the "map"
       directive was used with the "hostnames" parameter.

    *) Bugfix: incorrect location might be used to process a request if a
       URI was changed via a "rewrite" directive before an internal redirect
       to a named location.


Changes with nginx 1.3.2                                         26 Jun 2012

    *) Change: the "single" parameter of the "keepalive" directive is now
       ignored.

    *) Change: SSL compression is now disabled when using all versions of
       OpenSSL, including ones prior to 1.0.0.

    *) Feature: it is now possible to use the "ip_hash" directive to balance
       IPv6 clients.

    *) Feature: the $status variable can now be used not only in the
       "log_format" directive.

    *) Bugfix: a segmentation fault might occur in a worker process on
       shutdown if the "resolver" directive was used.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       ngx_http_mp4_module was used.

    *) Bugfix: in the ngx_http_mp4_module.

    *) Bugfix: a segmentation fault might occur in a worker process if
       conflicting wildcard server names were used.

    *) Bugfix: nginx might be terminated abnormally on a SIGBUS signal on
       ARM platform.

    *) Bugfix: an alert "sendmsg() failed (9: Bad file number)" on HP-UX
       while reconfiguration.


Changes with nginx 1.3.1                                         05 Jun 2012

    *) Security: now nginx/Windows ignores trailing dot in URI path
       component, and does not allow URIs with ":$" in it.
       Thanks to Vladimir Kochetkov, Positive Research Center.

    *) Feature: the "proxy_pass", "fastcgi_pass", "scgi_pass", "uwsgi_pass"
       directives, and the "server" directive inside the "upstream" block,
       now support IPv6 addresses.

    *) Feature: the "resolver" directive now supports IPv6 addresses and an
       optional port specification.

    *) Feature: the "least_conn" directive inside the "upstream" block.

    *) Feature: it is now possible to specify a weight for servers while
       using the "ip_hash" directive.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "image_filter" directive was used; the bug had appeared in 1.3.0.

    *) Bugfix: nginx could not be built with ngx_cpp_test_module; the bug
       had appeared in 1.1.12.

    *) Bugfix: access to variables from SSI and embedded perl module might
       not work after reconfiguration.
       Thanks to Yichun Zhang.

    *) Bugfix: in the ngx_http_xslt_filter_module.
       Thanks to Kuramoto Eiji.

    *) Bugfix: memory leak if $geoip_org variable was used.
       Thanks to Denis F. Latypoff.

    *) Bugfix: in the "proxy_cookie_domain" and "proxy_cookie_path"
       directives.


Changes with nginx 1.3.0                                         15 May 2012

    *) Feature: the "debug_connection" directive now supports IPv6 addresses
       and the "unix:" parameter.

    *) Feature: the "set_real_ip_from" directive and the "proxy" parameter
       of the "geo" directive now support IPv6 addresses.

    *) Feature: the "real_ip_recursive", "geoip_proxy", and
       "geoip_proxy_recursive" directives.

    *) Feature: the "proxy_recursive" parameter of the "geo" directive.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "resolver" directive was used.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "fastcgi_pass", "scgi_pass", or "uwsgi_pass" directives were used and
       backend returned incorrect response.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "rewrite" directive was used and new request arguments in a
       replacement used variables.

    *) Bugfix: nginx might hog CPU if the open file resource limit was
       reached.

    *) Bugfix: nginx might loop infinitely over backends if the
       "proxy_next_upstream" directive with the "http_404" parameter was
       used and there were backup servers specified in an upstream block.

    *) Bugfix: adding the "down" parameter of the "server" directive might
       cause unneeded client redistribution among backend servers if the
       "ip_hash" directive was used.

    *) Bugfix: socket leak.
       Thanks to Yichun Zhang.

    *) Bugfix: in the ngx_http_fastcgi_module.


Changes with nginx 1.2.0                                         23 Apr 2012

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "try_files" directive was used; the bug had appeared in 1.1.19.

    *) Bugfix: response might be truncated if there were more than IOV_MAX
       buffers used.

    *) Bugfix: in the "crop" parameter of the "image_filter" directive.
       Thanks to Maxim Bublis.


Changes with nginx 1.1.19                                        12 Apr 2012

    *) Security: specially crafted mp4 file might allow to overwrite memory
       locations in a worker process if the ngx_http_mp4_module was used,
       potentially resulting in arbitrary code execution (CVE-2012-2089).
       Thanks to Matthew Daley.

    *) Bugfix: nginx/Windows might be terminated abnormally.
       Thanks to Vincent Lee.

    *) Bugfix: nginx hogged CPU if all servers in an upstream were marked as
       "backup".

    *) Bugfix: the "allow" and "deny" directives might be inherited
       incorrectly if they were used with IPv6 addresses.

    *) Bugfix: the "modern_browser" and "ancient_browser" directives might
       be inherited incorrectly.

    *) Bugfix: timeouts might be handled incorrectly on Solaris/SPARC.

    *) Bugfix: in the ngx_http_mp4_module.


Changes with nginx 1.1.18                                        28 Mar 2012

    *) Change: keepalive connections are no longer disabled for Safari by
       default.

    *) Feature: the $connection_requests variable.

    *) Feature: $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd and
       $tcpinfo_rcv_space variables.

    *) Feature: the "worker_cpu_affinity" directive now works on FreeBSD.

    *) Feature: the "xslt_param" and "xslt_string_param" directives.
       Thanks to Samuel Behan.

    *) Bugfix: in configure tests.
       Thanks to Piotr Sikora.

    *) Bugfix: in the ngx_http_xslt_filter_module.

    *) Bugfix: nginx could not be built on Debian GNU/Hurd.


Changes with nginx 1.1.17                                        15 Mar 2012

    *) Security: content of previously freed memory might be sent to a
       client if backend returned specially crafted response.
       Thanks to Matthew Daley.

    *) Bugfix: in the embedded perl module if used from SSI.
       Thanks to Matthew Daley.

    *) Bugfix: in the ngx_http_uwsgi_module.


Changes with nginx 1.1.16                                        29 Feb 2012

    *) Change: the simultaneous subrequest limit has been raised to 200.

    *) Feature: the "from" parameter of the "disable_symlinks" directive.

    *) Feature: the "return" and "error_page" directives can now be used to
       return 307 redirections.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "resolver" directive was used and there was no "error_log" directive
       specified at global level.
       Thanks to Roman Arutyunyan.

    *) Bugfix: a segmentation fault might occur in a worker process if the
       "proxy_http_version 1.1" or "fastcgi_keep_conn on" directives were
       used.

    *) Bugfix: memory leaks.
       Thanks to Lanshun Zhou.

    *) Bugfix: in the "disable_symlinks" directive.

    *) Bugfix: on ZFS filesystem disk cache size might be calculated
       incorrectly; the bug had appeared in 1.0.1.

    *) Bugfix: nginx could not be built by the icc 12.1 compiler.

    *) Bugfix: nginx could not be built by gcc on Solaris; the bug had
       appeared in 1.1.15.


Changes with nginx 1.1.15                                        15 Feb 2012

    *) Feature: the "disable_symlinks" directive.

    *) Feature: the "proxy_cookie_domain" and "proxy_cookie_path"
       directives.

    *) Bugfix: nginx might log incorrect error "upstream prematurely closed
       connection" instead of correct "upstream sent too big header" one.
       Thanks to Feibo Li.

    *) Bugfix: nginx could not be built with the ngx_http_perl_module if the
       --with-openssl option was used.

    *) Bugfix: the number of internal redirects to named locations was not
       limited.

    *) Bugfix: calling $r->flush() multiple times might cause errors in the
       ngx_http_gzip_filter_module.

    *) Bugfix: temporary files might be not removed if the "proxy_store"
       directive was used with SSI includes.

    *) Bugfix: in some cases non-cacheable variables (such as the $args
       variable) returned old empty cached value.

    *) Bugfix: a segmentation fault might occur in a worker process if too
       many SSI subrequests were issued simultaneously; the bug had appeared
       in 0.7.25.


Changes with nginx 1.1.14                                        30 Jan 2012

    *) Feature: multiple "limit_req" limits may be used simultaneously.

    *) Bugfix: in error handling while connecting to a backend.
       Thanks to Piotr Sikora.

    *) Bugfix: in AIO error handling on FreeBSD.

    *) Bugfix: in the OpenSSL library initialization.

    *) Bugfix: the "proxy_redirect" directives might be inherited
       incorrectly.

    *) Bugfix: memory leak during reconfiguration if the "pcre_jit"
       directive was used.


Changes with nginx 1.1.13                                        16 Jan 2012

    *) Feature: the "TLSv1.1" and "TLSv1.2" parameters of the
       "ssl_protocols" directive.

    *) Bugfix: the "limit_req" directive parameters were not inherited
       correctly; the bug had appeared in 1.1.12.

    *) Bugfix: the "proxy_redirect" directive incorrectly processed
       "Refresh" header if regular expression were used.

    *) Bugfix: the "proxy_cache_use_stale" directive with "error" parameter
       did not return answer from cache if there were no live upstreams.

    *) Bugfix: the "worker_cpu_affinity" directive might not work.

    *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
       1.1.12.

    *) Bugfix: in the ngx_http_mp4_module.


Changes with nginx 1.1.12                                        26 Dec 2011

    *) Change: a "proxy_pass" directive without URI part now uses changed
       URI after redirection with the "error_page" directive.
       Thanks to Lanshun Zhou.

    *) Feature: the "proxy/fastcgi/scgi/uwsgi_cache_lock",
       "proxy/fastcgi/scgi/uwsgi_cache_lock_timeout" directives.

    *) Feature: the "pcre_jit" directive.

    *) Feature: the "if" SSI command supports captures in regular
       expressions.

    *) Bugfix: the "if" SSI command did not work inside the "block" command.

    *) Bugfix: the "limit_conn_log_level" and "limit_req_log_level"
       directives might not work.

    *) Bugfix: the "limit_rate" directive did not allow to use full
       throughput, even if limit value was very high.

    *) Bugfix: the "sendfile_max_chunk" directive did not work, if the
       "limit_rate" directive was used.

    *) Bugfix: a "proxy_pass" directive without URI part always used
       original request URI if variables were used.

    *) Bugfix: a "proxy_pass" directive without URI part might use original
       request after redirection with the "try_files" directive.
       Thanks to Lanshun Zhou.

    *) Bugfix: in the ngx_http_scgi_module.

    *) Bugfix: in the ngx_http_mp4_module.

    *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
       1.1.9.


Changes with nginx 1.1.11                                        12 Dec 2011

    *) Feature: the "so_keepalive" parameter of the "listen" directive.
       Thanks to Vsevolod Stakhov.

    *) Feature: the "if_not_empty" parameter of the
       "fastcgi/scgi/uwsgi_param" directives.

    *) Feature: the $https variable.

    *) Feature: the "proxy_redirect" directive supports variables in the
       first parameter.

    *) Feature: the "proxy_redirect" directive supports regular expressions.

    *) Bugfix: the $sent_http_cache_control variable might contain a wrong
       value if the "expires" directive was used.
       Thanks to Yichun Zhang.

    *) Bugfix: the "read_ahead" directive might not work combined with
       "try_files" and "open_file_cache".

    *) Bugfix: a segmentation fault might occur in a worker process if small
       time was used in the "inactive" parameter of the "proxy_cache_path"
       directive.

    *) Bugfix: responses from cache might hang.


Changes with nginx 1.1.10                                        30 Nov 2011

    *) Bugfix: a segmentation fault occured in a worker process if AIO was
       used on Linux; the bug had appeared in 1.1.9.


Changes with nginx 1.1.9                                         28 Nov 2011

    *) Change: now double quotes are encoded in an "echo" SSI-command
       output.
       Thanks to Zaur Abasmirzoev.

    *) Feature: the "valid" parameter of the "resolver" directive. By
       default TTL returned by a DNS server is used.
       Thanks to Kirill A. Korinskiy.

    *) Bugfix: nginx might hang after a worker process abnormal termination.

    *) Bugfix: a segmentation fault might occur in a worker process if SNI
       was used; the bug had appeared in 1.1.2.

    *) Bugfix: in the "keepalive_disable" directive; the bug had appeared in
       1.1.8.
       Thanks to Alexander Usov.

    *) Bugfix: SIGWINCH signal did not work after first binary upgrade; the
       bug had appeared in 1.1.1.

    *) Bugfix: backend responses with length not matching "Content-Length"
       header line are no longer cached.

    *) Bugfix: in the "scgi_param" directive, if complex parameters were
       used.

    *) Bugfix: in the "epoll" event method.
       Thanks to Yichun Zhang.

    *) Bugfix: in the ngx_http_flv_module.
       Thanks to Piotr Sikora.

    *) Bugfix: in the ngx_http_mp4_module.

    *) Bugfix: IPv6 addresses are now handled properly in a request line and
       in a "Host" request header line.

    *) Bugfix: "add_header" and "expires" directives did not work if a
       request was proxied and response status code was 206.

    *) Bugfix: nginx could not be built on FreeBSD 10.

    *) Bugfix: nginx could not be built on AIX.


Changes with nginx 1.1.8                                         14 Nov 2011

    *) Change: the ngx_http_limit_zone_module was renamed to the
       ngx_http_limit_conn_module.

    *) Change: the "limit_zone" directive was superseded by the
       "limit_conn_zone" directive with a new syntax.

    *) Feature: support for multiple "limit_conn" limits on the same level.

    *) Feature: the "image_filter_sharpen" directive.

    *) Bugfix: a segmentation fault might occur in a worker process if
       resolver got a big DNS response.
       Thanks to Ben Hawkes.

    *) Bugfix: in cache key calculation if internal MD5 implementation was
       used; the bug had appeared in 1.0.4.

    *) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
       header lines might be passed to backend while caching; or not passed
       without caching if caching was enabled in another part of the
       configuration.

    *) Bugfix: the module ngx_http_mp4_module sent incorrect
       "Content-Length" response header line if the "start" argument was
       used.
       Thanks to Piotr Sikora.


Changes with nginx 1.1.7                                         31 Oct 2011

    *) Feature: support of several DNS servers in the "resolver" directive.
       Thanks to Kirill A. Korinskiy.

    *) Bugfix: a segmentation fault occurred on start or during
       reconfiguration if the "ssl" directive was used at http level and
       there was no "ssl_certificate" defined.

    *) Bugfix: reduced memory consumption while proxying big files if they
       were buffered to disk.

    *) Bugfix: a segmentation fault might occur in a worker process if
       "proxy_http_version 1.1" directive was used.

    *) Bugfix: in the "expires @time" directive.


Changes with nginx 1.1.6                                         17 Oct 2011

    *) Change in internal API: now module context data are cleared while
       internal redirect to named location.
       Requested by Yichun Zhang.

    *) Change: if a server in an upstream failed, only one request will be
       sent to it after fail_timeout; the server will be considered alive if
       it will successfully respond to the request.

    *) Change: now the 0x7F-0x1F characters are escaped as \xXX in an
       access_log.

    *) Feature: "proxy/fastcgi/scgi/uwsgi_ignore_headers" directives support
       the following additional values: X-Accel-Limit-Rate,
       X-Accel-Buffering, X-Accel-Charset.

    *) Feature: decrease of memory consumption if SSL is used.

    *) Bugfix: some UTF-8 characters were processed incorrectly.
       Thanks to Alexey Kuts.

    *) Bugfix: the ngx_http_rewrite_module directives specified at "server"
       level were executed twice if no matching locations were defined.

    *) Bugfix: a socket leak might occurred if "aio sendfile" was used.

    *) Bugfix: connections with fast clients might be closed after
       send_timeout if file AIO was used.

    *) Bugfix: in the ngx_http_autoindex_module.

    *) Bugfix: the module ngx_http_mp4_module did not support seeking on
       32-bit platforms.


Changes with nginx 1.1.5                                         05 Oct 2011

    *) Feature: the "uwsgi_buffering" and "scgi_buffering" directives.
       Thanks to Peter Smit.

    *) Bugfix: non-cacheable responses might be cached if
       "proxy_cache_bypass" directive was used.
       Thanks to John Ferlito.

    *) Bugfix: in HTTP/1.1 support in the ngx_http_proxy_module.

    *) Bugfix: cached responses with an empty body were returned
       incorrectly; the bug had appeared in 0.8.31.

    *) Bugfix: 201 responses of the ngx_http_dav_module were incorrect; the
       bug had appeared in 0.8.32.

    *) Bugfix: in the "return" directive.

    *) Bugfix: the "ssl_session_cache builtin" directive caused segmentation
       fault; the bug had appeared in 1.1.1.


Changes with nginx 1.1.4                                         20 Sep 2011

    *) Feature: the ngx_http_upstream_keepalive module.

    *) Feature: the "proxy_http_version" directive.

    *) Feature: the "fastcgi_keep_conn" directive.

    *) Feature: the "worker_aio_requests" directive.

    *) Bugfix: if nginx was built --with-file-aio it could not be run on
       Linux kernel which did not support AIO.

    *) Bugfix: in Linux AIO error processing.
       Thanks to Hagai Avrahami.

    *) Bugfix: reduced memory consumption for long-lived requests.

    *) Bugfix: the module ngx_http_mp4_module did not support 64-bit MP4
       "co64" atom.


Changes with nginx 1.1.3                                         14 Sep 2011

    *) Feature: the module ngx_http_mp4_module.

    *) Bugfix: in Linux AIO combined with open_file_cache.

    *) Bugfix: open_file_cache did not update file info on retest if file
       was not atomically changed.

    *) Bugfix: nginx could not be built on MacOSX 10.7.


Changes with nginx 1.1.2                                         05 Sep 2011

    *) Change: now if total size of all ranges is greater than source
       response size, then nginx disables ranges and returns just the source
       response.

    *) Feature: the "max_ranges" directive.

    *) Bugfix: the "ssl_verify_client", "ssl_verify_depth", and
       "ssl_prefer_server_ciphers" directives might work incorrectly if SNI
       was used.

    *) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort"
       directives.


Changes with nginx 1.1.1                                         22 Aug 2011

    *) Change: now cache loader processes either as many files as specified
       by "loader_files" parameter or works no longer than time specified by
       the "loader_threshold" parameter during each iteration.

    *) Change: now SIGWINCH signal works only in daemon mode.

    *) Feature: now shared zones and caches use POSIX semaphores on Solaris.
       Thanks to Den Ivanov.

    *) Feature: accept filters are now supported on NetBSD.

    *) Bugfix: nginx could not be built on Linux 3.0.

    *) Bugfix: nginx did not use gzipping in some cases; the bug had
       appeared in 1.1.0.

    *) Bugfix: request body might be processed incorrectly if client used
       pipelining.

    *) Bugfix: in the "request_body_in_single_buf" directive.

    *) Bugfix: in "proxy_set_body" and "proxy_pass_request_body" directives
       if SSL connection to backend was used.

    *) Bugfix: nginx hogged CPU if all servers in an upstream were marked as
       "down".

    *) Bugfix: a segmentation fault might occur during reconfiguration if
       ssl_session_cache was defined but not used in previous configuration.

    *) Bugfix: a segmentation fault might occur in a worker process if many
       backup servers were used in an upstream.

    *) Bugfix: a segmentation fault might occur in a worker process if
       "fastcgi/scgi/uwsgi_param" directives were used with values starting
       with "HTTP_"; the bug had appeared in 0.8.40.


Changes with nginx 1.1.0                                         01 Aug 2011

    *) Feature: cache loader run time decrease.

    *) Feature: "loader_files", "loader_sleep", and "loader_threshold"
       options of the "proxy/fastcgi/scgi/uwsgi_cache_path" directives.

    *) Feature: loading time decrease of configuration with large number of
       HTTPS sites.

    *) Feature: now nginx supports ECDHE key exchange ciphers.
       Thanks to Adrian Kotelba.

    *) Feature: the "lingering_close" directive.
       Thanks to Maxim Dounin.

    *) Bugfix: in closing connection for pipelined requests.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx did not disable gzipping if client sent "gzip;q=0" in
       "Accept-Encoding" request header line.

    *) Bugfix: in timeout in unbuffered proxied mode.
       Thanks to Maxim Dounin.

    *) Bugfix: memory leaks when a "proxy_pass" directive contains variables
       and proxies to an HTTPS backend.
       Thanks to Maxim Dounin.

    *) Bugfix: in parameter validaiton of a "proxy_pass" directive with
       variables.
       Thanks to Lanshun Zhou.

    *) Bugfix: SSL did not work on QNX.
       Thanks to Maxim Dounin.

    *) Bugfix: SSL modules could not be built by gcc 4.6 without
       --with-debug option.


Changes with nginx 1.0.5                                         19 Jul 2011

    *) Change: now default SSL ciphers are "HIGH:!aNULL:!MD5".
       Thanks to Rob Stradling.

    *) Feature: the "referer_hash_max_size" and "referer_hash_bucket_size"
       directives.
       Thanks to Witold Filipczyk.

    *) Feature: $uid_reset variable.

    *) Bugfix: a segmentation fault might occur in a worker process, if a
       caching was used.
       Thanks to Lanshun Zhou.

    *) Bugfix: worker processes may got caught in an endless loop during
       reconfiguration, if a caching was used; the bug had appeared in
       0.8.48.
       Thanks to Maxim Dounin.

    *) Bugfix: "stalled cache updating" alert.
       Thanks to Maxim Dounin.


Changes with nginx 1.0.4                                         01 Jun 2011

    *) Change: now regular expressions case sensitivity in the "map"
       directive is given by prefixes "~" or "~*".

    *) Feature: now shared zones and caches use POSIX semaphores on Linux.
       Thanks to Denis F. Latypoff.

    *) Bugfix: "stalled cache updating" alert.

    *) Bugfix: nginx could not be built --without-http_auth_basic_module;
       the bug had appeared in 1.0.3.


Changes with nginx 1.0.3                                         25 May 2011

    *) Feature: the "auth_basic_user_file" directive supports "$apr1",
       "{PLAIN}", and "{SSHA}" password encryption methods.
       Thanks to Maxim Dounin.

    *) Feature: the "geoip_org" directive and $geoip_org variable.
       Thanks to Alexander Uskov, Arnaud Granal, and Denis F. Latypoff.

    *) Feature: ngx_http_geo_module and ngx_http_geoip_module support IPv4
       addresses mapped to IPv6 addresses.

    *) Bugfix: a segmentation fault occurred in a worker process during
       testing IPv4 address mapped to IPv6 address, if access or deny rules
       were defined only for IPv6; the bug had appeared in 0.8.22.

    *) Bugfix: a cached response may be broken if "proxy/fastcgi/scgi/
       uwsgi_cache_bypass" and "proxy/fastcgi/scgi/uwsgi_no_cache" directive
       values were different; the bug had appeared in 0.8.46.


Changes with nginx 1.0.2                                         10 May 2011

    *) Feature: now shared zones and caches use POSIX semaphores.

    *) Bugfix: in the "rotate" parameter of the "image_filter" directive.
       Thanks to Adam Bocim.

    *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
       1.0.1.


Changes with nginx 1.0.1                                         03 May 2011

    *) Change: now the "split_clients" directive uses MurmurHash2 algorithm
       because of better distribution.
       Thanks to Oleg Mamontov.

    *) Change: now long strings starting with zero are not considered as
       false values.
       Thanks to Maxim Dounin.

    *) Change: now nginx uses a default listen backlog value 511 on Linux.

    *) Feature: the $upstream_... variables may be used in the SSI and perl
       modules.

    *) Bugfix: now nginx limits better disk cache size.
       Thanks to Oleg Mamontov.

    *) Bugfix: a segmentation fault might occur while parsing incorrect IPv4
       address; the bug had appeared in 0.9.3.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx could not be built by gcc 4.6 without --with-debug
       option.

    *) Bugfix: nginx could not be built on Solaris 9 and earlier; the bug
       had appeared in 0.9.3.
       Thanks to Dagobert Michelsen.

    *) Bugfix: $request_time variable had invalid values if subrequests were
       used; the bug had appeared in 0.8.47.
       Thanks to Igor A. Valcov.


Changes with nginx 1.0.0                                         12 Apr 2011

    *) Bugfix: a cache manager might hog CPU after reload.
       Thanks to Maxim Dounin.

    *) Bugfix: an "image_filter crop" directive worked incorrectly coupled
       with an "image_filter rotate 180" directive.

    *) Bugfix: a "satisfy any" directive disabled custom 401 error page.


Changes with nginx 0.9.7                                         04 Apr 2011

    *) Feature: now keepalive connections may be closed premature, if there
       are no free worker connections.
       Thanks to Maxim Dounin.

    *) Feature: the "rotate" parameter of the "image_filter" directive.
       Thanks to Adam Bocim.

    *) Bugfix: a case when a backend in "fastcgi_pass", "scgi_pass", or
       "uwsgi_pass" directives is given by expression and refers to a
       defined upstream.


Changes with nginx 0.9.6                                         21 Mar 2011

    *) Feature: the "map" directive supports regular expressions as value of
       the first parameter.

    *) Feature: $time_iso8601 access_log variable.
       Thanks to Michael Lustfield.


Changes with nginx 0.9.5                                         21 Feb 2011

    *) Change: now nginx uses a default listen backlog value -1 on Linux.
       Thanks to Andrei Nigmatulin.

    *) Feature: the "utf8" parameter of "geoip_country" and "geoip_city"
       directives.
       Thanks to Denis F. Latypoff.

    *) Bugfix: in a default "proxy_redirect" directive if "proxy_pass"
       directive has no URI part.
       Thanks to Maxim Dounin.

    *) Bugfix: an "error_page" directive did not work with nonstandard error
       codes; the bug had appeared in 0.8.53.
       Thanks to Maxim Dounin.


Changes with nginx 0.9.4                                         21 Jan 2011

    *) Feature: the "server_name" directive supports the $hostname variable.

    *) Feature: 494 code for "Request Header Too Large" error.


Changes with nginx 0.9.3                                         13 Dec 2010

    *) Bugfix: if there was a single server for given IPv6 address:port
       pair, then captures in regular expressions in a "server_name"
       directive did not work.

    *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
       0.9.0.


Changes with nginx 0.9.2                                         06 Dec 2010

    *) Feature: the "If-Unmodified-Since" client request header line
       support.

    *) Workaround: fallback to accept() syscall if accept4() was not
       implemented; the issue had appeared in 0.9.0.

    *) Bugfix: nginx could not be built on Cygwin; the bug had appeared in
       0.9.0.

    *) Bugfix: for OpenSSL vulnerability CVE-2010-4180.
       Thanks to Maxim Dounin.


Changes with nginx 0.9.1                                         30 Nov 2010

    *) Bugfix: "return CODE message" directives did not work; the bug had
       appeared in 0.9.0.


Changes with nginx 0.9.0                                         29 Nov 2010

    *) Feature: the "keepalive_disable" directive.

    *) Feature: the "map" directive supports variables as value of a defined
       variable.

    *) Feature: the "map" directive supports empty strings as value of the
       first parameter.

    *) Feature: the "map" directive supports expressions as the first
       parameter.

    *) Feature: nginx(8) manual page.
       Thanks to Sergey Osokin.

    *) Feature: Linux accept4() support.
       Thanks to Simon Liu.

    *) Workaround: elimination of Linux linker warning about "sys_errlist"
       and "sys_nerr"; the warning had appeared in 0.8.35.

    *) Bugfix: a segmentation fault might occur in a worker process, if the
       "auth_basic" directive was used.
       Thanks to Michail Laletin.

    *) Bugfix: compatibility with ngx_http_eval_module; the bug had appeared
       in 0.8.42.


Changes with nginx 0.8.53                                        18 Oct 2010

    *) Feature: now the "error_page" directive allows to change a status
       code in a redirect.

    *) Feature: the "gzip_disable" directive supports special "degradation"
       mask.

    *) Bugfix: a socket leak might occurred if file AIO was used.
       Thanks to Maxim Dounin.

    *) Bugfix: if the first server had no "listen" directive and there was
       no explicit default server, then a next server with a "listen"
       directive became the default server; the bug had appeared in 0.8.21.


Changes with nginx 0.8.52                                        28 Sep 2010

    *) Bugfix: nginx used SSL mode for a listen socket if any listen option
       was set; the bug had appeared in 0.8.51.


Changes with nginx 0.8.51                                        27 Sep 2010

    *) Change: the "secure_link_expires" directive has been canceled.

    *) Change: a logging level of resolver errors has been lowered from
       "alert" to "error".

    *) Feature: now a listen socket "ssl" parameter may be set several
       times.


Changes with nginx 0.8.50                                        02 Sep 2010

    *) Feature: the "secure_link", "secure_link_md5", and
       "secure_link_expires" directives of the ngx_http_secure_link_module.

    *) Feature: the -q switch.
       Thanks to Gena Makhomed.

    *) Bugfix: worker processes may got caught in an endless loop during
       reconfiguration, if a caching was used; the bug had appeared in
       0.8.48.

    *) Bugfix: in the "gzip_disable" directive.
       Thanks to Derrick Petzold.

    *) Bugfix: nginx/Windows could not send stop, quit, reopen, and reload
       signals to a process run in other session.


Changes with nginx 0.8.49                                        09 Aug 2010

    *) Feature: the "image_filter_jpeg_quality" directive supports
       variables.

    *) Bugfix: a segmentation fault might occur in a worker process, if the
       $geoip_region_name variables was used; the bug had appeared in
       0.8.48.

    *) Bugfix: errors intercepted by error_page were cached only for next
       request; the bug had appeared in 0.8.48.


Changes with nginx 0.8.48                                        03 Aug 2010

    *) Change: now the "server_name" directive default value is an empty
       name "".
       Thanks to Gena Makhomed.

    *) Change: now the "server_name_in_redirect" directive default value is
       "off".

    *) Feature: the $geoip_dma_code, $geoip_area_code, and
       $geoip_region_name variables.
       Thanks to Christine McGonagle.

    *) Bugfix: the "proxy_pass", "fastcgi_pass", "uwsgi_pass", and
       "scgi_pass" directives were not inherited inside "limit_except"
       blocks.

    *) Bugfix: the "proxy_cache_min_uses", "fastcgi_cache_min_uses"
       "uwsgi_cache_min_uses", and "scgi_cache_min_uses" directives did not
       work; the bug had appeared in 0.8.46.

    *) Bugfix: the "fastcgi_split_path_info" directive used incorrectly
       captures, if only parts of an URI were captured.
       Thanks to Yuriy Taraday and Frank Enderle.

    *) Bugfix: the "rewrite" directive did not escape a ";" character during
       copying from URI to query string.
       Thanks to Daisuke Murase.

    *) Bugfix: the ngx_http_image_filter_module closed a connection, if an
       image was larger than "image_filter_buffer" size.


Changes with nginx 0.8.47                                        28 Jul 2010

    *) Bugfix: $request_time variable had invalid values for subrequests.

    *) Bugfix: errors intercepted by error_page could not be cached.

    *) Bugfix: a cache manager process may got caught in an endless loop, if
       max_size parameter was used; the bug had appeared in 0.8.46.


Changes with nginx 0.8.46                                        19 Jul 2010

    *) Change: now the "proxy_no_cache", "fastcgi_no_cache",
       "uwsgi_no_cache", and "scgi_no_cache" directives affect on a cached
       response saving only.

    *) Feature: the "proxy_cache_bypass", "fastcgi_cache_bypass",
       "uwsgi_cache_bypass", and "scgi_cache_bypass" directives.

    *) Bugfix: nginx did not free memory in cache keys zones if there was an
       error during working with backend: the memory was freed only after
       inactivity time or on memory low condition.


Changes with nginx 0.8.45                                        13 Jul 2010

    *) Feature: ngx_http_xslt_filter improvements.
       Thanks to Laurence Rowe.

    *) Bugfix: SSI response might be truncated after include with
       wait="yes"; the bug had appeared in 0.7.25.
       Thanks to Maxim Dounin.

    *) Bugfix: the "listen" directive did not support the "setfib=0"
       parameter.


Changes with nginx 0.8.44                                        05 Jul 2010

    *) Change: now nginx does not cache by default backend responses, if
       they have a "Set-Cookie" header line.

    *) Feature: the "listen" directive supports the "setfib" parameter.
       Thanks to Andrew Filonov.

    *) Bugfix: the "sub_filter" directive might change character case on
       partial match.

    *) Bugfix: compatibility with HP/UX.

    *) Bugfix: compatibility with AIX xlC_r compiler.

    *) Bugfix: nginx treated large SSLv2 packets as plain requests.
       Thanks to Miroslaw Jaworski.


Changes with nginx 0.8.43                                        30 Jun 2010

    *) Feature: large geo ranges base loading speed-up.

    *) Bugfix: an error_page redirection to "location /zero {return 204;}"
       without changing status code kept the error body; the bug had
       appeared in 0.8.42.

    *) Bugfix: nginx might close IPv6 listen socket during reconfiguration.
       Thanks to Maxim Dounin.

    *) Bugfix: the $uid_set variable may be used at any request processing
       stage.


Changes with nginx 0.8.42                                        21 Jun 2010

    *) Change: now nginx tests locations given by regular expressions, if
       request was matched exactly by a location given by a prefix string.
       The previous behavior has been introduced in 0.7.1.

    *) Feature: the ngx_http_scgi_module.
       Thanks to Manlio Perillo.

    *) Feature: a text answer may be added to a "return" directive.


Changes with nginx 0.8.41                                        15 Jun 2010

    *) Security: nginx/Windows worker might be terminated abnormally if a
       requested file name has invalid UTF-8 encoding.

    *) Change: now nginx allows to use spaces in a request line.

    *) Bugfix: the "proxy_redirect" directive changed incorrectly a backend
       "Refresh" response header line.
       Thanks to Andrey Andreew and Max Sogin.

    *) Bugfix: nginx did not support path without host name in "Destination"
       request header line.


Changes with nginx 0.8.40                                        07 Jun 2010

    *) Security: now nginx/Windows ignores default file stream name.
       Thanks to Jose Antonio Vazquez Gonzalez.

    *) Feature: the ngx_http_uwsgi_module.
       Thanks to Roberto De Ioris.

    *) Feature: a "fastcgi_param" directive with value starting with "HTTP_"
       overrides a client request header line.

    *) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
       header lines were passed to FastCGI-server while caching.

    *) Bugfix: listen unix domain socket could not be changed during
       reconfiguration.
       Thanks to Maxim Dounin.


Changes with nginx 0.8.39                                        31 May 2010

    *) Bugfix: an inherited "alias" directive worked incorrectly in
       inclusive location.

    *) Bugfix: in "alias" with variables and "try_files" directives
       combination.

    *) Bugfix: listen unix domain and IPv6 sockets did not inherit while
       online upgrade.
       Thanks to Maxim Dounin.


Changes with nginx 0.8.38                                        24 May 2010

    *) 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.

    *) Bugfix: now "limit_req" delay directive conforms to the described
       algorithm.
       Thanks to Maxim Dounin.

    *) Bugfix: the $uid_got variable might not be used in the SSI and perl
       modules.


Changes with nginx 0.8.37                                        17 May 2010

    *) Feature: the ngx_http_split_clients_module.

    *) Feature: the "map" directive supports keys more than 255 characters.

    *) Bugfix: nginx ignored the "private" and "no-store" values in the
       "Cache-Control" backend response header line.

    *) Bugfix: a "stub" parameter of an "include" SSI directive was not
       used, if empty response has 200 status code.

    *) 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.8.33.
       Thanks to Yichun Zhang.

    *) Bugfix: IMAP connections may hang until they timed out while talking
       to Zimbra server.
       Thanks to Alan Batie.


Changes with nginx 0.8.36                                        22 Apr 2010

    *) Bugfix: the ngx_http_dav_module handled incorrectly the DELETE, COPY,
       and MOVE methods for symlinks.

    *) Bugfix: values of the $query_string, $arg_..., etc. variables cached
       in main request were used by the SSI module in subrequests.

    *) Bugfix: a variable value was repeatedly encoded after each an "echo"
       SSI-command output; the bug had appeared in 0.6.14.

    *) Bugfix: a worker process hung if a FIFO file was requested.
       Thanks to Vicente Aguilar and Maxim Dounin.

    *) Bugfix: OpenSSL-1.0.0 compatibility on 64-bit Linux.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx could not be built --without-http-cache; the bug had
       appeared in 0.8.35.


Changes with nginx 0.8.35                                        01 Apr 2010

    *) Change: now the charset filter runs before the SSI filter.

    *) Feature: the "chunked_transfer_encoding" directive.

    *) 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: a segmentation fault occurred in a worker process, if there
       was large stderr output before FastCGI response; the bug had appeared
       in 0.8.34.
       Thanks to Maxim Dounin.


Changes with nginx 0.8.34                                        03 Mar 2010

    *) Bugfix: nginx did not support all ciphers and digests used in client
       certificates.
       Thanks to Innocenty Enikeew.

    *) Bugfix: nginx cached incorrectly FastCGI responses if there was large
       stderr output before response.

    *) 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.8.33.

    *) Bugfix: the $date_local variable has an incorrect value, if the "%s"
       format was used.
       Thanks to Maxim Dounin.

    *) 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: a geo range returned default value if the range included two
       or more /16 networks and did not begin at /16 network boundary.

    *) Bugfix: a block used in a "stub" parameter of an "include" SSI
       directive was output with "text/plain" MIME type.

    *) Bugfix: $r->sleep() did not work; the bug had appeared in 0.8.11.


Changes with nginx 0.8.33                                        01 Feb 2010

    *) Security: now nginx/Windows ignores trailing spaces in URI.
       Thanks to Dan Crowley, Core Security Technologies.

    *) Security: now nginx/Windows ignores short files names.
       Thanks to Dan Crowley, Core Security Technologies.

    *) Change: now keepalive connections after POST requests are not
       disabled for MSIE 7.0+.
       Thanks to Adam Lounds.

    *) Workaround: now keepalive connections are disabled for Safari.
       Thanks to Joshua Sierles.

    *) Bugfix: if a proxied or FastCGI request was internally redirected to
       another proxied or FastCGI location, then $upstream_response_time
       variable may have abnormally large value; the bug had appeared in
       0.8.7.

    *) Bugfix: a segmentation fault might occur in a worker process, while
       discarding a request body; the bug had appeared in 0.8.11.


Changes with nginx 0.8.32                                        11 Jan 2010

    *) Bugfix: UTF-8 encoding usage in the ngx_http_autoindex_module.
       Thanks to Maxim Dounin.

    *) Bugfix: regular expression named captures worked for two names only.
       Thanks to Maxim Dounin.

    *) Bugfix: now the "localhost" name is used in the "Host" request header
       line, if an unix domain socket is defined in the "auth_http"
       directive.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx did not support chunked transfer encoding for 201
       responses.
       Thanks to Julian Reich.

    *) Bugfix: if the "expires modified" set date in the past, then a
       negative number was set in the "Cache-Control" response header line.
       Thanks to Alex Kapranoff.


Changes with nginx 0.8.31                                        23 Dec 2009

    *) Feature: now the "error_page" directive may redirect the 301 and 302
       responses.

    *) 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.

    *) Bugfix: nginx closed a connection if a cached response had an empty
       body.
       Thanks to Piotr Sikora.

    *) Bugfix: nginx might not be built by gcc 4.x if the -O2 or higher
       optimization option was used.
       Thanks to Maxim Dounin and Denis F. Latypoff.

    *) Bugfix: regular expressions in location were always tested in
       case-sensitive mode; the bug had appeared in 0.8.25.

    *) Bugfix: nginx cached a 304 response if there was the "If-None-Match"
       header line in a proxied request.
       Thanks to Tim Dettrick and David Kostal.

    *) Bugfix: nginx/Windows tried to delete a temporary file twice if the
       file should replace an already existent file.


Changes with nginx 0.8.30                                        15 Dec 2009

    *) Change: now the default buffer size of the
       "large_client_header_buffers" directive is 8K.
       Thanks to Andrew Cholakian.

    *) Feature: the conf/fastcgi.conf for simple FastCGI configurations.

    *) Bugfix: nginx/Windows tried to rename a temporary file twice if the
       file should replace an already existent file.

    *) Bugfix: of "double free or corruption" error issued if host could not
       be resolved; the bug had appeared in 0.8.22.
       Thanks to Konstantin Svist.

    *) Bugfix: in libatomic usage on some platforms.
       Thanks to W-Mark Kubacki.


Changes with nginx 0.8.29                                        30 Nov 2009

    *) Change: now the "009" status code is written to an access log for
       proxied HTTP/0.9 responses.

    *) Feature: the "addition_types", "charset_types", "gzip_types",
       "ssi_types", "sub_filter_types", and "xslt_types" directives support
       an "*" parameter.

    *) Feature: GCC 4.1+ built-in atomic operations usage.
       Thanks to W-Mark Kubacki.

    *) Feature: the --with-libatomic[=DIR] option in the configure.
       Thanks to W-Mark Kubacki.

    *) Bugfix: listen unix domain socket had limited access rights.

    *) Bugfix: cached HTTP/0.9 responses were handled incorrectly.

    *) Bugfix: regular expression named captures given by "?P<...>" did not
       work in a "server_name" directive.
       Thanks to Maxim Dounin.


Changes with nginx 0.8.28                                        23 Nov 2009

    *) Bugfix: nginx could not be built with the --without-pcre parameter;
       the bug had appeared in 0.8.25.


Changes with nginx 0.8.27                                        17 Nov 2009

    *) Bugfix: regular expressions did not work in nginx/Windows; the bug
       had appeared in 0.8.25.


Changes with nginx 0.8.26                                        16 Nov 2009

    *) Bugfix: in captures usage in "rewrite" directive; the bug had
       appeared in 0.8.25.

    *) Bugfix: nginx could not be built without the --with-debug option; the
       bug had appeared in 0.8.25.


Changes with nginx 0.8.25                                        16 Nov 2009

    *) Change: now no message is written in an error log if a variable is
       not found by $r->variable() method.

    *) Feature: the ngx_http_degradation_module.

    *) Feature: regular expression named captures.

    *) Feature: now URI part is not required a "proxy_pass" directive if
       variables are used.

    *) Feature: now the "msie_padding" directive works for Chrome too.

    *) Bugfix: a segmentation fault occurred in a worker process on low
       memory condition; the bug had appeared in 0.8.18.

    *) Bugfix: nginx sent gzipped responses to clients those do not support
       gzip, if "gzip_static on" and "gzip_vary off"; the bug had appeared
       in 0.8.16.


Changes with nginx 0.8.24                                        11 Nov 2009

    *) Bugfix: nginx always added "Content-Encoding: gzip" response header
       line in 304 responses sent by ngx_http_gzip_static_module.

    *) Bugfix: nginx could not be built without the --with-debug option; the
       bug had appeared in 0.8.23.

    *) Bugfix: the "unix:" parameter of the "set_real_ip_from" directive
       inherited incorrectly from previous level.

    *) Bugfix: in resolving empty name.


Changes with nginx 0.8.23                                        11 Nov 2009

    *) Security: now SSL/TLS renegotiation is disabled.
       Thanks to Maxim Dounin.

    *) Bugfix: listen unix domain socket did not inherit while online
       upgrade.

    *) Bugfix: the "unix:" parameter of the "set_real_ip_from" directive did
       not without yet another directive with any IP address.

    *) Bugfix: segmentation fault and infinite looping in resolver.

    *) Bugfix: in resolver.
       Thanks to Artem Bokhan.


Changes with nginx 0.8.22                                        03 Nov 2009

    *) Feature: the "proxy_bind", "fastcgi_bind", and "memcached_bind"
       directives.

    *) Feature: the "access" and the "deny" directives support IPv6.

    *) Feature: the "set_real_ip_from" directive supports IPv6 addresses in
       request headers.

    *) Feature: the "unix:" parameter of the "set_real_ip_from" directive.

    *) Bugfix: nginx did not delete unix domain socket after configuration
       testing.

    *) Bugfix: nginx deleted unix domain socket while online upgrade.

    *) Bugfix: the "!-x" operator did not work.
       Thanks to Maxim Dounin.

    *) Bugfix: a segmentation fault might occur in a worker process, if
       limit_rate was used in HTTPS server.
       Thanks to Maxim Dounin.

    *) Bugfix: a segmentation fault might occur in a worker process while
       $limit_rate logging.
       Thanks to Maxim Dounin.

    *) Bugfix: a segmentation fault might occur in a worker process, if
       there was no "listen" directive in "server" block; the bug had
       appeared in 0.8.21.


Changes with nginx 0.8.21                                        26 Oct 2009

    *) Feature: now the "-V" switch shows TLS SNI support.

    *) Feature: the "listen" directive of the HTTP module supports unix
       domain sockets.
       Thanks to Hongli Lai.

    *) Feature: the "default_server" parameter of the "listen" directive.

    *) Feature: now a "default" parameter is not required to set listen
       socket options.

    *) Bugfix: nginx did not support dates in 2038 year on 32-bit platforms;

    *) Bugfix: socket leak; the bug had appeared in 0.8.11.


Changes with nginx 0.8.20                                        14 Oct 2009

    *) Change: now default SSL ciphers are "HIGH:!ADH:!MD5".

    *) Bugfix: the ngx_http_autoindex_module did not show the trailing slash
       in links to a directory; the bug had appeared in 0.7.15.

    *) Bugfix: nginx did not close a log file set by the --error-log-path
       configuration option; the bug had appeared in 0.7.53.

    *) Bugfix: nginx did not treat a comma as separator in the
       "Cache-Control" backend response header line.

    *) Bugfix: nginx/Windows might not create temporary file, a cache file,
       or "proxy/fastcgi_store"d file if a worker had no enough access
       rights for top level directories.

    *) Bugfix: the "Set-Cookie" and "P3P" FastCGI response header lines were
       not hidden while caching if no "fastcgi_hide_header" directives were
       used with any parameters.

    *) Bugfix: nginx counted incorrectly disk cache size.


Changes with nginx 0.8.19                                        06 Oct 2009

    *) Change: now SSLv2 protocol is disabled by default.

    *) Change: now default SSL ciphers are "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".

    *) Bugfix: a "limit_req" directive did not work; the bug had appeared in
       0.8.18.


Changes with nginx 0.8.18                                        06 Oct 2009

    *) Feature: the "read_ahead" directive.

    *) Feature: now several "perl_modules" directives may be used.

    *) Feature: the "limit_req_log_level" and "limit_conn_log_level"
       directives.

    *) Bugfix: now "limit_req" directive conforms to the leaky bucket
       algorithm.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx did not work on Linux/sparc.
       Thanks to Marcus Ramberg.

    *) Bugfix: nginx sent '\0' in a "Location" response header line on MKCOL
       request.
       Thanks to Xie Zhenye.

    *) Bugfix: zero status code was logged instead of 499 status code; the
       bug had appeared in 0.8.11.

    *) Bugfix: socket leak; the bug had appeared in 0.8.11.


Changes with nginx 0.8.17                                        28 Sep 2009

    *) Security: now "/../" are disabled in "Destination" request header
       line.

    *) Change: now $host variable value is always low case.

    *) Feature: the $ssl_session_id variable.

    *) Bugfix: socket leak; the bug had appeared in 0.8.11.


Changes with nginx 0.8.16                                        22 Sep 2009

    *) Feature: the "image_filter_transparency" directive.

    *) Bugfix: "addition_types" directive was incorrectly named
       "addtion_types".

    *) Bugfix: resolver cache poisoning.
       Thanks to Matthew Dempsky.

    *) Bugfix: memory leak in resolver.
       Thanks to Matthew Dempsky.

    *) Bugfix: invalid request line in $request variable was written in
       access_log only if error_log was set to "info" or "debug" level.

    *) Bugfix: in PNG alpha-channel support in the
       ngx_http_image_filter_module.

    *) Bugfix: nginx always added "Vary: Accept-Encoding" response header
       line, if both "gzip_static" and "gzip_vary" were on.

    *) Bugfix: in UTF-8 encoding support by "try_files" directive in
       nginx/Windows.

    *) Bugfix: in "post_action" directive usage; the bug had appeared in
       0.8.11.
       Thanks to Igor Artemiev.


Changes with nginx 0.8.15                                        14 Sep 2009

    *) Security: a segmentation fault might occur in worker process while
       specially crafted request handling.
       Thanks to Chris Ries.

    *) Bugfix: if names .domain.tld, .sub.domain.tld, and .domain-some.tld
       were defined, then the name .sub.domain.tld was matched by
       .domain.tld.

    *) Bugfix: in transparency support in the ngx_http_image_filter_module.

    *) Bugfix: in file AIO.

    *) Bugfix: in X-Accel-Redirect usage; the bug had appeared in 0.8.11.

    *) Bugfix: in embedded perl module; the bug had appeared in 0.8.11.


Changes with nginx 0.8.14                                        07 Sep 2009

    *) Bugfix: an expired cached response might stick in the "UPDATING"
       state.

    *) Bugfix: a segmentation fault might occur in worker process, if
       error_log was set to info or debug level.
       Thanks to Sergey Bochenkov.

    *) Bugfix: in embedded perl module; the bug had appeared in 0.8.11.

    *) Bugfix: an "error_page" directive did not redirect a 413 error; the
       bug had appeared in 0.6.10.


Changes with nginx 0.8.13                                        31 Aug 2009

    *) Bugfix: in the "aio sendfile" directive; the bug had appeared in
       0.8.12.

    *) Bugfix: nginx could not be built without the --with-file-aio option
       on FreeBSD; the bug had appeared in 0.8.12.


Changes with nginx 0.8.12                                        31 Aug 2009

    *) Feature: the "sendfile" parameter in the "aio" directive on FreeBSD.

    *) Bugfix: in try_files; the bug had appeared in 0.8.11.

    *) Bugfix: in memcached; the bug had appeared in 0.8.11.


Changes with nginx 0.8.11                                        28 Aug 2009

    *) Change: now directive "gzip_disable msie6" does not disable gzipping
       for MSIE 6.0 SV1.

    *) Feature: file AIO support on FreeBSD and Linux.

    *) Feature: the "directio_alignment" directive.


Changes with nginx 0.8.10                                        24 Aug 2009

    *) Bugfix: memory leaks if GeoIP City database was used.

    *) Bugfix: in copying temporary files to permanent storage area; the bug
       had appeared in 0.8.9.


Changes with nginx 0.8.9                                         17 Aug 2009

    *) Feature: now the start cache loader runs in a separate process; this
       should improve large caches handling.

    *) Feature: now temporary files and permanent storage area may reside at
       different file systems.


Changes with nginx 0.8.8                                         10 Aug 2009

    *) Bugfix: in handling FastCGI headers split in records.

    *) Bugfix: a segmentation fault occurred in worker process, if a request
       was handled in two proxied or FastCGIed locations and a caching was
       enabled in the first location; the bug had appeared in 0.8.7.


Changes with nginx 0.8.7                                         27 Jul 2009

    *) Change: minimum supported OpenSSL version is 0.9.7.

    *) Change: the "ask" parameter of the "ssl_verify_client" directive was
       changed to the "optional" parameter and now it checks a client
       certificate if it was offered.
       Thanks to Brice Figureau.

    *) Feature: the $ssl_client_verify variable.
       Thanks to Brice Figureau.

    *) Feature: the "ssl_crl" directive.
       Thanks to Brice Figureau.

    *) Feature: the "proxy" parameter of the "geo" directive.

    *) Feature: the "image_filter" directive supports variables for setting
       size.

    *) Bugfix: the $ssl_client_cert variable usage corrupted memory; the bug
       had appeared in 0.7.7.
       Thanks to Sergey Zhuravlev.

    *) Bugfix: "proxy_pass_header" and "fastcgi_pass_header" directives did
       not pass to a client the "X-Accel-Redirect", "X-Accel-Limit-Rate",
       "X-Accel-Buffering", and "X-Accel-Charset" lines from backend
       response header.
       Thanks to Maxim Dounin.

    *) Bugfix: in handling "Last-Modified" and "Accept-Ranges" backend
       response header lines; the bug had appeared in 0.7.44.
       Thanks to Maxim Dounin.

    *) Bugfix: the "[alert] zero size buf" error if subrequest returns an
       empty response; the bug had appeared in 0.8.5.


Changes with nginx 0.8.6                                         20 Jul 2009

    *) Feature: the ngx_http_geoip_module.

    *) Bugfix: XSLT filter may fail with message "not well formed XML
       document" for valid XML document.
       Thanks to Kuramoto Eiji.

    *) Bugfix: now in MacOSX, Cygwin, and nginx/Windows locations given by a
       regular expression are always tested in case insensitive mode.

    *) Bugfix: now nginx/Windows ignores trailing dots in URI.
       Thanks to Hugo Leisink.

    *) Bugfix: name of file specified in --conf-path was not honored during
       installation; the bug had appeared in 0.6.6.
       Thanks to Maxim Dounin.


Changes with nginx 0.8.5                                         13 Jul 2009

    *) Bugfix: now nginx allows underscores in a request method.

    *) Bugfix: a 500 error code was returned for invalid login/password
       while HTTP Basic authentication on Windows.

    *) Bugfix: ngx_http_perl_module responses did not work in subrequests.

    *) Bugfix: in ngx_http_limit_req_module.
       Thanks to Maxim Dounin.


Changes with nginx 0.8.4                                         22 Jun 2009

    *) Bugfix: nginx could not be built --without-http-cache; the bug had
       appeared in 0.8.3.


Changes with nginx 0.8.3                                         19 Jun 2009

    *) Feature: the $upstream_cache_status variable.

    *) Bugfix: nginx could not be built on MacOSX 10.6.

    *) Bugfix: nginx could not be built --without-http-cache; the bug had
       appeared in 0.8.2.

    *) Bugfix: a segmentation fault occurred in worker process, if a backend
       401 error was intercepted and the backend did not set the
       "WWW-Authenticate" response header line.
       Thanks to Eugene Mychlo.


Changes with nginx 0.8.2                                         15 Jun 2009

    *) Bugfix: in open_file_cache and proxy/fastcgi cache interaction on
       start up.

    *) Bugfix: open_file_cache might cache open file descriptors too long;
       the bug had appeared in 0.7.4.


Changes with nginx 0.8.1                                         08 Jun 2009

    *) Feature: the "updating" parameter in "proxy_cache_use_stale" and
       "fastcgi_cache_use_stale" directives.

    *) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
       header lines were passed to backend while caching if no
       "proxy_set_header" directive was used with any parameters.

    *) Bugfix: the "Set-Cookie" and "P3P" response header lines were not
       hidden while caching if no "proxy_hide_header/fastcgi_hide_header"
       directives were used with any parameters.

    *) Bugfix: the ngx_http_image_filter_module did not support GIF87a
       format.
       Thanks to Denis Ilyinyh.

    *) Bugfix: nginx could not be built modules on Solaris 10 and early; the
       bug had appeared in 0.7.56.


Changes with nginx 0.8.0                                         02 Jun 2009

    *) Feature: the "keepalive_requests" directive.

    *) Feature: the "limit_rate_after" directive.
       Thanks to Ivan Debnar.

    *) Bugfix: XLST filter did not work in subrequests.

    *) Bugfix: in relative paths handling in nginx/Windows.

    *) Bugfix: in proxy_store, fastcgi_store, proxy_cache, and fastcgi_cache
       in nginx/Windows.

    *) Bugfix: in memory allocation error handling.
       Thanks to Maxim Dounin and Kirill A. Korinskiy.


Changes with nginx 0.7.59                                        25 May 2009

    *) Feature: the "proxy_cache_methods" and "fastcgi_cache_methods"
       directives.

    *) Bugfix: socket leak; the bug had appeared in 0.7.25.
       Thanks to Maxim Dounin.

    *) Bugfix: a segmentation fault occurred in worker process, if a request
       had no body and the $request_body variable was used;
       the bug had appeared in 0.7.58.

    *) Bugfix: the SSL modules might not built on Solaris and Linux;
       the bug had appeared in 0.7.56.

    *) Bugfix: ngx_http_xslt_filter_module responses were not handled by
       SSI, charset, and gzip filters.

    *) Bugfix: a "charset" directive did not set a charset to
       ngx_http_gzip_static_module responses.


Changes with nginx 0.7.58                                        18 May 2009

    *) Feature: a "listen" directive of the mail proxy module supports IPv6.

    *) Feature: the "image_filter_jpeg_quality" directive.

    *) Feature: the "client_body_in_single_buffer" directive.

    *) Feature: the $request_body variable.

    *) Bugfix: in ngx_http_autoindex_module in file name links having a ":"
       symbol in the name.

    *) Bugfix: "make upgrade" procedure did not work; the bug had appeared
       in 0.7.53.
       Thanks to Denis F. Latypoff.


Changes with nginx 0.7.57                                        12 May 2009

    *) Bugfix: a floating-point fault occurred in worker process, if the
       ngx_http_image_filter_module errors were redirected to named
       location; the bug had appeared in 0.7.56.


Changes with nginx 0.7.56                                        11 May 2009

    *) Feature: nginx/Windows supports IPv6 in a "listen" directive of the
       HTTP module.

    *) Bugfix: in ngx_http_image_filter_module.


Changes with nginx 0.7.55                                        06 May 2009

    *) Bugfix: the http_XXX parameters in "proxy_cache_use_stale" and
       "fastcgi_cache_use_stale" directives did not work.

    *) Bugfix: fastcgi cache did not cache header only responses.

    *) Bugfix: of "select() failed (9: Bad file descriptor)" error in
       nginx/Unix and "select() failed (10038: ...)" error in nginx/Windows.

    *) Bugfix: a segmentation fault might occur in worker process, if an
       "debug_connection" directive was used; the bug had appeared in
       0.7.54.

    *) Bugfix: fix ngx_http_image_filter_module building errors.

    *) Bugfix: the files bigger than 2G could not be transferred using
       $r->sendfile.
       Thanks to Maxim Dounin.


Changes with nginx 0.7.54                                        01 May 2009

    *) Feature: the ngx_http_image_filter_module.

    *) Feature: the "proxy_ignore_headers" and "fastcgi_ignore_headers"
       directives.

    *) Bugfix: a segmentation fault might occur in worker process, if an
       "open_file_cache_errors off" directive was used; the bug had appeared
       in 0.7.53.

    *) Bugfix: the "port_in_redirect off" directive did not work; the bug
       had appeared in 0.7.39.

    *) Bugfix: improve handling of "select" method errors.

    *) Bugfix: of "select() failed (10022: ...)" error in nginx/Windows.

    *) Bugfix: in error text descriptions in nginx/Windows; the bug had
       appeared in 0.7.53.


Changes with nginx 0.7.53                                        27 Apr 2009

    *) Change: now a log set by --error-log-path is created from the very
       start-up.

    *) Feature: now the start up errors and warnings are outputted to an
       error_log and stderr.

    *) Feature: the empty --prefix= configure parameter forces nginx to use
       a directory where it was run as prefix.

    *) Feature: the -p switch.

    *) Feature: the -s switch on Unix platforms.

    *) Feature: the -? and -h switches.
       Thanks to Jerome Loyet.

    *) Feature: now switches may be set in condensed form.

    *) Bugfix: nginx/Windows did not work if configuration file was given by
       the -c switch.

    *) Bugfix: temporary files might be not removed if the "proxy_store",
       "fastcgi_store", "proxy_cache", or "fastcgi_cache" were used.
       Thanks to Maxim Dounin.

    *) Bugfix: an incorrect value was passed to mail proxy authentication
       server in "Auth-Method" header line; the bug had appeared
       in 0.7.34.
       Thanks to Simon Lecaille.

    *) Bugfix: system error text descriptions were not logged on Linux;
       the bug had appeared in 0.7.45.

    *) Bugfix: the "fastcgi_cache_min_uses" directive did not work.
       Thanks to Andrew Vorobyoff.


Changes with nginx 0.7.52                                        20 Apr 2009

    *) Feature: the first native Windows binary release.

    *) Bugfix: in processing HEAD method while caching.

    *) Bugfix: in processing the "If-Modified-Since", "If-Range", etc.
       client request header lines while caching.

    *) Bugfix: now the "Set-Cookie" and "P3P" header lines are hidden in
       cacheable responses.

    *) Bugfix: if nginx was built with the ngx_http_perl_module and with a
       perl which supports threads, then during a master process exit the
       message "panic: MUTEX_LOCK" might be issued.

    *) Bugfix: nginx could not be built --without-http-cache; the bug had
       appeared in 0.7.48.

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.7.42.


Changes with nginx 0.7.51                                        12 Apr 2009

    *) Feature: the "try_files" directive supports a response code in the
       fallback parameter.

    *) Feature: now any response code can be used in the "return" directive.

    *) Bugfix: the "error_page" directive made an external redirect without
       query string; the bug had appeared in 0.7.44.

    *) Bugfix: if servers listened on several defined explicitly addresses,
       then virtual servers might not work; the bug had appeared in 0.7.39.


Changes with nginx 0.7.50                                        06 Apr 2009

    *) Bugfix: the $arg_... variables did not work; the bug had appeared in
       0.7.49.


Changes with nginx 0.7.49                                        06 Apr 2009

    *) Bugfix: a segmentation fault might occur in worker process, if the
       $arg_... variables were used; the bug had appeared in 0.7.48.


Changes with nginx 0.7.48                                        06 Apr 2009

    *) Feature: the "proxy_cache_key" directive.

    *) Bugfix: now nginx takes into account the "X-Accel-Expires",
       "Expires", and "Cache-Control" header lines in a backend response.

    *) Bugfix: now nginx caches responses for the GET requests only.

    *) Bugfix: the "fastcgi_cache_key" directive was not inherited.

    *) Bugfix: the $arg_... variables did not work with SSI subrequests.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx could not be built with uclibc library.
       Thanks to Timothy Redaelli.

    *) Bugfix: nginx could not be built on OpenBSD; the bug had
       appeared in 0.7.46.


Changes with nginx 0.7.47                                        01 Apr 2009

    *) Bugfix: nginx could not be built on FreeBSD 6 and early versions; the
       bug had appeared in 0.7.46.

    *) Bugfix: nginx could not be built on MacOSX; the bug had
       appeared in 0.7.46.

    *) Bugfix: if the "max_size" parameter was set, then the cache manager
       might purge a whole cache; the bug had appeared in 0.7.46.

    *) Change: a segmentation fault might occur in worker process, if the
       "proxy_cache"/"fastcgi_cache" and the "proxy_cache_valid"/
       "fastcgi_cache_valid" were set on different levels; the bug had
       appeared in 0.7.46.

    *) Bugfix: a segmentation fault might occur in worker process, if a
       request was redirected to a proxied or FastCGI server via error_page
       or try_files; the bug had appeared in 0.7.44.


Changes with nginx 0.7.46                                        30 Mar 2009

    *) Bugfix: the previous release tarball was incorrect.


Changes with nginx 0.7.45                                        30 Mar 2009

    *) Change: now the "proxy_cache" and the "proxy_cache_valid" directives
       can be set on different levels.

    *) Change: the "clean_time" parameter of the "proxy_cache_path"
       directive is canceled.

    *) Feature: the "max_size" parameter of the "proxy_cache_path"
       directive.

    *) Feature: the ngx_http_fastcgi_module preliminary cache support.

    *) Feature: now on shared memory allocation errors directive and zone
       names are logged.

    *) Bugfix: the directive "add_header last-modified ''" did not delete a
       "Last-Modified" response header line; the bug had appeared in 0.7.44.

    *) Bugfix: a relative path in the "auth_basic_user_file" directive given
       without variables did not work; the bug had appeared in 0.7.44.
       Thanks to Jerome Loyet.

    *) Bugfix: in an "alias" directive given using variables without
       references to captures of regular expressions; the bug had appeared
       in 0.7.42.


Changes with nginx 0.7.44                                        23 Mar 2009

    *) Feature: the ngx_http_proxy_module preliminary cache support.

    *) Feature: the --with-pcre option in the configure.

    *) Feature: the "try_files" directive is now allowed on the server block
       level.

    *) Bugfix: the "try_files" directive handled incorrectly a query string
       in a fallback parameter.

    *) Bugfix: the "try_files" directive might test incorrectly directories.

    *) Bugfix: if there was a single server for given address:port pair,
       then captures in regular expressions in a "server_name" directive did
       not work.


Changes with nginx 0.7.43                                        18 Mar 2009

    *) Bugfix: a request was handled incorrectly, if a "root" directive used
       variables; the bug had appeared in 0.7.42.

    *) Bugfix: if a server listened on wildcard address, then the
       $server_addr variable value was "0.0.0.0"; the bug had appeared in
       0.7.36.


Changes with nginx 0.7.42                                        16 Mar 2009

    *) Change: now the "Invalid argument" error returned by
       setsockopt(TCP_NODELAY) on Solaris, is ignored.

    *) Change: now if a file specified in a "auth_basic_user_file" directive
       is absent, then the 403 error is returned instead of the 500 one.

    *) Feature: the "auth_basic_user_file" directive supports variables.
       Thanks to Kirill A. Korinskiy.

    *) Feature: the "listen" directive supports the "ipv6only" parameter.
       Thanks to Zhang Hua.

    *) Bugfix: in an "alias" directive with references to captures of
       regular expressions; the bug had appeared in 0.7.40.

    *) Bugfix: compatibility with Tru64 UNIX.
       Thanks to Dustin Marquess.

    *) Bugfix: nginx could not be built without PCRE library; the bug had
       appeared in 0.7.41.


Changes with nginx 0.7.41                                        11 Mar 2009

    *) Bugfix: a segmentation fault might occur in worker process, if a
       "server_name" or a "location" directives had captures in regular
       expressions; the issue had appeared in 0.7.40.
       Thanks to Vladimir Sopot.


Changes with nginx 0.7.40                                        09 Mar 2009

    *) Feature: the "location" directive supports captures in regular
       expressions.

    *) Feature: an "alias" directive with capture references may be used
       inside a location given by a regular expression with captures.

    *) Feature: the "server_name" directive supports captures in regular
       expressions.

    *) Workaround: the ngx_http_autoindex_module did not show the trailing
       slash in directories on XFS filesystem; the issue had appeared in
       0.7.15.
       Thanks to Dmitry Kuzmenko.


Changes with nginx 0.7.39                                        02 Mar 2009

    *) Bugfix: large response with SSI might hang, if gzipping was enabled;
       the bug had appeared in 0.7.28.
       Thanks to Artem Bokhan.

    *) Bugfix: a segmentation fault might occur in worker process, if short
       static variants are used in a "try_files" directive.


Changes with nginx 0.7.38                                        23 Feb 2009

    *) Feature: authentication failures logging.

    *) Bugfix: name/password in auth_basic_user_file were ignored after odd
       number of empty lines.
       Thanks to Alexander Zagrebin.

    *) Bugfix: a segmentation fault occurred in a master process, if long
       path was used in unix domain socket; the bug had appeared in 0.7.36.


Changes with nginx 0.7.37                                        21 Feb 2009

    *) Bugfix: directives using upstreams did not work; the bug had appeared
       in 0.7.36.


Changes with nginx 0.7.36                                        21 Feb 2009

    *) Feature: a preliminary IPv6 support; the "listen" directive of the
       HTTP module supports IPv6.

    *) Bugfix: the $ancient_browser variable did not work for browsers
       preset by a "modern_browser" directives.


Changes with nginx 0.7.35                                        16 Feb 2009

    *) Bugfix: a "ssl_engine" directive did not use a SSL-accelerator for
       asymmetric ciphers.
       Thanks to Marcin Gozdalik.

    *) Bugfix: a "try_files" directive set MIME type depending on an
       original request extension.

    *) Bugfix: "*domain.tld" names were handled incorrectly in
       "server_name", "valid_referers", and "map" directives, if
       ".domain.tld" and ".subdomain.domain.tld" wildcards were used;
       the bug had appeared in 0.7.9.


Changes with nginx 0.7.34                                        10 Feb 2009

    *) Feature: the "off" parameter of the "if_modified_since" directive.

    *) Feature: now nginx sends an HELO/EHLO command after a XCLIENT
       command.
       Thanks to Maxim Dounin.

    *) Feature: Microsoft specific "AUTH LOGIN with User Name" mode support
       in mail proxy server.
       Thanks to Maxim Dounin.

    *) Bugfix: in a redirect rewrite directive original arguments were
       concatenated with new arguments by a "?" rather than an "&";
       the bug had appeared in 0.1.18.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx could not be built on AIX.


Changes with nginx 0.7.33                                        02 Feb 2009

    *) Bugfix: a double response might be returned if the epoll or rtsig
       methods are used and a redirect was returned to a request with body.
       Thanks to Eden Li.

    *) Bugfix: the $sent_http_location variable was empty for some redirects
       types.

    *) Bugfix: a segmentation fault might occur in worker process if
       "resolver" directive was used in SMTP proxy.


Changes with nginx 0.7.32                                        26 Jan 2009

    *) Feature: now a directory existence testing can be set explicitly in
       the "try_files" directive.

    *) Bugfix: fastcgi_store stored files not always.

    *) Bugfix: in geo ranges.

    *) Bugfix: in shared memory allocations if nginx was built without
       debugging.
       Thanks to Andrey Kvasov.


Changes with nginx 0.7.31                                        19 Jan 2009

    *) Change: now the "try_files" directive tests files only and ignores
       directories.

    *) Feature: the "fastcgi_split_path_info" directive.

    *) Bugfixes in an "Expect" request header line support.

    *) Bugfixes in geo ranges.

    *) Bugfix: in a miss case ngx_http_memcached_module returned the "END"
       line as response body instead of default 404 page body; the bug had
       appeared in 0.7.18.
       Thanks to Maxim Dounin.

    *) Bugfix: while SMTP proxying nginx issued message "250 2.0.0 OK"
       instead of "235 2.0.0 OK"; the bug had appeared in 0.7.22.
       Thanks to Maxim Dounin.


Changes with nginx 0.7.30                                        24 Dec 2008

    *) Bugfix: a segmentation fault occurred in worker process, if variables
       were used in the "fastcgi_pass" or "proxy_pass" directives and host
       name must be resolved; the bug had appeared in 0.7.29.


Changes with nginx 0.7.29                                        24 Dec 2008

    *) Bugfix: the "fastcgi_pass" and "proxy_pass" directives did not
       support variables if unix domain sockets were used.

    *) Bugfixes in subrequest processing; the bugs had appeared in 0.7.25.

    *) Bugfix: a "100 Continue" response was issued for HTTP/1.0 requests;
       Thanks to Maxim Dounin.

    *) Bugfix: in memory allocation in the ngx_http_gzip_filter_module on
       Cygwin.


Changes with nginx 0.7.28                                        22 Dec 2008

    *) Change: in memory allocation in the ngx_http_gzip_filter_module.

    *) Change: the default "gzip_buffers" directive values have been changed
       to 32 4k or 16 8k from 4 4k/8k.


Changes with nginx 0.7.27                                        15 Dec 2008

    *) Feature: the "try_files" directive.

    *) Feature: variables support in the "fastcgi_pass" directive.

    *) Feature: now the $geo variable may get an address from a variable.
       Thanks to Andrei Nigmatulin.

    *) Feature: now a location's modifier may be used without space before
       name.

    *) Feature: the $upstream_response_length variable.

    *) Bugfix: now a "add_header" directive does not add an empty value.

    *) Bugfix: if zero length static file was requested, then nginx just
       closed connection; the bug had appeared in 0.7.25.

    *) Bugfix: a MOVE method could not move file in non-existent directory.

    *) Bugfix: a segmentation fault occurred in worker process, if no one
       named location was defined in server, but some one was used in an
       error_page directive.
       Thanks to Sergey Bochenkov.


Changes with nginx 0.7.26                                        08 Dec 2008

    *) Bugfix: in subrequest processing; the bug had appeared in 0.7.25.


Changes with nginx 0.7.25                                        08 Dec 2008

    *) Change: in subrequest processing.

    *) Change: now POSTs without "Content-Length" header line are allowed.

    *) Bugfix: now the "limit_req" and "limit_conn" directives log a
       prohibition reason.

    *) Bugfix: in the "delete" parameter of the "geo" directive.


Changes with nginx 0.7.24                                        01 Dec 2008

    *) Feature: the "if_modified_since" directive.

    *) Bugfix: nginx did not process a FastCGI server response, if the
       server send too many messages to stderr before response.

    *) Bugfix: the "$cookie_..." variables did not work in the SSI and the
       perl module.


Changes with nginx 0.7.23                                        27 Nov 2008

    *) Feature: the "delete" and "ranges" parameters in the "geo" directive.

    *) Feature: speeding up loading of geo base with large number of values.

    *) Feature: decrease of memory required for geo base load.


Changes with nginx 0.7.22                                        20 Nov 2008

    *) Feature: the "none" parameter in the "smtp_auth" directive.
       Thanks to Maxim Dounin.

    *) Feature: the "$cookie_..." variables.

    *) Bugfix: the "directio" directive did not work in XFS filesystem.

    *) Bugfix: the resolver did not understand big DNS responses.
       Thanks to Zyb.


Changes with nginx 0.7.21                                        11 Nov 2008

    *) Changes in the ngx_http_limit_req_module.

    *) Feature: the EXSLT support in the ngx_http_xslt_module.
       Thanks to Denis F. Latypoff.

    *) Workaround: compatibility with glibc 2.3.
       Thanks to Eric Benson and Maxim Dounin.

    *) Bugfix: nginx could not run on MacOSX 10.4 and earlier; the bug had
       appeared in 0.7.6.


Changes with nginx 0.7.20                                        10 Nov 2008

    *) Changes in the ngx_http_gzip_filter_module.

    *) Feature: the ngx_http_limit_req_module.

    *) Bugfix: worker processes might exit on a SIGBUS signal on sparc and
       ppc platforms; the bug had appeared in 0.7.3.
       Thanks to Maxim Dounin.

    *) Bugfix: the "proxy_pass http://host/some:uri" directives did not
       work; the bug had appeared in 0.7.12.

    *) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
       error.

    *) Bugfix: the ngx_http_secure_link_module did not work inside
       locations, whose names are less than 3 characters.

    *) Bugfix: $server_addr variable might have no value.


Changes with nginx 0.7.19                                        13 Oct 2008

    *) Bugfix: version number update.


Changes with nginx 0.7.18                                        13 Oct 2008

    *) Change: the "underscores_in_headers" directive; now nginx does not
       allows underscores in a client request header line names.

    *) Feature: the ngx_http_secure_link_module.

    *) Feature: the "real_ip_header" directive supports any header.

    *) Feature: the "log_subrequest" directive.

    *) Feature: the $realpath_root variable.

    *) Feature: the "http_502" and "http_504" parameters of the
       "proxy_next_upstream" directive.

    *) Bugfix: the "http_503" parameter of the "proxy_next_upstream" or
       "fastcgi_next_upstream" directives did not work.

    *) Bugfix: nginx might send a "Transfer-Encoding: chunked" header line
       for HEAD requests.

    *) Bugfix: now accept threshold depends on worker_connections.


Changes with nginx 0.7.17                                        15 Sep 2008

    *) Feature: now the "directio" directive works on Linux.

    *) Feature: the $pid variable.

    *) Bugfix: the "directio" optimization that had appeared in 0.7.15 did
       not work with open_file_cache.

    *) Bugfix: the "access_log" with variables did not work on Linux; the
       bug had appeared in 0.7.7.

    *) Bugfix: the ngx_http_charset_module did not understand quoted charset
       name received from backend.


Changes with nginx 0.7.16                                        08 Sep 2008

    *) Bugfix: nginx could not be built on 64-bit platforms; the bug had
       appeared in 0.7.15.


Changes with nginx 0.7.15                                        08 Sep 2008

    *) Feature: the ngx_http_random_index_module.

    *) Feature: the "directio" directive has been optimized for file
       requests starting from arbitrary position.

    *) Feature: the "directio" directive turns off sendfile if it is
       necessary.

    *) Feature: now nginx allows underscores in a client request header line
       names.


Changes with nginx 0.7.14                                        01 Sep 2008

    *) Change: now the ssl_certificate and ssl_certificate_key directives
       have no default values.

    *) Feature: the "listen" directive supports the "ssl" parameter.

    *) Feature: now nginx takes into account a time zone change while
       reconfiguration on FreeBSD and Linux.

    *) Bugfix: the "listen" directive parameters such as "backlog",
       "rcvbuf", etc. were not set, if a default server was not the first
       one.

    *) Bugfix: if URI part captured by a "rewrite" directive was used as a
       query string, then the query string was not escaped.

    *) Bugfix: configuration file validity test improvements.


Changes with nginx 0.7.13                                        26 Aug 2008

    *) Bugfix: nginx could not be built on Linux and Solaris; the bug had
       appeared in 0.7.12.


Changes with nginx 0.7.12                                        26 Aug 2008

    *) Feature: the "server_name" directive supports empty name "".

    *) Feature: the "gzip_disable" directive supports special "msie6" mask.

    *) Bugfix: if the "max_fails=0" parameter was used in upstream with
       several servers, then a worker process exited on a SIGFPE signal.
       Thanks to Maxim Dounin.

    *) Bugfix: a request body was dropped while redirection via an
       "error_page" directive.

    *) Bugfix: a full response was returned for request method HEAD while
       redirection via an "error_page" directive.

    *) Bugfix: the $r->header_in() method did not return value of the
       "Host", "User-Agent", and "Connection" request header lines; the bug
       had appeared in 0.7.0.


Changes with nginx 0.7.11                                        18 Aug 2008

    *) Change: now ngx_http_charset_module does not work by default with
       text/css MIME type.

    *) Feature: now nginx returns the 405 status code for POST method
       requesting a static file only if the file exists.

    *) Feature: the "proxy_ssl_session_reuse" directive.

    *) Bugfix: a "proxy_pass" directive without URI part might use original
       request after the "X-Accel-Redirect" redirection was used;

    *) Bugfix: if a directory has search only rights and the first index
       file was absent, then nginx returned the 500 status code.

    *) Bugfix: in inclusive locations; the bugs had appeared in 0.7.1.


Changes with nginx 0.7.10                                        13 Aug 2008

    *) Bugfix: in the "addition_types", "charset_types", "gzip_types",
       "ssi_types", "sub_filter_types", and "xslt_types" directives; the
       bugs had appeared in 0.7.9.

    *) Bugfix: of recursive error_page for 500 status code.

    *) Bugfix: now the ngx_http_realip_module sets address not for whole
       keepalive connection, but for each request passed via the connection.


Changes with nginx 0.7.9                                         12 Aug 2008

    *) Change: now ngx_http_charset_module works by default with following
       MIME types: text/html, text/css, text/xml, text/plain,
       text/vnd.wap.wml, application/x-javascript, and application/rss+xml.

    *) Feature: the "charset_types" and "addition_types" directives.

    *) Feature: now the "gzip_types", "ssi_types", and "sub_filter_types"
       directives use hash.

    *) Feature: the ngx_cpp_test_module.

    *) Feature: the "expires" directive supports daily time.

    *) Feature: the ngx_http_xslt_module improvements and bug fixing.
       Thanks to Denis F. Latypoff and Maxim Dounin.

    *) Bugfix: the "log_not_found" directive did not work for index files
       tests.

    *) Bugfix: HTTPS connections might hang, if kqueue, epoll, rtsig, or
       eventport methods were used; the bug had appeared in 0.7.7.

    *) Bugfix: if the "server_name", "valid_referers", and "map" directives
       used an "*.domain.tld" wildcard and exact name "domain.tld" was not
       set, then the exact name was matched by the wildcard; the bug had
       appeared in 0.3.18.


Changes with nginx 0.7.8                                         04 Aug 2008

    *) Feature: the ngx_http_xslt_module.

    *) Feature: the "$arg_..." variables.

    *) Feature: Solaris directio support.
       Thanks to Ivan Debnar.

    *) Bugfix: now if FastCGI server sends a "Location" header line without
       status line, then nginx uses 302 status code.
       Thanks to Maxim Dounin.


Changes with nginx 0.7.7                                         30 Jul 2008

    *) Change: now the EAGAIN error returned by connect() is not considered
       as temporary error.

    *) Change: now the $ssl_client_cert variable value is a certificate with
       TAB character intended before each line except first one; an
       unchanged certificate is available in the $ssl_client_raw_cert
       variable.

    *) Feature: the "ask" parameter in the "ssl_verify_client" directive.

    *) Feature: byte-range processing improvements.
       Thanks to Maxim Dounin.

    *) Feature: the "directio" directive.
       Thanks to Jiang Hong.

    *) Feature: MacOSX 10.5 sendfile() support.

    *) Bugfix: now in MacOSX and Cygwin locations are tested in case
       insensitive mode; however, the compare is provided by single-byte
       locales only.

    *) Bugfix: mail proxy SSL connections hanged, if select, poll, or
       /dev/poll methods were used.

    *) Bugfix: UTF-8 encoding usage in the ngx_http_autoindex_module.


Changes with nginx 0.7.6                                         07 Jul 2008

    *) Bugfix: now if variables are used in the "access_log" directive a
       request root existence is always tested.

    *) Bugfix: the ngx_http_flv_module did not support several values in a
       query string.


Changes with nginx 0.7.5                                         01 Jul 2008

    *) Bugfixes in variables support in the "access_log" directive; the bugs
       had appeared in 0.7.4.

    *) Bugfix: nginx could not be built --without-http_gzip_module; the bug
       had appeared in 0.7.3.
       Thanks to Kirill A. Korinskiy.

    *) Bugfix: if sub_filter and SSI were used together, then responses
       might were transferred incorrectly.


Changes with nginx 0.7.4                                         30 Jun 2008

    *) Feature: variables support in the "access_log" directive.

    *) Feature: the "open_log_file_cache" directive.

    *) Feature: the -g switch.

    *) Feature: the "Expect" request header line support.

    *) Bugfix: large SSI inclusions might be truncated.


Changes with nginx 0.7.3                                         23 Jun 2008

    *) Change: the "rss" extension MIME type has been changed to
       "application/rss+xml".

    *) Change: now the "gzip_vary" directive turned on issues a
       "Vary: Accept-Encoding" header line for uncompressed responses too.

    *) Feature: now the "rewrite" directive does a redirect automatically if
       the "https://" protocol is used.

    *) Bugfix: the "proxy_pass" directive did not work with the HTTPS
       protocol; the bug had appeared in 0.6.9.


Changes with nginx 0.7.2                                         16 Jun 2008

    *) Feature: now nginx supports EDH key exchange ciphers.

    *) Feature: the "ssl_dhparam" directive.

    *) Feature: the $ssl_client_cert variable.
       Thanks to Manlio Perillo.

    *) Bugfix: after changing URI via a "rewrite" directive nginx did not
       search a new location; the bug had appeared in 0.7.1.
       Thanks to Maxim Dounin.

    *) Bugfix: nginx could not be built without PCRE library; the bug had
       appeared in 0.7.1.

    *) Bugfix: when a request to a directory was redirected with the slash
       added, nginx dropped a query string from the original request.


Changes with nginx 0.7.1                                         26 May 2008

    *) Change: now locations are searched in a tree.

    *) Change: the "optimize_server_names" directive was canceled due to the
       "server_name_in_redirect" directive introduction.

    *) Change: some long deprecated directives are not supported anymore.

    *) Change: the "none" parameter in the "ssl_session_cache" directive;
       now this is default parameter.
       Thanks to Rob Mueller.

    *) Bugfix: worker processes might not catch reconfiguration and log
       rotation signals.

    *) Bugfix: nginx could not be built on latest Fedora 9 Linux.
       Thanks to Roxis.


Changes with nginx 0.7.0                                         19 May 2008

    *) Change: now the 0x00-0x1F, '"' and '\' characters are escaped as \xXX
       in an access_log.
       Thanks to Maxim Dounin.

    *) Change: now nginx allows several "Host" request header line.

    *) Feature: the "modified" flag in the "expires" directive.

    *) Feature: the $uid_got and $uid_set variables may be used at any
       request processing stage.

    *) Feature: the $hostname variable.
       Thanks to Andrei Nigmatulin.

    *) Feature: DESTDIR support.
       Thanks to Todd A. Fisher and Andras Voroskoi.

    *) Bugfix: a segmentation fault might occur in worker process on Linux,
       if keepalive was enabled.


Changes with nginx 0.6.31                                        12 May 2008

    *) Bugfix: nginx did not process FastCGI response if header was at the
       end of FastCGI record; the bug had appeared in 0.6.2.
       Thanks to Sergey Serov.

    *) Bugfix: a segmentation fault might occur in worker process if a file
       was deleted and the "open_file_cache_errors" directive was off.


Changes with nginx 0.6.30                                        29 Apr 2008

    *) Change: now if an "include" directive pattern does not match any
       file, then nginx does not issue an error.

    *) Feature: now the time in directives may be specified without spaces,
       for example, "1h50m".

    *) Bugfix: memory leaks if the "ssl_verify_client" directive was on.
       Thanks to Chavelle Vincent.

    *) Bugfix: the "sub_filter" directive might set text to change into
       output.

    *) Bugfix: the "error_page" directive did not take into account
       arguments in redirected URI.

    *) Bugfix: now nginx always opens files in binary mode under Cygwin.

    *) Bugfix: nginx could not be built on OpenBSD; the bug had appeared in
       0.6.15.


Changes with nginx 0.6.29                                        18 Mar 2008

    *) Feature: the ngx_google_perftools_module.

    *) Bugfix: the ngx_http_perl_module could not be built on 64-bit
       platforms; the bug had appeared in 0.6.27.


Changes with nginx 0.6.28                                        13 Mar 2008

    *) Bugfix: the rtsig method could not be built; the bug had appeared in
       0.6.27.


Changes with nginx 0.6.27                                        12 Mar 2008

    *) Change: now by default the rtsig method is not built on
       Linux 2.6.18+.

    *) Change: now a request method is not changed while redirection to a
       named location via an "error_page" directive.

    *) Feature: the "resolver" and "resolver_timeout" directives in SMTP
       proxy.

    *) Feature: the "post_action" directive supports named locations.

    *) Bugfix: a segmentation fault occurred in worker process, if a request
       was redirected from proxy, FastCGI, or memcached location to static
       named locations.

    *) Bugfix: browsers did not repeat SSL handshake if there is no valid
       client certificate in first handshake.
       Thanks to Alexander V. Inyukhin.

    *) Bugfix: if response code 495-497 was redirected via an "error_page"
       directive without code change, then nginx tried to allocate too many
       memory.

    *) Bugfix: memory leak in long-lived non buffered connections.

    *) Bugfix: memory leak in resolver.

    *) Bugfix: a segmentation fault occurred in worker process, if a request
       was redirected from proxy, FastCGI, or memcached location to static
       named locations.

    *) Bugfix: in the $proxy_host and $proxy_port variables caching.
       Thanks to Sergey Bochenkov.

    *) Bugfix: a "proxy_pass" directive with variables used incorrectly the
       same port as in another "proxy_pass" directive with the same host
       name and without variables.
       Thanks to Sergey Bochenkov.

    *) Bugfix: an alert "sendmsg() failed (9: Bad file descriptor)" on some
       64-bit platforms while reconfiguration.

    *) Bugfix: a segmentation fault occurred in worker process, if empty
       stub block was used second time in SSI.

    *) Bugfix: in copying URI part contained escaped symbols into arguments.


Changes with nginx 0.6.26                                        11 Feb 2008

    *) Bugfix: the "proxy_store" and "fastcgi_store" directives did not
       check a response length.

    *) Bugfix: a segmentation fault occurred in worker process, if big value
       was used in a "expires" directive.
       Thanks to Joaquin Cuenca Abela.

    *) Bugfix: nginx incorrectly detected cache line size on Pentium 4.
       Thanks to Gena Makhomed.

    *) Bugfix: in proxied or FastCGI subrequests a client original method
       was used instead of the GET method.

    *) Bugfix: socket leak in HTTPS mode if deferred accept was used.
       Thanks to Ben Maurer.

    *) Bugfix: nginx issued the bogus error message "SSL_shutdown() failed
       (SSL: )"; the bug had appeared in 0.6.23.

    *) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
       error; the bug had appeared in 0.6.23.


Changes with nginx 0.6.25                                        08 Jan 2008

    *) Change: now the "server_name_in_redirect" directive is used instead
       of the "server_name" directive's special "*" parameter.

    *) Change: now wildcard and regex names can be used as main name in a
       "server_name" directive.

    *) Change: the "satisfy_any" directive was replaced by the "satisfy"
       directive.

    *) Workaround: old worker processes might hog CPU after reconfiguration
       if they was run under Linux OpenVZ.

    *) Feature: the "min_delete_depth" directive.

    *) Bugfix: the COPY and MOVE methods did not work with single files.

    *) Bugfix: the ngx_http_gzip_static_module did not allow the
       ngx_http_dav_module to work; the bug had appeared in 0.6.23.

    *) Bugfix: socket leak in HTTPS mode if deferred accept was used.
       Thanks to Ben Maurer.

    *) Bugfix: nginx could not be built without PCRE library; the bug had
       appeared in 0.6.23.


Changes with nginx 0.6.24                                        27 Dec 2007

    *) Bugfix: a segmentation fault might occur in worker process if HTTPS
       was used; the bug had appeared in 0.6.23.


Changes with nginx 0.6.23                                        27 Dec 2007

    *) Change: the "off" parameter in the "ssl_session_cache" directive; now
       this is default parameter.

    *) Change: the "open_file_cache_retest" directive was renamed to the
       "open_file_cache_valid".

    *) Feature: the "open_file_cache_min_uses" directive.

    *) Feature: the ngx_http_gzip_static_module.

    *) Feature: the "gzip_disable" directive.

    *) Feature: the "memcached_pass" directive may be used inside the "if"
       block.

    *) Bugfix: a segmentation fault occurred in worker process, if the
       "memcached_pass" and "if" directives were used in the same location.

    *) Bugfix: if a "satisfy_any on" directive was used and not all access
       and auth modules directives were set, then other given access and
       auth directives were not tested;

    *) Bugfix: regex parameters in a "valid_referers" directive were not
       inherited from previous level.

    *) Bugfix: a "post_action" directive did run if a request was completed
       with 499 status code.

    *) Bugfix: optimization of 16K buffer usage in a SSL connection.
       Thanks to Ben Maurer.

    *) Bugfix: the STARTTLS in SMTP mode did not work.
       Thanks to Oleg Motienko.

    *) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
       error; the bug had appeared in 0.5.13.


Changes with nginx 0.6.22                                        19 Dec 2007

    *) Change: now all ngx_http_perl_module methods return values copied to
       perl's allocated memory.

    *) Bugfix: if nginx was built with ngx_http_perl_module, the perl before
       5.8.6 was used, and perl supported threads, then during
       reconfiguration the master process aborted; the bug had appeared in
       0.5.9.
       Thanks to Boris Zhmurov.

    *) Bugfix: the ngx_http_perl_module methods may get invalid values of
       the regex captures.

    *) Bugfix: a segmentation fault occurred in worker process, if the
       $r->has_request_body() method was called for a request whose small
       request body was already received.

    *) Bugfix: large_client_header_buffers did not freed before going to
       keep-alive state.
       Thanks to Olexander Shtepa.

    *) Bugfix: the last address was missed in the $upstream_addr variable;
       the bug had appeared in 0.6.18.

    *) Bugfix: the "fastcgi_catch_stderr" directive did return error code;
       now it returns 502 code, that can be rerouted to a next server using
       the "fastcgi_next_upstream invalid_header" directive.

    *) Bugfix: a segmentation fault occurred in master process if the
       "fastcgi_catch_stderr" directive was used; the bug had appeared in
       0.6.10.
       Thanks to Manlio Perillo.


Changes with nginx 0.6.21                                        03 Dec 2007

    *) Change: if variable values used in a "proxy_pass" directive contain
       IP-addresses only, then a "resolver" directive is not mandatory.

    *) Bugfix: a segmentation fault might occur in worker process if a
       "proxy_pass" directive with URI-part was used; the bug had appeared
       in 0.6.19.

    *) Bugfix: if resolver was used on platform that does not support
       kqueue, then nginx issued an alert "name is out of response".
       Thanks to Andrei Nigmatulin.

    *) Bugfix: if the $server_protocol was used in FastCGI parameters and a
       request line length was near to the "client_header_buffer_size"
       directive value, then nginx issued an alert "fastcgi: the request
       record is too big".

    *) Bugfix: if a plain text HTTP/0.9 version request was made to HTTPS
       server, then nginx returned usual response.


Changes with nginx 0.6.20                                        28 Nov 2007

    *) Bugfix: a segmentation fault might occur in worker process if a
       "proxy_pass" directive with URI-part was used; the bug had appeared
       in 0.6.19.


Changes with nginx 0.6.19                                        27 Nov 2007

    *) Bugfix: the 0.6.18 version could not be built.


Changes with nginx 0.6.18                                        27 Nov 2007

    *) Change: now the ngx_http_userid_module adds start time microseconds
       to the cookie field contains a pid value.

    *) Change: now the full request line instead of URI only is written to
       error_log.

    *) Feature: variables support in the "proxy_pass" directive.

    *) Feature: the "resolver" and "resolver_timeout" directives.

    *) Feature: now the directive "add_header last-modified ''" deletes a
       "Last-Modified" response header line.

    *) Bugfix: the "limit_rate" directive did not allow to use full
       throughput, even if limit value was very high.


Changes with nginx 0.6.17                                        15 Nov 2007

    *) Feature: the "If-Range" request header line support.
       Thanks to Alexander V. Inyukhin.

    *) Bugfix: URL double escaping in a redirect of the "msie_refresh"
       directive; the bug had appeared in 0.6.4.

    *) Bugfix: the "autoindex" directive did not work with the "alias /"
       directive.

    *) Bugfix: a segmentation fault might occur in worker process if
       subrequests were used.

    *) Bugfix: the big responses may be transferred truncated if SSL and
       gzip were used.

    *) Bugfix: the $status variable was equal to 0 if a proxied server
       returned response in HTTP/0.9 version.


Changes with nginx 0.6.16                                        29 Oct 2007

    *) Change: now the uname(2) is used on Linux instead of procfs.
       Thanks to Ilya Novikov.

    *) Bugfix: if the "?" character was in a "error_page" directive, then it
       was escaped in a proxied request; the bug had appeared in 0.6.11.

    *) Bugfix: compatibility with mget.


Changes with nginx 0.6.15                                        22 Oct 2007

    *) Feature: Cygwin compatibility.
       Thanks to Vladimir Kutakov.

    *) Feature: the "merge_slashes" directive.

    *) Feature: the "gzip_vary" directive.

    *) Feature: the "server_tokens" directive.

    *) Bugfix: nginx did not unescape URI in the "include" SSI command.

    *) Bugfix: the segmentation fault was occurred on start or while
       reconfiguration if variable was used in the "charset" or
       "source_charset" directives.

    *) Bugfix: nginx returned the 400 response on requests like
       "GET http://www.domain.com HTTP/1.0".
       Thanks to James Oakley.

    *) Bugfix: if request with request body was redirected using the
       "error_page" directive, then nginx tried to read the request body
       again; the bug had appeared in 0.6.7.

    *) Bugfix: a segmentation fault occurred in worker process if no
       server_name was explicitly defined for server processing request; the
       bug had appeared in 0.6.7.


Changes with nginx 0.6.14                                        15 Oct 2007

    *) Change: now by default the "echo" SSI command uses entity encoding.

    *) Feature: the "encoding" parameter in the "echo" SSI command.

    *) Feature: the "access_log" directive may be used inside the
       "limit_except" block.

    *) Bugfix: if all upstream servers were failed, then all servers had got
       weight the was equal one until servers became alive; the bug had
       appeared in 0.6.6.

    *) Bugfix: a segmentation fault occurred in worker process if
       $date_local and $date_gmt were used outside the
       ngx_http_ssi_filter_module.

    *) Bugfix: a segmentation fault might occur in worker process if debug
       log was enabled.
       Thanks to Andrei Nigmatulin.

    *) Bugfix: ngx_http_memcached_module did not set
       $upstream_response_time.
       Thanks to Maxim Dounin.

    *) Bugfix: a worker process may got caught in an endless loop, if the
       memcached was used.

    *) Bugfix: nginx supported low case only "close" and "keep-alive" values
       in the "Connection" request header line; the bug had appeared in
       0.6.11.

    *) Bugfix: sub_filter did not work with empty substitution.

    *) Bugfix: in sub_filter parsing.


Changes with nginx 0.6.13                                        24 Sep 2007

    *) Bugfix: nginx did not close directory file on HEAD request if
       autoindex was used.
       Thanks to Arkadiusz Patyk.


Changes with nginx 0.6.12                                        21 Sep 2007

    *) Change: mail proxy was split on three modules: pop3, imap and smtp.

    *) Feature: the --without-mail_pop3_module, --without-mail_imap_module,
       and --without-mail_smtp_module configuration parameters.

    *) Feature: the "smtp_greeting_delay" and "smtp_client_buffer"
       directives of the ngx_mail_smtp_module.

    *) Bugfix: the trailing wildcards did not work; the bug had appeared in
       0.6.9.

    *) Bugfix: nginx could not start on Solaris if the shared PCRE library
       located in non-standard place was used.

    *) Bugfix: the "proxy_hide_header" and "fastcgi_hide_header" directives
       did not hide response header lines whose name was longer than 32
       characters.
       Thanks to Manlio Perillo.


Changes with nginx 0.6.11                                        11 Sep 2007

    *) Bugfix: active connection counter always increased if mail proxy was
       used.

    *) Bugfix: if backend returned response header only using non-buffered
       proxy, then nginx closed backend connection on timeout.

    *) Bugfix: nginx did not support several "Connection" request header
       lines.

    *) Bugfix: if the "max_fails" was set for upstream server, then after
       first failure server weight was always one; the bug had appeared in
       0.6.6.


Changes with nginx 0.6.10                                        03 Sep 2007

    *) Feature: the "open_file_cache", "open_file_cache_retest", and
       "open_file_cache_errors" directives.

    *) Bugfix: socket leak; the bug had appeared in 0.6.7.

    *) Bugfix: a charset set by the "charset" directive was not appended to
       the "Content-Type" header set by $r->send_http_header().

    *) Bugfix: a segmentation fault might occur in worker process if
       /dev/poll method was used.


Changes with nginx 0.6.9                                         28 Aug 2007

    *) Bugfix: a worker process may got caught in an endless loop, if the
       HTTPS protocol was used; the bug had appeared in 0.6.7.

    *) Bugfix: if server listened on two addresses or ports and trailing
       wildcard was used, then nginx did not run.

    *) Bugfix: the "ip_hash" directive might incorrectly mark servers as
       down.

    *) Bugfix: nginx could not be built on amd64; the bug had appeared in
       0.6.8.


Changes with nginx 0.6.8                                         20 Aug 2007

    *) Change: now nginx tries to set the "worker_priority",
       "worker_rlimit_nofile", "worker_rlimit_core", and
       "worker_rlimit_sigpending" without super-user privileges.

    *) Change: now nginx escapes space and "%" in request to a mail proxy
       authentication server.

    *) Change: now nginx escapes "%" in $memcached_key variable.

    *) Bugfix: nginx used path relative to configuration prefix for
       non-absolute configuration file path specified in the "-c" key; the
       bug had appeared in 0.6.6.

    *) Bugfix: nginx did not work on FreeBSD/sparc64.


Changes with nginx 0.6.7                                         15 Aug 2007

    *) Change: now the paths specified in the "include",
       "auth_basic_user_file", "perl_modules", "ssl_certificate",
       "ssl_certificate_key", and "ssl_client_certificate" directives are
       relative to directory of nginx configuration file nginx.conf, but not
       to nginx prefix directory.

    *) Change: the --sysconfdir=PATH option in configure was canceled.

    *) Change: the special make target "upgrade1" was defined for online
       upgrade of 0.1.x versions.

    *) Feature: the "server_name" and "valid_referers" directives support
       regular expressions.

    *) Feature: the "server" directive in the "upstream" context supports
       the "backup" parameter.

    *) Feature: the ngx_http_perl_module supports the
       $r->discard_request_body.

    *) Feature: the "add_header Last-Modified ..." directive changes the
       "Last-Modified" response header line.

    *) Bugfix: if a response different than 200 was returned to a request
       with body and connection went to the keep-alive state after the
       request, then nginx returned 400 for the next request.

    *) Bugfix: a segmentation fault occurred in worker process if invalid
       address was set in the "auth_http" directive.

    *) Bugfix: now nginx uses default listen backlog value 511 on all
       platforms except FreeBSD.
       Thanks to Jiang Hong.

    *) Bugfix: a worker process may got caught in an endless loop, if a
       "server" inside "upstream" block was marked as "down"; the bug had
       appeared in 0.6.6.

    *) Bugfix: now Solaris sendfilev() is not used to transfer the client
       request body to FastCGI-server via the unix domain socket.


Changes with nginx 0.6.6                                         30 Jul 2007

    *) Feature: the --sysconfdir=PATH option in configure.

    *) Feature: named locations.

    *) Feature: the $args variable can be set with the "set" directive.

    *) Feature: the $is_args variable.

    *) Bugfix: fair big weight upstream balancer.

    *) Bugfix: if a client has closed connection to mail proxy then nginx
       might not close connection to backend.

    *) Bugfix: if the same host without specified port was used as backend
       for HTTP and HTTPS, then nginx used only one port - 80 or 443.

    *) Bugfix: fix building on Solaris/amd64 by Sun Studio 11 and early
       versions; the bug had appeared in 0.6.4.


Changes with nginx 0.6.5                                         23 Jul 2007

    *) Feature: $nginx_version variable.
       Thanks to Nick S. Grechukh.

    *) Feature: the mail proxy supports AUTHENTICATE in IMAP mode.
       Thanks to Maxim Dounin.

    *) Feature: the mail proxy supports STARTTLS in SMTP mode.
       Thanks to Maxim Dounin.

    *) Bugfix: now nginx escapes space in $memcached_key variable.

    *) Bugfix: nginx was incorrectly built by Sun Studio on Solaris/amd64.
       Thanks to Jiang Hong.

    *) Bugfix: of minor potential bugs.
       Thanks to Coverity's Scan.


Changes with nginx 0.6.4                                         17 Jul 2007

    *) Security: the "msie_refresh" directive allowed XSS.
       Thanks to Maxim Boguk.

    *) Change: the "proxy_store" and "fastcgi_store" directives were
       changed.

    *) Feature: the "proxy_store_access" and "fastcgi_store_access"
       directives.

    *) Bugfix: nginx did not work on Solaris/sparc64 if it was built by Sun
       Studio.
       Thanks to Andrei Nigmatulin.

    *) Workaround: for Sun Studio 12.
       Thanks to Jiang Hong.


Changes with nginx 0.6.3                                         12 Jul 2007

    *) Feature: the "proxy_store" and "fastcgi_store" directives.

    *) Bugfix: a segmentation fault might occur in worker process if the
       "auth_http_header" directive was used.
       Thanks to Maxim Dounin.

    *) Bugfix: a segmentation fault occurred in worker process if the
       CRAM-MD5 authentication method was used, but it was not enabled.

    *) Bugfix: a segmentation fault might occur in worker process when the
       HTTPS protocol was used in the "proxy_pass" directive.

    *) Bugfix: a segmentation fault might occur in worker process if the
       eventport method was used.

    *) Bugfix: the "proxy_ignore_client_abort" and
       "fastcgi_ignore_client_abort" directives did not work; the bug had
       appeared in 0.5.13.


Changes with nginx 0.6.2                                         09 Jul 2007

    *) Bugfix: if the FastCGI header was split in records, then nginx passed
       garbage in the header to a client.


Changes with nginx 0.6.1                                         17 Jun 2007

    *) Bugfix: in SSI parsing.

    *) Bugfix: if remote SSI subrequest was used, then posterior local file
       subrequest might transferred to client in wrong order.

    *) Bugfix: large SSI inclusions buffered in temporary files were
       truncated.

    *) Bugfix: the perl $$ variable value in ngx_http_perl_module was equal
       to the master process identification number.


Changes with nginx 0.6.0                                         14 Jun 2007

    *) Feature: the "server_name", "map", and "valid_referers" directives
       support the "www.example.*" wildcards.


Changes with nginx 0.5.25                                        11 Jun 2007

    *) Bugfix: nginx could not be built with the
       --without-http_rewrite_module parameter; the bug had appeared in
       0.5.24.


Changes with nginx 0.5.24                                        06 Jun 2007

    *) Security: the "ssl_verify_client" directive did not work if request
       was made using HTTP/0.9.

    *) Bugfix: a part of response body might be passed uncompressed if gzip
       was used; the bug had appeared in 0.5.23.


Changes with nginx 0.5.23                                        04 Jun 2007

    *) Feature: the ngx_http_ssl_module supports Server Name Indication TLS
       extension.

    *) Feature: the "fastcgi_catch_stderr" directive.
       Thanks to Nick S. Grechukh, OWOX project.

    *) Bugfix: a segmentation fault occurred in master process if two
       virtual servers should bind() to the overlapping ports.

    *) Bugfix: if nginx was built with ngx_http_perl_module and perl
       supported threads, then during second reconfiguration the error
       messages "panic: MUTEX_LOCK" and "perl_parse() failed" were issued.

    *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.


Changes with nginx 0.5.22                                        29 May 2007

    *) Bugfix: a big request body might not be passed to backend; the bug
       had appeared in 0.5.21.


Changes with nginx 0.5.21                                        28 May 2007

    *) Bugfix: if server has more than about ten locations, then regex
       locations might be choosen not in that order as they were specified.

    *) Bugfix: a worker process may got caught in an endless loop on 64-bit
       platform, if the 33-rd or next in succession backend has failed.
       Thanks to Anton Povarov.

    *) Bugfix: a bus error might occur on Solaris/sparc64 if the PCRE
       library was used.
       Thanks to Andrei Nigmatulin.

    *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.


Changes with nginx 0.5.20                                        07 May 2007

    *) Feature: the "sendfile_max_chunk" directive.

    *) Feature: the "$http_...", "$sent_http_...", and "$upstream_http_..."
       variables may be changed using the "set" directive.

    *) Bugfix: a segmentation fault might occur in worker process if the SSI
       command 'if expr="$var = /"' was used.

    *) Bugfix: trailing boundary of multipart range response was transferred
       incorrectly.
       Thanks to Evan Miller.

    *) Bugfix: nginx did not work on Solaris/sparc64 if it was built by Sun
       Studio.
       Thanks to Andrei Nigmatulin.

    *) Bugfix: the ngx_http_perl_module could not be built by Solaris make.
       Thanks to Andrei Nigmatulin.


Changes with nginx 0.5.19                                        24 Apr 2007

    *) Change: now the $request_time variable has millisecond precision.

    *) Change: the method $r->rflush of ngx_http_perl_module was renamed to
       the $r->flush.

    *) Feature: the $upstream_addr variable.

    *) Feature: the "proxy_headers_hash_max_size" and
       "proxy_headers_hash_bucket_size" directives.
       Thanks to Volodymyr Kostyrko.

    *) Bugfix: the files more than 2G could not be transferred using
       sendfile and limit_rate on 64-bit platforms.

    *) Bugfix: the files more than 2G could not be transferred using
       sendfile on 64-bit Linux.


Changes with nginx 0.5.18                                        19 Apr 2007

    *) Feature: the ngx_http_sub_filter_module.

    *) Feature: the "$upstream_http_..." variables.

    *) Feature: now the $upstream_status and $upstream_response_time
       variables keep data about all upstreams before X-Accel-Redirect.

    *) Bugfix: a segmentation fault occurred in master process after first
       reconfiguration and receiving any signal if nginx was built with
       ngx_http_perl_module and perl did not support multiplicity; the bug
       had appeared in 0.5.9.

    *) Bugfix: if perl did not support multiplicity, then after
       reconfiguration perl code did not work; the bug had appeared in
       0.3.38.


Changes with nginx 0.5.17                                        02 Apr 2007

    *) Change: now nginx always returns the 405 status for the TRACE method.

    *) Feature: now nginx supports the "include" directive inside the
       "types" block.

    *) Bugfix: the $document_root variable usage in the "root" and "alias"
       directives is disabled: this caused recursive stack overflow.

    *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.

    *) Bugfix: in some cases non-cachable variables (such as $uri variable)
       returned old cached value.


Changes with nginx 0.5.16                                        26 Mar 2007

    *) Bugfix: the C-class network was not used as hash key in the "ip_hash"
       directive.
       Thanks to Pavel Yarkovoy.

    *) Bugfix: a segmentation fault might occur in worker process if a
       charset was set in the "Content-Type" header line and the line has
       trailing ";"; the bug had appeared in 0.3.50.

    *) Bugfix: the "[alert] zero size buf" error when FastCGI server was
       used and a request body written in a temporary file was multiple of
       32K.

    *) Bugfix: nginx could not be built on Solaris without the --with-debug
       option; the bug had appeared in 0.5.15.


Changes with nginx 0.5.15                                        19 Mar 2007

    *) Feature: the mail proxy supports authenticated SMTP proxying and the
       "smtp_auth", "smtp_capablities", and "xclient" directives.
       Thanks to Anton Yuzhaninov and Maxim Dounin.

    *) Feature: now the keep-alive connections are closed just after
       receiving the reconfiguration signal.

    *) Change: the "imap" and "auth" directives were renamed to the "mail"
       and "pop3_auth" directives.

    *) Bugfix: a segmentation fault occurred in worker process if the
       CRAM-MD5 authentication method was used and the APOP method was
       disabled.

    *) Bugfix: if the "starttls only" directive was used in POP3 protocol,
       then nginx allowed authentication without switching to the SSL mode.

    *) Bugfix: worker processes did not exit after reconfiguration and did
       not rotate logs if the eventport method was used.

    *) Bugfix: a worker process may got caught in an endless loop, if the
       "ip_hash" directive was used.

    *) Bugfix: now nginx does not log some alerts if eventport or /dev/poll
       methods are used.


Changes with nginx 0.5.14                                        23 Feb 2007

    *) Bugfix: nginx ignored superfluous closing "}" in the end of
       configuration file.


Changes with nginx 0.5.13                                        19 Feb 2007

    *) Feature: the COPY and MOVE methods.

    *) Bugfix: the ngx_http_realip_module set garbage for requests passed
       via keep-alive connection.

    *) Bugfix: nginx did not work on big-endian 64-bit Linux.
       Thanks to Andrei Nigmatulin.

    *) Bugfix: now when IMAP/POP3 proxy receives too long command it closes
       the connection right away, but not after timeout.

    *) Bugfix: if the "epoll" method was used and a client closed a
       connection prematurely, then nginx closed the connection after a send
       timeout only.

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.5.8.


Changes with nginx 0.5.12                                        12 Feb 2007

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.5.8.

    *) Bugfix: a segmentation fault might occur in worker process if the
       temporary files were used while working with FastCGI server; the bug
       had appeared in 0.5.8.

    *) Bugfix: a segmentation fault might occur in worker process if the
       $fastcgi_script_name variable was logged.

    *) Bugfix: ngx_http_perl_module could not be built on Solaris.


Changes with nginx 0.5.11                                        05 Feb 2007

    *) Feature: now configure detects system PCRE library in MacPorts.
       Thanks to Chris McGrath.

    *) Bugfix: the response was incorrect if several ranges were requested;
       the bug had appeared in 0.5.6.

    *) Bugfix: the "create_full_put_path" directive could not create the
       intermediate directories if no "dav_access" directive was set.
       Thanks to Evan Miller.

    *) Bugfix: the "0" response code might be logged in the access_log
       instead of the "400" and "408" error codes.

    *) Bugfix: a segmentation fault might occur in worker process if nginx
       was built with -O2 optimization.


Changes with nginx 0.5.10                                        26 Jan 2007

    *) Bugfix: while online executable file upgrade the new master process
       did not inherit the listening sockets; the bug had appeared in 0.5.9.

    *) Bugfix: a segmentation fault might occur in worker process if nginx
       was built with -O2 optimization; the bug had appeared in 0.5.1.


Changes with nginx 0.5.9                                         25 Jan 2007

    *) Change: now the ngx_http_memcached_module uses the $memcached_key
       variable value as a key.

    *) Feature: the $memcached_key variable.

    *) Feature: the "clean" parameter in the "client_body_in_file_only"
       directive.

    *) Feature: the "env" directive.

    *) Feature: the "sendfile" directive is available inside the "if" block.

    *) Feature: now on failure of the writing to access nginx logs a message
       to error_log, but not more often than once a minute.

    *) Bugfix: the "access_log off" directive did not always turn off the
       logging.


Changes with nginx 0.5.8                                         19 Jan 2007

    *) Bugfix: a segmentation fault might occur if
       "client_body_in_file_only on" was used and a request body was small.

    *) Bugfix: a segmentation fault occurred if
       "client_body_in_file_only on" and "proxy_pass_request_body off" or
       "fastcgi_pass_request_body off" directives were used, and nginx
       switched to a next upstream.

    *) Bugfix: if the "proxy_buffering off" directive was used and a client
       connection was non-active, then the connection was closed after send
       timeout; the bug had appeared in 0.4.7.

    *) Bugfix: if the "epoll" method was used and a client closed a
       connection prematurely, then nginx closed the connection after a send
       timeout only.

    *) Bugfix: the "[alert] zero size buf" error when FastCGI server was
       used.

    *) Bugfixes in the "limit_zone" directive.


Changes with nginx 0.5.7                                         15 Jan 2007

    *) Feature: the ssl_session_cache storage optimization.

    *) Bugfixes in the "ssl_session_cache" and "limit_zone" directives.

    *) Bugfix: the segmentation fault was occurred on start or while
       reconfiguration if the "ssl_session_cache" or "limit_zone" directives
       were used on 64-bit platforms.

    *) Bugfix: a segmentation fault occurred if the "add_before_body" or
       "add_after_body" directives were used and there was no "Content-Type"
       header line in response.

    *) Bugfix: the OpenSSL library was always built with the threads
       support.
       Thanks to Den Ivanov.

    *) Bugfix: the PCRE-6.5+ library and the icc compiler compatibility.


Changes with nginx 0.5.6                                         09 Jan 2007

    *) Change: now the ngx_http_index_module ignores all methods except the
       GET, HEAD, and POST methods.

    *) Feature: the ngx_http_limit_zone_module.

    *) Feature: the $binary_remote_addr variable.

    *) Feature: the "ssl_session_cache" directives of the
       ngx_http_ssl_module and ngx_imap_ssl_module.

    *) Feature: the DELETE method supports recursive removal.

    *) Bugfix: the byte-ranges were transferred incorrectly if the
       $r->sendfile() was used.


Changes with nginx 0.5.5                                         24 Dec 2006

    *) Change: the -v switch does not show compiler information any more.

    *) Feature: the -V switch.

    *) Feature: the "worker_rlimit_core" directive supports size in K, M,
       and G.

    *) Bugfix: the nginx.pm module now could be installed by an unprivileged
       user.

    *) Bugfix: a segmentation fault might occur if the $r->request_body or
       $r->request_body_file methods were used.

    *) Bugfix: the ppc platform specific bugs.


Changes with nginx 0.5.4                                         15 Dec 2006

    *) Feature: the "perl" directive may be used inside the "limit_except"
       block.

    *) Bugfix: the ngx_http_dav_module required the "Date" request header
       line for the DELETE method.

    *) Bugfix: if one only parameter was used in the "dav_access" directive,
       then nginx might report about configuration error.

    *) Bugfix: a segmentation fault might occur if the $host variable was
       used; the bug had appeared in 0.4.14.


Changes with nginx 0.5.3                                         13 Dec 2006

    *) Feature: the ngx_http_perl_module supports the $r->status,
       $r->log_error, and $r->sleep methods.

    *) Feature: the $r->variable method supports variables that do not exist
       in nginx configuration.

    *) Bugfix: the $r->has_request_body method did not work.


Changes with nginx 0.5.2                                         11 Dec 2006

    *) Bugfix: if the "proxy_pass" directive used the name of the "upstream"
       block, then nginx tried to resolve the name; the bug had appeared in
       0.5.1.


Changes with nginx 0.5.1                                         11 Dec 2006

    *) Bugfix: the "post_action" directive might not run after a
       unsuccessful completion of a request.

    *) Workaround: for Eudora for Mac; the bug had appeared in 0.4.11.
       Thanks to Bron Gondwana.

    *) Bugfix: if the "upstream" name was used in the "fastcgi_pass", then
       the message "no port in upstream" was issued; the bug had appeared in
       0.5.0.

    *) Bugfix: if the "proxy_pass" and "fastcgi_pass" directives used the
       same servers but different ports, then these directives uses the
       first described port; the bug had appeared in 0.5.0.

    *) Bugfix: if the "proxy_pass" and "fastcgi_pass" directives used the
       unix domain sockets, then these directives used first described
       socket; the bug had appeared in 0.5.0.

    *) Bugfix: ngx_http_auth_basic_module ignored the user if it was in the
       last line in the password file and there was no the carriage return,
       the line feed, or the ":" symbol after the password.

    *) Bugfix: the $upstream_response_time variable might be equal to
       "0.000", although response time was more than 1 millisecond.


Changes with nginx 0.5.0                                         04 Dec 2006

    *) Change: the parameters in the "%name" form in the "log_format"
       directive are not supported anymore.

    *) Change: the "proxy_upstream_max_fails",
       "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails",
       "fastcgi_upstream_fail_timeout", "memcached_upstream_max_fails", and
       "memcached_upstream_fail_timeout" directives are not supported
       anymore.

    *) Feature: the "server" directive in the "upstream" context supports
       the "max_fails", "fail_timeout", and "down" parameters.

    *) Feature: the "ip_hash" directive inside the "upstream" block.

    *) Feature: the WAIT status in the "Auth-Status" header line of the
       IMAP/POP3 proxy authentication server response.

    *) Bugfix: nginx could not be built on 64-bit platforms; the bug had
       appeared in 0.4.14.


Changes with nginx 0.4.14                                        27 Nov 2006

    *) Feature: the "proxy_pass_error_message" directive in IMAP/POP3 proxy.

    *) Feature: now configure detects system PCRE library on FreeBSD, Linux,
       and NetBSD.

    *) Bugfix: ngx_http_perl_module did not work with perl built with the
       threads support; the bug had appeared in 0.3.38.

    *) Bugfix: ngx_http_perl_module did not work if perl was called
       recursively.

    *) Bugfix: nginx ignored a host name in a request line.

    *) Bugfix: a worker process may got caught in an endless loop, if a
       FastCGI server sent too many data to the stderr.

    *) Bugfix: the $upstream_response_time variable may be negative if the
       system time was changed backward.

    *) Bugfix: the "Auth-Login-Attempt" parameter was not sent to IMAP/POP3
       proxy authentication server when POP3 was used.

    *) Bugfix: a segmentation fault might occur if connect to IMAP/POP3
       proxy authentication server failed.


Changes with nginx 0.4.13                                        15 Nov 2006

    *) Feature: the "proxy_pass" directive may be used inside the
       "limit_except" block.

    *) Feature: the "limit_except" directive supports all WebDAV methods.

    *) Bugfix: if the "add_before_body" directive was used without the
       "add_after_body" directive, then a response did not transferred
       complete.

    *) Bugfix: a large request body did not receive if the epoll method and
       the deferred accept() were used.

    *) Bugfix: a charset could not be set for ngx_http_autoindex_module
       responses; the bug had appeared in 0.3.50.

    *) Bugfix: the "[alert] zero size buf" error when FastCGI server was
       used;

    *) Bugfix: the --group= configuration parameter was ignored.
       Thanks to Thomas Moschny.

    *) Bugfix: the 50th subrequest in SSI response did not work; the bug had
       appeared in 0.3.50.


Changes with nginx 0.4.12                                        31 Oct 2006

    *) Feature: the ngx_http_perl_module supports the $r->variable method.

    *) Bugfix: if a big static file was included using SSI in a response,
       then the response may be transferred incomplete.

    *) Bugfix: nginx did not omit the "#fragment" part in URI.


Changes with nginx 0.4.11                                        25 Oct 2006

    *) Feature: the POP3 proxy supports the AUTH LOGIN PLAIN and CRAM-MD5.

    *) Feature: the ngx_http_perl_module supports the $r->allow_ranges
       method.

    *) Bugfix: if the APOP was enabled in the POP3 proxy, then the USER/PASS
       commands might not work; the bug had appeared in 0.4.10.


Changes with nginx 0.4.10                                        23 Oct 2006

    *) Feature: the POP3 proxy supports the APOP command.

    *) Bugfix: if the select, poll or /dev/poll methods were used, then
       while waiting authentication server response the IMAP/POP3 proxy
       hogged CPU.

    *) Bugfix: a segmentation fault might occur if the $server_addr variable
       was used in the "map" directive.

    *) Bugfix: the ngx_http_flv_module did not support the byte ranges for
       full responses; the bug had appeared in 0.4.7.

    *) Bugfix: nginx could not be built on Debian amd64; the bug had
       appeared in 0.4.9.


Changes with nginx 0.4.9                                         13 Oct 2006

    *) Feature: the "set" parameter in the "include" SSI command.

    *) Feature: the ngx_http_perl_module now tests the nginx.pm module
       version.


Changes with nginx 0.4.8                                         11 Oct 2006

    *) Bugfix: if an "include" SSI command were before another "include" SSI
       command with a "wait" parameter, then the "wait" parameter might not
       work.

    *) Bugfix: the ngx_http_flv_module added the FLV header to the full
       responses.
       Thanks to Alexey Kovyrin.


Changes with nginx 0.4.7                                         10 Oct 2006

    *) Feature: the ngx_http_flv_module.

    *) Feature: the $request_body_file variable.

    *) Feature: the "charset" and "source_charset" directives support the
       variables.

    *) Bugfix: if an "include" SSI command were before another "include" SSI
       command with a "wait" parameter, then the "wait" parameter might not
       work.

    *) Bugfix: if the "proxy_buffering off" directive was used or while
       working with memcached the connections might not be closed on
       timeout.

    *) Bugfix: nginx did not run on 64-bit platforms except amd64, sparc64,
       and ppc64.


Changes with nginx 0.4.6                                         06 Oct 2006

    *) Bugfix: nginx did not run on 64-bit platforms except amd64, sparc64,
       and ppc64.

    *) Bugfix: nginx sent the chunked response for HTTP/1.1 request,
       if its length was set by text string in the
       $r->headers_out("Content-Length", ...) method.

    *) Bugfix: after redirecting error by an "error_page" directive any
       ngx_http_rewrite_module directive returned this error code; the bug
       had appeared in 0.4.4.


Changes with nginx 0.4.5                                         02 Oct 2006

    *) Bugfix: nginx could not be built on Linux and Solaris; the bug had
       appeared in 0.4.4.


Changes with nginx 0.4.4                                         02 Oct 2006

    *) Feature: the $scheme variable.

    *) Feature: the "expires" directive supports the "max" parameter.

    *) Feature: the "include" directive supports the "*" mask.
       Thanks to Jonathan Dance.

    *) Bugfix: the "return" directive always overrode the "error_page"
       response code redirected by the "error_page" directive.

    *) Bugfix: a segmentation fault occurred if zero-length body was in PUT
       method.

    *) Bugfix: the redirect was changed incorrectly if the variables were
       used in the "proxy_redirect" directive.


Changes with nginx 0.4.3                                         26 Sep 2006

    *) Change: now the 499 error could not be redirected using an
       "error_page" directive.

    *) Feature: the Solaris 10 event ports support.

    *) Feature: the ngx_http_browser_module.

    *) Bugfix: a segmentation fault may occur while redirecting the 400
       error to the proxied server using a "proxy_pass" directive.

    *) Bugfix: a segmentation fault occurred if an unix domain socket was
       used in a "proxy_pass" directive; the bug had appeared in 0.3.47.

    *) Bugfix: SSI did work with memcached and nonbuffered responses.

    *) Workaround: of the Sun Studio PAUSE hardware capability bug.


Changes with nginx 0.4.2                                         14 Sep 2006

    *) Bugfix: the O_NOATIME flag support on Linux was canceled; the bug had
       appeared in 0.4.1.


Changes with nginx 0.4.1                                         14 Sep 2006

    *) Bugfix: the DragonFlyBSD compatibility.
       Thanks to Pavel Nazarov.

    *) Workaround: of bug in 64-bit Linux sendfile(), when file is more than
       2G.

    *) Feature: now on Linux nginx uses O_NOATIME flag for static requests.
       Thanks to Yusuf Goolamabbas.


Changes with nginx 0.4.0                                         30 Aug 2006

    *) Change in internal API: the HTTP modules initialization was moved
       from the init module phase to the HTTP postconfiguration phase.

    *) Change: now the request body is not read beforehand for the
       ngx_http_perl_module: it's required to start the reading using the
       $r->has_request_body method.

    *) Feature: the ngx_http_perl_module supports the DECLINED return code.

    *) Feature: the ngx_http_dav_module supports the incoming "Date" header
       line for the PUT method.

    *) Feature: the "ssi" directive is available inside the "if" block.

    *) Bugfix: a segmentation fault occurred if there was an "index"
       directive with variables and the first index name was without
       variables; the bug had appeared in 0.1.29.


Changes with nginx 0.3.61                                        28 Aug 2006

    *) Change: now the "tcp_nodelay" directive is turned on by default.

    *) Feature: the "msie_refresh" directive.

    *) Feature: the "recursive_error_pages" directive.

    *) Bugfix: the "rewrite" directive returned incorrect redirect, if the
       redirect had the captured escaped symbols from original URI.


Changes with nginx 0.3.60                                        18 Aug 2006

    *) Bugfix: a worker process may got caught in an endless loop while an
       error redirection; the bug had appeared in 0.3.59.


Changes with nginx 0.3.59                                        16 Aug 2006

    *) Feature: now is possible to do several redirection using the
       "error_page" directive.

    *) Bugfix: the "dav_access" directive did not support three parameters.

    *) Bugfix: the "error_page" directive did not changes the "Content-Type"
       header line after the "X-Accel-Redirect" was used; the bug had
       appeared in 0.3.58.


Changes with nginx 0.3.58                                        14 Aug 2006

    *) Feature: the "error_page" directive supports the variables.

    *) Change: now the procfs interface instead of sysctl is used on Linux.

    *) Change: now the "Content-Type" header line is inherited from first
       response when the "X-Accel-Redirect" was used.

    *) Bugfix: the "error_page" directive did not redirect the 413 error.

    *) Bugfix: the trailing "?" did not remove old arguments if no new
       arguments were added to a rewritten URI.

    *) Bugfix: nginx could not run on 64-bit FreeBSD 7.0-CURRENT.


Changes with nginx 0.3.57                                        09 Aug 2006

    *) Feature: the $ssl_client_serial variable.

    *) Bugfix: in the "!-e" operator of the "if" directive.
       Thanks to Andrian Budanstov.

    *) Bugfix: while a client certificate verification nginx did not send to
       a client the required certificates information.

    *) Bugfix: the $document_root variable did not support the variables in
       the "root" directive.


Changes with nginx 0.3.56                                        04 Aug 2006

    *) Feature: the "dav_access" directive.

    *) Feature: the "if" directive supports the "-d", "!-d", "-e", "!-e",
       "-x", and "!-x" operators.

    *) Bugfix: a segmentation fault occurred if a request returned a
       redirect and some sent to client header lines were logged in the
       access log.


Changes with nginx 0.3.55                                        28 Jul 2006

    *) Feature: the "stub" parameter in the "include" SSI command.

    *) Feature: the "block" SSI command.

    *) Feature: the unicode2nginx script was added to contrib.

    *) Bugfix: if a "root" was specified by variable only, then the root was
       relative to a server prefix.

    *) Bugfix: if the request contained "//" or "/./" and escaped symbols
       after them, then the proxied request was sent unescaped.

    *) Bugfix: the $r->header_in("Cookie") of the ngx_http_perl_module now
       returns all "Cookie" header lines.

    *) Bugfix: a segmentation fault occurred if
       "client_body_in_file_only on" was used and nginx switched to a next
       upstream.

    *) Bugfix: on some condition while reconfiguration character codes
       inside the "charset_map" may be treated invalid; the bug had appeared
       in 0.3.50.


Changes with nginx 0.3.54                                        11 Jul 2006

    *) Feature: nginx now logs the subrequest information to the error log.

    *) Feature: the "proxy_next_upstream", "fastcgi_next_upstream", and
       "memcached_next_upstream" directives support the "off" parameter.

    *) Feature: the "debug_connection" directive supports the CIDR address
       form.

    *) Bugfix: if a response of proxied server or FastCGI server was
       converted from UTF-8 or back, then it may be transferred incomplete.

    *) Bugfix: the $upstream_response_time variable had the time of the
       first request to a backend only.

    *) Bugfix: nginx could not be built on amd64 platform; the bug had
       appeared in 0.3.53.


Changes with nginx 0.3.53                                        07 Jul 2006

    *) Change: the "add_header" directive adds the string to 204, 301, and
       302 responses.

    *) Feature: the "server" directive in the "upstream" context supports
       the "weight" parameter.

    *) Feature: the "server_name" directive supports the "*" wildcard.

    *) Feature: nginx supports the request body size more than 2G.

    *) Bugfix: if a client was successfully authorized using "satisfy_any
       on", then anyway the message "access forbidden by rule" was written
       in the log.

    *) Bugfix: the "PUT" method may erroneously not create a file and return
       the 409 code.

    *) Bugfix: if the IMAP/POP3 backend returned an error, then nginx
       continued proxying anyway.


Changes with nginx 0.3.52                                        03 Jul 2006

    *) Change: the ngx_http_index_module behavior for the "POST /" requests
       is reverted to the 0.3.40 version state: the module now does not
       return the 405 error.

    *) Bugfix: the worker process may got caught in an endless loop if the
       limit rate was used; the bug had appeared in 0.3.37.

    *) Bugfix: ngx_http_charset_module logged "unknown charset" alert, even
       if the recoding was not needed; the bug had appeared in 0.3.50.

    *) Bugfix: if a code response of the PUT request was 409, then a
       temporary file was not removed.


Changes with nginx 0.3.51                                        30 Jun 2006

    *) Bugfix: the "<" symbols might disappeared some conditions in the SSI;
       the bug had appeared in 0.3.50.


Changes with nginx 0.3.50                                        28 Jun 2006

    *) Change: the "proxy_redirect_errors" and "fastcgi_redirect_errors"
       directives was renamed to the "proxy_intercept_errors" and
       "fastcgi_intercept_errors" directives.

    *) Feature: the ngx_http_charset_module supports the recoding from the
       single byte encodings to the UTF-8 encoding and back.

    *) Feature: the "X-Accel-Charset" response header line is supported in
       proxy and FastCGI mode.

    *) Bugfix: the "\" escape symbol in the "\"" and "\'" pairs in the SSI
       command was removed only if the command also has the "$" symbol.

    *) Bugfix: the "<!--" string might be added on some conditions in the
       SSI after inclusion.

    *) Bugfix: if the "Content-Length: 0" header line was in response, then
       in nonbuffered proxying mode the client connection was not closed.


Changes with nginx 0.3.49                                        31 May 2006

    *) Bugfix: in the "set" directive.

    *) Bugfix: if two or more FastCGI subrequests was in SSI, then first
       subrequest output was included instead of second and following
       subrequests.


Changes with nginx 0.3.48                                        29 May 2006

    *) Change: now the ngx_http_charset_module works for subrequests, if the
       response has no "Content-Type" header line.

    *) Bugfix: if the "proxy_pass" directive has no URI part, then the
       "proxy_redirect default" directive add the unnecessary slash in start
       of the rewritten redirect.

    *) Bugfix: the internal redirect always transform client's HTTP method
       to GET, now the transformation is made for the "X-Accel-Redirect"
       redirects only and if the method is not HEAD; the bug had appeared in
       0.3.42.

    *) Bugfix: the ngx_http_perl_module could not be built, if the perl was
       built with the threads support; the bug had appeared in 0.3.46.


Changes with nginx 0.3.47                                        23 May 2006

    *) Feature: the "upstream" directive.

    *) Change: now the "\" escape symbol in the "\"" and "\'" pairs in the
       SSI command is always removed.


Changes with nginx 0.3.46                                        11 May 2006

    *) Feature: the "proxy_hide_header", "proxy_pass_header",
       "fastcgi_hide_header", and "fastcgi_pass_header" directives.

    *) Change: the "proxy_pass_x_powered_by", "fastcgi_x_powered_by", and
       "proxy_pass_server" directives were canceled.

    *) Feature: the "X-Accel-Buffering" response header line is supported in
       proxy mode.

    *) Bugfix: the reconfiguration bug and memory leaks in the
       ngx_http_perl_module.


Changes with nginx 0.3.45                                        06 May 2006

    *) Feature: the "ssl_verify_client", "ssl_verify_depth", and
       "ssl_client_certificate" directives.

    *) Change: the $request_method variable now returns the main request
       method.

    *) Change: the &deg; symbol codes were changed in koi-win conversion
       table.

    *) Feature: the euro and N symbols were added to koi-win conversion
       table.

    *) Bugfix: if nginx distributed the requests among several backends and
       some backend failed, then requests intended for this backend was
       directed to one live backend only instead of being distributed among
       the rest.


Changes with nginx 0.3.44                                        04 May 2006

    *) Feature: the "wait" parameter in the "include" SSI command.

    *) Feature: the Ukrainian and Byelorussian characters were added to
       koi-win conversion table.

    *) Bugfix: in the SSI.


Changes with nginx 0.3.43                                        26 Apr 2006

    *) Bugfix: in the SSI.


Changes with nginx 0.3.42                                        26 Apr 2006

    *) Feature: the "bind" option of the "listen" directive in IMAP/POP3
       proxy.

    *) Bugfix: if the same capture in the "rewrite" directive was used more
       then once.

    *) Bugfix: the $sent_http_content_type, $sent_http_content_length,
       $sent_http_last_modified, $sent_http_connection,
       $sent_http_keep_alive, and $sent_http_transfer_encoding variables
       were not written to access log.

    *) Bugfix: the $sent_http_cache_control returned value of the single
       "Cache-Control" response header line.


Changes with nginx 0.3.41                                        21 Apr 2006

    *) Feature: the -v switch.

    *) Bugfix: the segmentation fault may occurred if the SSI page has
       remote subrequests.

    *) Bugfix: in FastCGI handling.

    *) Bugfix: if the perl modules path was not set using
       --with-perl_modules_path=PATH or the "perl_modules", then the
       segmentation fault was occurred.


Changes with nginx 0.3.40                                        19 Apr 2006

    *) Feature: the ngx_http_dav_module supports the MKCOL method.

    *) Feature: the "create_full_put_path" directive.

    *) Feature: the "$limit_rate" variable.


Changes with nginx 0.3.39                                        17 Apr 2006

    *) Feature: the "uninitialized_variable_warn" directive; the logging
       level of the "uninitialized variable" message was lowered from
       "alert" to "warn".

    *) Feature: the "override_charset" directive.

    *) Change: now if the unknown variable is used in the "echo" and "if
       expr='$name'" SSI-commands, then the "unknown variable" message is
       not logged.

    *) Bugfix: the active connection counter increased on the exceeding of
       the connection limit specified by the "worker_connections" directive;
       the bug had appeared in 0.2.0.

    *) Bugfix: the limit rate might not work on some condition; the bug had
       appeared in 0.3.38.


Changes with nginx 0.3.38                                        14 Apr 2006

    *) Feature: the ngx_http_dav_module.

    *) Change: the ngx_http_perl_module optimizations.
       Thanks to Sergey Skvortsov.

    *) Feature: the ngx_http_perl_module supports the $r->request_body_file
       method.

    *) Feature: the "client_body_in_file_only" directive.

    *) Workaround: now on disk overflow nginx tries to write access logs
       once a second only.
       Thanks to Anton Yuzhaninov and Maxim Dounin.

    *) Bugfix: now the "limit_rate" directive more precisely limits rate if
       rate is more than 100 Kbyte/s.
       Thanks to ForJest.

    *) Bugfix: now the IMAP/POP3 proxy escapes the "\r" and "\n" symbols in
       login and password to pass authorization server.
       Thanks to Maxim Dounin.


Changes with nginx 0.3.37                                        07 Apr 2006

    *) Feature: the "limit_except" directive.

    *) Feature: the "if" directive supports the "!~", "!~*", "-f", and "!-f"
       operators.

    *) Feature: the ngx_http_perl_module supports the $r->request_body
       method.

    *) Bugfix: in the ngx_http_addition_filter_module.


Changes with nginx 0.3.36                                        05 Apr 2006

    *) Feature: the ngx_http_addition_filter_module.

    *) Feature: the "proxy_pass" and "fastcgi_pass" directives may be used
       inside the "if" block.

    *) Feature: the "proxy_ignore_client_abort" and
       "fastcgi_ignore_client_abort" directives.

    *) Feature: the "$request_completion" variable.

    *) Feature: the ngx_http_perl_module supports the $r->request_method and
       $r->remote_addr.

    *) Feature: the ngx_http_ssi_module supports the "elif" command.

    *) Bugfix: the "\/" string in the expression of the "if" command of the
       ngx_http_ssi_module was treated incorrectly.

    *) Bugfix: in the regular expressions in the "if" command of the
       ngx_http_ssi_module.

    *) Bugfix: if the relative path was specified in the
       "client_body_temp_path", "proxy_temp_path", "fastcgi_temp_path", and
       "perl_modules" directives, then the directory was used relatively to
       a current path but not to a server prefix.


Changes with nginx 0.3.35                                        22 Mar 2006

    *) Bugfix: the accept-filter and the TCP_DEFER_ACCEPT option were set
       for first "listen" directive only; the bug had appeared in 0.3.31.

    *) Bugfix: in the "proxy_pass" directive without the URI part in a
       subrequest.


Changes with nginx 0.3.34                                        21 Mar 2006

    *) Feature: the "add_header" directive supports the variables.


Changes with nginx 0.3.33                                        15 Mar 2006

    *) Feature: the "http_503" parameter of the "proxy_next_upstream" or
       "fastcgi_next_upstream" directives.

    *) Bugfix: ngx_http_perl_module did not work with inlined in the
       configuration code, if it was not started with the "sub" word.

    *) Bugfix: in the "post_action" directive.


Changes with nginx 0.3.32                                        11 Mar 2006

    *) Bugfix: the debug logging on startup and reconfiguration time was
       removed; the bug had appeared in 0.3.31.


Changes with nginx 0.3.31                                        10 Mar 2006

    *) Change: now nginx passes the malformed proxied backend responses.

    *) Feature: the "listen" directives support the address in the "*:port"
       form.

    *) Feature: the EVFILER_TIMER support in MacOSX 10.4.

    *) Workaround: for MacOSX 64-bit kernel kqueue millisecond timeout bug.
       Thanks to Andrei Nigmatulin.

    *) Bugfix: if there were several "listen" directives listening one
       various addresses inside one server, then server names like
       "*.domain.tld" worked for first address only; the bug had appeared in
       0.3.18.

    *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
       and the request body was in temporary file then the request was not
       transferred.

    *) Bugfix: perl 5.8.8 compatibility.


Changes with nginx 0.3.30                                        22 Feb 2006

    *) Change: the ECONNABORTED error log level was changed to "error" from
       "crit".

    *) Bugfix: the ngx_http_perl_module could not be build without the
       ngx_http_ssi_filter_module.

    *) Bugfix: nginx could not be built on i386 platform, if the PIC was
       used; the bug had appeared in 0.3.27.


Changes with nginx 0.3.29                                        20 Feb 2006

    *) Feature: now nginx uses less memory, if PHP in FastCGI mode sends
       many warnings before the response.

    *) Bugfix: the "Transfer-Encoding: chunked" header line was issued in
       the 204 responses for the HTTP/1.1 requests.

    *) Bugfix: nginx returned the 502 response, if the complete response
       header lines were transferred in a separate FastCGI records.

    *) Bugfix: if the proxied URI was specified in the "post_action"
       directive, then it ran only after a successful completion of a
       request.


Changes with nginx 0.3.28                                        16 Feb 2006

    *) Feature: the "restrict_host_names" directive was canceled.

    *) Feature: the --with-cpu-opt=ppc64 configuration parameter.

    *) Bugfix: on some condition the proxied connection with a client was
       terminated prematurely.
       Thanks to Vladimir Shutoff.

    *) Bugfix: the "X-Accel-Limit-Rate" header line was not taken into
       account if the request was redirected using the "X-Accel-Redirect"
       header line.

    *) Bugfix: the "post_action" directive ran only after a successful
       completion of a request.

    *) Bugfix: the proxied response body generated by the "post_action"
       directive was transferred to a client.


Changes with nginx 0.3.27                                        08 Feb 2006

    *) Change: the "variables_hash_max_size" and
       "variables_hash_bucket_size" directives.

    *) Feature: the $body_bytes_sent variable can be used not only in the
       "log_format" directive.

    *) Feature: the $ssl_protocol and $ssl_cipher variables.

    *) Feature: the cache line size detection for widespread CPUs at start
       time.

    *) Feature: now the "accept_mutex" directive is supported using fcntl(2)
       on platforms different from i386, amd64, sparc64, and ppc.

    *) Feature: the "lock_file" directive and the --with-lock-path=PATH
       autoconfiguration directive.

    *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
       then the requests with the body was not transferred.


Changes with nginx 0.3.26                                        03 Feb 2006

    *) Change: the "optimize_host_names" directive was renamed to the
       "optimize_server_names".

    *) Bugfix: if in the "proxy_pass" directive was no the URI part, then
       the main request URI was transferred to a backend while proxying the
       SSI subrequest.


Changes with nginx 0.3.25                                        01 Feb 2006

    *) Bugfix: the segmentation fault was occurred on start or while
       reconfiguration if there was invalid configuration; the bug had
       appeared in 0.3.24.


Changes with nginx 0.3.24                                        01 Feb 2006

    *) Workaround: for bug in FreeBSD kqueue.

    *) Bugfix: now a response generated by the "post_action" directive is
       not transferred to a client.

    *) Bugfix: the memory leaks were occurring if many log files were used.

    *) Bugfix: the first "proxy_redirect" directive was working inside one
       location.

    *) Bugfix: on 64-bit platforms segmentation fault may occurred on start
       if the many names were used in the "server_name" directives; the bug
       had appeared in 0.3.18.


Changes with nginx 0.3.23                                        24 Jan 2006

    *) Feature: the "optimize_host_names" directive.

    *) Bugfix: in using of the variables in the "path" and "alias"
       directives.

    *) Bugfix: the ngx_http_perl_module was incorrectly built on Linux and
       Solaris.


Changes with nginx 0.3.22                                        17 Jan 2006

    *) Feature: the ngx_http_perl_module supports the $r->args and
       $r->unescape methods.

    *) Feature: the method $r->query_string of ngx_http_perl_module was
       canceled.

    *) Bugfix: segmentation fault was occurred if the "none" or "blocked"
       values was specified in the "valid_referers" directive; the bug had
       appeared in 0.3.18.


Changes with nginx 0.3.21                                        16 Jan 2006

    *) Feature: the ngx_http_perl_module.

    *) Change: the "valid_referers" directive allows the referreres without
       URI part.


Changes with nginx 0.3.20                                        11 Jan 2006

    *) Bugfix: in SSI handling.

    *) Bugfix: the ngx_http_memcached_module did not support the keys in the
       "/usr?args" form.


Changes with nginx 0.3.19                                        28 Dec 2005

    *) Feature: the "path" and "alias" directives support the variables.

    *) Change: now the "valid_referers" directive again checks the URI part.

    *) Bugfix: in SSI handling.


Changes with nginx 0.3.18                                        26 Dec 2005

    *) Feature: the "server_names" directive supports the ".domain.tld"
       names.

    *) Feature: the "server_names" directive uses the hash for the
       "*.domain.tld" names and more effective hash for usual names.

    *) Change: the "server_names_hash_max_size" and
       "server_names_hash_bucket_size" directives.

    *) Change: the "server_names_hash" and "server_names_hash_threshold"
       directives were canceled.

    *) Feature: the "valid_referers" directive uses the hash site names.

    *) Change: now the "valid_referers" directive checks the site names only
       without the URI part.

    *) Bugfix: some ".domain.tld" names incorrectly processed by the
       ngx_http_map_module.

    *) Bugfix: segmentation fault was occurred if configuration file did not
       exist; the bug had appeared in 0.3.12.

    *) Bugfix: on 64-bit platforms segmentation fault may occurred on start;
       the bug had appeared in 0.3.16.


Changes with nginx 0.3.17                                        18 Dec 2005

    *) Change: now on Linux configure checks the presence of epoll and
       sendfile64() in kernel.

    *) Feature: the "map" directive supports domain names in the
       ".domain.tld" form.

    *) Bugfix: the timeouts were not used in SSL handshake; the bug had
       appeared in 0.2.4.

    *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.

    *) Bugfix: when the HTTPS protocol was used in the "proxy_pass"
       directive the port 80 was used by default.


Changes with nginx 0.3.16                                        16 Dec 2005

    *) Feature: the ngx_http_map_module.

    *) Feature: the "types_hash_max_size" and "types_hash_bucket_size"
       directives.

    *) Feature: the "ssi_value_length" directive.

    *) Feature: the "worker_rlimit_core" directive.

    *) Workaround: the connection number in logs was always 1 if nginx was
       built by the icc 8.1 or 9.0 compilers with optimization for
       Pentium 4.

    *) Bugfix: the "config timefmt" SSI command set incorrect time format.

    *) Bugfix: nginx did not close connection to IMAP/POP3 backend for the
       SSL connections; the bug had appeared in 0.3.13.
       Thanks to Rob Mueller.

    *) Bugfix: segmentation fault may occurred in at SSL shutdown; the bug
       had appeared in 0.3.13.


Changes with nginx 0.3.15                                        07 Dec 2005

    *) Feature: the new 444 code of the "return" directive to close
       connection.

    *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy.

    *) Bugfix: if there are unclosed connection nginx now calls abort() only
       on gracefull quit and active "debug_points" directive.


Changes with nginx 0.3.14                                        05 Dec 2005

    *) Bugfix: in the 304 response the body was transferred; the bug had
       appeared in 0.3.13.


Changes with nginx 0.3.13                                        05 Dec 2005

    *) Feature: the IMAP/POP3 proxy supports STARTTLS and STLS.

    *) Bugfix: the IMAP/POP3 proxy did not work with the select, poll, and
       /dev/poll methods.

    *) Bugfix: in SSI handling.

    *) Bugfix: now Solaris sendfilev() is not used to transfer the client
       request body to FastCGI-server via the unix domain socket.

    *) Bugfix: the "auth_basic" directive did not disable the authorization;
       the bug had appeared in 0.3.11.


Changes with nginx 0.3.12                                        26 Nov 2005

    *) Security: if nginx was built with the ngx_http_realip_module and the
       "satisfy_any on" directive was used, then access and authorization
       directives did not work. The ngx_http_realip_module was not built and
       is not built by default.

    *) Change: the "$time_gmt" variable name was changed to "$time_local".

    *) Change: the "proxy_header_buffer_size" and
       "fastcgi_header_buffer_size" directives was renamed to the
       "proxy_buffer_size" and "fastcgi_buffer_size" directives.

    *) Feature: the ngx_http_memcached_module.

    *) Feature: the "proxy_buffering" directive.

    *) Bugfix: the changes in accept mutex handling when the "rtsig" method
       was used; the bug had appeared in 0.3.0.

    *) Bugfix: if the client sent the "Transfer-Encoding: chunked" header
       line, then nginx returns the 411 error.

    *) Bugfix: if the "auth_basic" directive was inherited from the http
       level, then the realm in the "WWW-Authenticate" header line was
       without the "Basic realm" text.

    *) Bugfix: if the "combined" format was explicitly specified in the
       "access_log" directive, then the empty lines was written to the log;
       the bug had appeared in 0.3.8.

    *) Bugfix: nginx did not run on the sparc platform under any OS except
       Solaris.

    *) Bugfix: now it is not necessary to place space between the quoted
       string and closing bracket in the "if" directive.


Changes with nginx 0.3.11                                        15 Nov 2005

    *) Bugfix: nginx did not pass the client request headers and body while
       proxying; the bug had appeared in 0.3.10.


Changes with nginx 0.3.10                                        15 Nov 2005

    *) Change: the "valid_referers" directive and the "$invalid_referer"
       variable were moved to the new ngx_http_referer_module from the
       ngx_http_rewrite_module.

    *) Change: the "$apache_bytes_sent" variable name was changed to
       "$body_bytes_sent".

    *) Feature: the "$sent_http_..." variables.

    *) Feature: the "if" directive supports the "=" and "!=" operations.

    *) Feature: the "proxy_pass" directive supports the HTTPS protocol.

    *) Feature: the "proxy_set_body" directive.

    *) Feature: the "post_action" directive.

    *) Feature: the ngx_http_empty_gif_module.

    *) Feature: the "worker_cpu_affinity" directive for Linux.

    *) Bugfix: the "rewrite" directive did not unescape URI part in
       redirect, now it is unescaped except the %00-%25 and %7F-%FF
       characters.

    *) Bugfix: nginx could not be built by the icc 9.0 compiler.

    *) Bugfix: if the SSI was enabled for zero size static file, then the
       chunked response was encoded incorrectly.


Changes with nginx 0.3.9                                         10 Nov 2005

    *) Bugfix: nginx considered URI as unsafe if two any symbols was between
       two slashes; the bug had appeared in 0.3.8.


Changes with nginx 0.3.8                                         09 Nov 2005

    *) Security: nginx now checks URI got from a backend in
       "X-Accel-Redirect" header line or in SSI file for the "/../" paths
       and zeroes.

    *) Change: nginx now does not treat the empty user name in the
       "Authorization" header line as valid one.

    *) Feature: the "ssl_session_timeout" directives of the
       ngx_http_ssl_module and ngx_imap_ssl_module.

    *) Feature: the "auth_http_header" directive of the
       ngx_imap_auth_http_module.

    *) Feature: the "add_header" directive.

    *) Feature: the ngx_http_realip_module.

    *) Feature: the new variables to use in the "log_format" directive:
       $bytes_sent, $apache_bytes_sent, $status, $time_gmt, $uri,
       $request_time, $request_length, $upstream_status,
       $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
       $connection, $pipe, and $msec. The parameters in the "%name" form
       will be canceled soon.

    *) Change: now the false variable values in the "if" directive are the
       empty string "" and string starting with "0".

    *) Bugfix: while using proxied or FastCGI-server nginx may leave
       connections and temporary files with client requests in open state.

    *) Bugfix: the worker processes did not flush the buffered logs on
       graceful exit.

    *) Bugfix: if the request URI was changes by the "rewrite" directive and
       the request was proxied in location given by regular expression, then
       the incorrect request was transferred to backend; the bug had
       appeared in 0.2.6.

    *) Bugfix: the "expires" directive did not remove the previous "Expires"
       header.

    *) Bugfix: nginx may stop to accept requests if the "rtsig" method and
       several worker processes were used.

    *) Bugfix: the "\"" and "\'" escape symbols were incorrectly handled in
       SSI commands.

    *) Bugfix: if the response was ended just after the SSI command and
       gzipping was used, then the response did not transferred complete or
       did not transferred at all.


Changes with nginx 0.3.7                                         27 Oct 2005

    *) Feature: the "access_log" supports the "buffer=" parameter.

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.3.2.


Changes with nginx 0.3.6                                         24 Oct 2005

    *) Change: now the IMAP/POP3 proxy do not send the empty login to
       authorization server.

    *) Feature: the "log_format" supports the variables in the $name form.

    *) Bugfix: if at least in one server was no the "listen" directive, then
       nginx did not listen on the 80 port; the bug had appeared in 0.3.3.

    *) Bugfix: if the URI part is omitted in "proxy_pass" directive, the 80
       port was always used.


Changes with nginx 0.3.5                                         21 Oct 2005

    *) Bugfix: the segmentation fault may occurred if the IMAP/POP3 login
       was changed by authorization server; the bug had appeared in 0.2.2.

    *) Bugfix: the accept mutex did not work and all connections were
       handled by one process; the bug had appeared in 0.3.3.

    *) Bugfix: the timeout did not work if the "rtsig" method and the
       "timer_resolution" directive were used.


Changes with nginx 0.3.4                                         19 Oct 2005

    *) Bugfix: nginx could not be built on Linux 2.4+ and MacOS X; the bug
       had appeared in 0.3.3.


Changes with nginx 0.3.3                                         19 Oct 2005

    *) Change: the "bl" and "af" parameters of the "listen" directive was
       renamed to the "backlog" and "accept_filter".

    *) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen"
       directive.

    *) Change: the "$msec" log parameter does not require now the additional
       the gettimeofday() system call.

    *) Feature: the -t switch now tests the "listen" directives.

    *) Bugfix: if the invalid address was specified in the "listen"
       directive, then after the -HUP signal nginx left an open socket in
       the CLOSED state.

    *) Bugfix: the mime type may be incorrectly set to default value for
       index file with variable in the name; the bug had appeared in 0.3.0.

    *) Feature: the "timer_resolution" directive.

    *) Feature: the millisecond "$upstream_response_time" log parameter.

    *) Bugfix: a temporary file with client request body now is removed just
       after the response header was transferred to a client.

    *) Bugfix: OpenSSL 0.9.6 compatibility.

    *) Bugfix: the SSL certificate and key file paths could not be relative.

    *) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in the
       ngx_imap_ssl_module.

    *) Bugfix: the "ssl_protocols" directive allowed to specify the single
       protocol only.


Changes with nginx 0.3.2                                         12 Oct 2005

    *) Feature: the Sun Studio 10 C compiler support.

    *) Feature: the "proxy_upstream_max_fails",
       "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and
       "fastcgi_upstream_fail_timeout" directives.


Changes with nginx 0.3.1                                         10 Oct 2005

    *) Bugfix: the segmentation fault occurred when the signal queue
       overflowed if the "rtsig" method was used; the bug had appeared in
       0.2.0.

    *) Change: correct handling of the "\\", "\"", "\'", and "\$" pairs in
       SSI.


Changes with nginx 0.3.0                                         07 Oct 2005

    *) Change: the 10-days live time limit of worker process was eliminated.
       The limit was introduced because of millisecond timers overflow.


Changes with nginx 0.2.6                                         05 Oct 2005

    *) Change: while using load-balancing the time before the failed backend
       retry was decreased from 60 to 10 seconds.

    *) Change: the "proxy_pass_unparsed_uri" was canceled, the original URI
       now passed, if the URI part is omitted in "proxy_pass" directive.

    *) Feature: the "error_page" directive supports redirects and allows
       more flexible to change an error code.

    *) Change: the charset in the "Content-Type" header line now is ignored
       in proxied subrequests.

    *) Bugfix: if the URI was changed in the "if" block and request did not
       found new configuration, then the ngx_http_rewrite_module rules ran
       again.

    *) Bugfix: if the "set" directive set the ngx_http_geo_module variable
       in some configuration part, the this variable was not available in
       other configuration parts and the "using uninitialized variable"
       error was occurred; the bug had appeared in 0.2.2.


Changes with nginx 0.2.5                                         04 Oct 2005

    *) Change: the duplicate value of the ngx_http_geo_module variable now
       causes the warning and changes old value.

    *) Feature: the ngx_http_ssi_module supports the "set" command.

    *) Feature: the ngx_http_ssi_module supports the "file" parameter in the
       "include" command.

    *) Feature: the ngx_http_ssi_module supports the variable value
       substitutions in expressions of the "if" command.


Changes with nginx 0.2.4                                         03 Oct 2005

    *) Feature: the ngx_http_ssi_module supports "$var=text", "$var!=text",
       "$var=/text/", and "$var!=/text/" expressions in the "if" command.

    *) Bugfix: in proxying location without trailing slash; the bug had
       appeared in 0.1.44.

    *) Bugfix: the segmentation fault may occurred if the "rtsig" method was
       used; the bug had appeared in 0.2.0.


Changes with nginx 0.2.3                                         30 Sep 2005

    *) Bugfix: nginx could not be built without the --with-debug option; the
       bug had appeared in 0.2.2.


Changes with nginx 0.2.2                                         30 Sep 2005

    *) Feature: the "config errmsg" command of the ngx_http_ssi_module.

    *) Change: the ngx_http_geo_module variables can be overridden by the
       "set" directive.

    *) Feature: the "ssl_protocols" and "ssl_prefer_server_ciphers"
       directives of the ngx_http_ssl_module and ngx_imap_ssl_module.

    *) Bugfix: the ngx_http_autoindex_module did not show correctly the long
       file names;

    *) Bugfix: the ngx_http_autoindex_module now do not show the files
       starting by dot.

    *) Bugfix: if the SSL handshake failed then another connection may be
       closed too.
       Thanks to Rob Mueller.

    *) Bugfix: the export versions of MSIE 5.x could not connect via HTTPS.


Changes with nginx 0.2.1                                         23 Sep 2005

    *) Bugfix: if all backend using in load-balancing failed after one
       error, then nginx may got caught in an endless loop; the bug had
       appeared in 0.2.0.


Changes with nginx 0.2.0                                         23 Sep 2005

    *) The pid-file names used during online upgrade was changed and now is
       not required a manual rename operation. The old master process adds
       the ".oldbin" suffix to its pid-file and executes a new binary file.
       The new master process creates usual pid-file without the ".newbin"
       suffix. If the master process exits, then old master process renames
       back its pid-file with the ".oldbin" suffix to the pid-file without
       suffix.

    *) Change: the "worker_connections" directive, new name of the
       "connections" directive; now the directive specifies maximum number
       of connections, but not maximum socket descriptor number.

    *) Feature: SSL supports the session cache inside one worker process.

    *) Feature: the "satisfy_any" directive.

    *) Change: the ngx_http_access_module and ngx_http_auth_basic_module do
       not run for subrequests.

    *) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending"
       directives.

    *) Bugfix: if all backend using in load-balancing failed after one
       error, then nginx did not try do connect to them during 60 seconds.

    *) Bugfix: in IMAP/POP3 command argument parsing.
       Thanks to Rob Mueller.

    *) Bugfix: errors while using SSL in IMAP/POP3 proxy.

    *) Bugfix: errors while using SSI and gzipping.

    *) Bugfix: the "Expires" and "Cache-Control" header lines were omitted
       from the 304 responses.
       Thanks to Alexandr Kukushkin.


Changes with nginx 0.1.45                                        08 Sep 2005

    *) Change: the "ssl_engine" directive was canceled in the
       ngx_http_ssl_module and now is introduced at global level.

    *) Bugfix: the responses with SSI subrequests did not transferred via
       SSL connection.

    *) Various bug fixes in the IMAP/POP3 proxy.


Changes with nginx 0.1.44                                        06 Sep 2005

    *) Feature: the IMAP/POP3 proxy supports SSL.

    *) Feature: the "proxy_timeout" directive of the ngx_imap_proxy_module.

    *) Feature: the "userid_mark" directive.

    *) Feature: the $remote_user variable value is determined independently
       of authorization use.


Changes with nginx 0.1.43                                        30 Aug 2005

    *) Feature: the listen(2) backlog in the "listen" directive can be
       changed using the -HUP signal.

    *) Feature: the geo2nginx.pl script was added to contrib.

    *) Change: the FastCGI parameters with the empty values now are passed
       to a server.

    *) Bugfix: the segmentation fault occurred or the worker process may got
       caught in an endless loop if the proxied or FastCGI server sent the
       "Cache-Control" header line and the "expires" directive was used; in
       the proxied mode the bug had appeared in 0.1.29.


Changes with nginx 0.1.42                                        23 Aug 2005

    *) Bugfix: if the request URI had a zero length after the processing in
       the ngx_http_proxy_module, then the segmentation fault or bus error
       occurred in the ngx_http_proxy_module.

    *) Bugfix: the "limit_rate" directive did not work inside the "if"
       block; the bug had appeared in 0.1.38.


Changes with nginx 0.1.41                                        25 Jul 2005

    *) Bugfix: if the variable was used in the configuration file, then it
       can not be used in SSI.


Changes with nginx 0.1.40                                        22 Jul 2005

    *) Bugfix: if a client sent too long header line, then the request
       information did not logged in the error log.

    *) Bugfix: the "Set-Cookie" header line was not transferred when the
       "X-Accel-Redirect" was used; the bug had appeared in 0.1.39.

    *) Bugfix: the "Content-Disposition" header line was not transferred
       when the "X-Accel-Redirect" was used.

    *) Bugfix: the master process did not close the listen socket on the
       SIGQUIT signal.

    *) Bugfix: after on-line upgrade on Linux and Solaris the process name
       became shorter in the "ps" command.


Changes with nginx 0.1.39                                        14 Jul 2005

    *) The changes in the ngx_http_charset_module: the "default_charset"
       directive was canceled; the "charset" directive sets the response
       charset; the "source_charset" directive sets the source charset only.

    *) Bugfix: the backend "WWW-Authenticate" header line did not
       transferred while the 401 response code redirecting.

    *) Bugfix: the ngx_http_proxy_module and ngx_http_fastcgi_module may
       close a connection before anything was transferred to a client; the
       bug had appeared in 0.1.38.

    *) Workaround: the Linux glibc crypt_r() initialization bug.

    *) Bugfix: the ngx_http_ssi_module did not support the relative URI in
       the "include virtual" command.

    *) Bugfix: if the backend response had the "Location" header line and
       nginx should not rewrite this line, then the 500 code response body
       was transferred; the bug had appeared in 0.1.29.

    *) Bugfix: some directives of the ngx_http_proxy_module and
       ngx_http_fastcgi_module were not inherited from the server to the
       location level; the bug had appeared in 0.1.29.

    *) Bugfix: the ngx_http_ssl_module did not support the certificate
       chain.

    *) Bugfix: the ngx_http_autoindex_module did not show correctly the long
       file names; the bug had appeared in 0.1.38.

    *) Bugfixes in IMAP/POP3 proxy in interaction with a backend at the
       login state.


Changes with nginx 0.1.38                                        08 Jul 2005

    *) Feature: the "limit_rate" directive is supported in proxy and FastCGI
       mode.

    *) Feature: the "X-Accel-Limit-Rate" response header line is supported
       in proxy and FastCGI mode.

    *) Feature: the "break" directive.

    *) Feature: the "log_not_found" directive.

    *) Bugfix: the response status code was not changed when request was
       redirected by the ""X-Accel-Redirect" header line.

    *) Bugfix: the variables set by the "set" directive could not be used in
       SSI.

    *) Bugfix: the segmentation fault may occurred if the SSI page has more
       than one remote subrequest.

    *) Bugfix: nginx treated the backend response as invalid if the status
       line in the header was transferred in two packets; the bug had
       appeared in 0.1.29.

    *) Feature: the "ssi_types" directive.

    *) Feature: the "autoindex_exact_size" directive.

    *) Bugfix: the ngx_http_autoindex_module did not support the long file
       names in UTF-8.

    *) Feature: the IMAP/POP3 proxy.


Changes with nginx 0.1.37                                        23 Jun 2005

    *) Change: now the "\n" is added to the end of the "nginx.pid" file.

    *) Bugfix: the responses may be transferred not completely, if many
       parts or the big parts were included by SSI.

    *) Bugfix: if all backends had returned the 404 reponse and the
       "http_404" parameter of the "proxy_next_upstream" or
       "fastcgi_next_upstream" directives was used, then nginx started to
       request all backends again.


Changes with nginx 0.1.36                                        15 Jun 2005

    *) Change: if the request header has duplicate the "Host", "Connection",
       "Content-Length", or "Authorization" lines, then nginx now returns
       the 400 error.

    *) Change: the "post_accept_timeout" directive was canceled.

    *) Feature: the "default", "af=", "bl=", "deferred", and "bind"
       parameters of the "listen" directive.

    *) Feature: the FreeBSD accept filters support.

    *) Feature: the Linux TCP_DEFER_ACCEPT support.

    *) Bugfix: the ngx_http_autoindex_module did not support the file names
       in UTF-8.

    *) Bugfix: the new log file can be rotated by the -USR1 signal only if
       the reconfiguration by the -HUP signal was made twice.


Changes with nginx 0.1.35                                        07 Jun 2005

    *) Feature: the "working_directory" directive.

    *) Feature: the "port_in_redirect" directive.

    *) Bugfix: the segmentation fault was occurred if the backend response
       header was in several packets; the bug had appeared in 0.1.29.

    *) Bugfix: if more than 10 servers were configured or some server did
       not use the "listen" directive, then the segmentation fault was
       occurred on the start.

    *) Bugfix: the segmentation fault might occur if the response was bigger
       than the temporary file.

    *) Bugfix: nginx returned the 400 response on requests like
       "GET http://www.domain.com/uri HTTP/1.0"; the bug had appeared in
       0.1.28.


Changes with nginx 0.1.34                                        26 May 2005

    *) Bugfix: the worker process may got caught in an endless loop if the
       big response part were include by SSI.

    *) Bugfix: the variables set by the "set" directive were not available
       in SSI.

    *) Feature: the "autoindex_localtime" directive.

    *) Bugfix: the empty value of the "proxy_set_header" directive forbids
       the client request header line passing.


Changes with nginx 0.1.33                                        23 May 2005

    *) Bugfix: nginx could not be built with the --without-pcre parameter;
       the bug had appeared in 0.1.29.

    *) Bugfix: 3, 4, 7, and 8 the "proxy_set_header" directives in one level
       cause the bus fault on start up.

    *) Bugfix: the HTTP protocol was specified in the HTTPS redirects.

    *) Bugfix: if the "rewrite" directive used the captures inside the "if"
       directive, then the 500 error code was returned.


Changes with nginx 0.1.32                                        19 May 2005

    *) Bugfix: the arguments were omitted in the redirects, issued by the
       "rewrite" directive; the bug had appeared in 0.1.29.

    *) Feature: the "if" directive supports the captures in regular
       expressions.

    *) Feature: the "set" directive supports the variables and the captures
       of regular expressions.

    *) Feature: the "X-Accel-Redirect" response header line is supported in
       proxy and FastCGI mode.


Changes with nginx 0.1.31                                        16 May 2005

    *) Bugfix: the response encrypted by SSL may not transferred complete.

    *) Bugfix: errors while processing FastCGI response by SSI.

    *) Bugfix: errors while using SSI and gzipping.

    *) Bugfix: the redirect with the 301 code was transferred without
       response body; the bug had appeared in 0.1.30.


Changes with nginx 0.1.30                                        14 May 2005

    *) Bugfix: the worker process may got caught in an endless loop if the
       SSI was used.

    *) Bugfix: the response encrypted by SSL may not transferred complete.

    *) Bugfix: if the length of the response part received at once from
       proxied or FastCGI server was equal to 500, then nginx returns the
       500 response code; in proxy mode the bug had appeared in 0.1.29 only.

    *) Bugfix: nginx did not consider the directives with 8 or 9 parameters
       as invalid.

    *) Feature: the "return" directive can return the 204 response code.

    *) Feature: the "ignore_invalid_headers" directive.


Changes with nginx 0.1.29                                        12 May 2005

    *) Feature: the ngx_http_ssi_module supports "include virtual" command.

    *) Feature: the ngx_http_ssi_module supports the condition command like
       'if expr="$NAME"' and "else" and "endif" commands. Only one nested
       level is supported.

    *) Feature: the ngx_http_ssi_module supports the DATE_LOCAL and DATE_GMT
       variables and "config timefmt" command.

    *) Feature: the "ssi_ignore_recycled_buffers" directive.

    *) Bugfix: the "echo" command did not show the default value for the
       empty QUERY_STRING variable.

    *) Change: the ngx_http_proxy_module was rewritten.

    *) Feature: the "proxy_redirect", "proxy_pass_request_headers",
       "proxy_pass_request_body", and "proxy_method" directives.

    *) Feature: the "proxy_set_header" directive. The "proxy_x_var" was
       canceled and must be replaced with the proxy_set_header directive.

    *) Change: the "proxy_preserve_host" is canceled and must be replaced
       with the "proxy_set_header Host $host" and the "proxy_redirect off"
       directives, the "proxy_set_header Host $host:$proxy_port" directive
       and the appropriate proxy_redirect directives.

    *) Change: the "proxy_set_x_real_ip" is canceled and must be replaced
       with the "proxy_set_header X-Real-IP $remote_addr" directive.

    *) Change: the "proxy_add_x_forwarded_for" is canceled and must be
       replaced with
       the "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for"
       directive.

    *) Change: the "proxy_set_x_url" is canceled and must be replaced with
       the "proxy_set_header X-URL http://$host:$server_port$request_uri"
       directive.

    *) Feature: the "fastcgi_param" directive.

    *) Change: the "fastcgi_root", "fastcgi_set_var" and "fastcgi_params"
       directive are canceled and must be replaced with the fastcgi_param
       directives.

    *) Feature: the "index" directive can use the variables.

    *) Feature: the "index" directive can be used at http and server levels.

    *) Change: the last index only in the "index" directive can be absolute.

    *) Feature: the "rewrite" directive can use the variables.

    *) Feature: the "internal" directive.

    *) Feature: the CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, SERVER_ADDR,
       SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, SERVER_NAME,
       REQUEST_METHOD, REQUEST_URI, and REMOTE_USER variables.

    *) Change: nginx now passes the invalid lines in a client request
       headers or a backend response header.

    *) Bugfix: if the backend did not transfer response for a long time and
       the "send_timeout" was less than "proxy_read_timeout", then nginx
       returned the 408 response.

    *) Bugfix: the segmentation fault was occurred if the backend sent an
       invalid line in response header; the bug had appeared in 0.1.26.

    *) Bugfix: the segmentation fault may occurred in FastCGI fault
       tolerance configuration.

    *) Bugfix: the "expires" directive did not remove the previous "Expires"
       and "Cache-Control" headers.

    *) Bugfix: nginx did not take into account trailing dot in "Host" header
       line.

    *) Bugfix: the ngx_http_auth_module did not work under Linux.

    *) Bugfix: the rewrite directive worked incorrectly, if the arguments
       were in a request.

    *) Bugfix: nginx could not be built on MacOS X.


Changes with nginx 0.1.28                                        08 Apr 2005

    *) Bugfix: nginx hogs CPU while proxying the huge files.

    *) Bugfix: nginx could not be built by gcc 4.0 on Linux.


Changes with nginx 0.1.27                                        28 Mar 2005

    *) Feature: the "blocked" parameter of the "valid_referers" directive.

    *) Change: the errors while handling the request header now logged at
       "info" level. The server name and the "Host" and "Referer" header
       lines also logged.

    *) Change: the "Host" header line is also logged in error log.

    *) Feature: the proxy_pass_unparsed_uri directive. The special handling
       of the "://" symbols in URI, appeared in 0.1.11 version, now is
       canceled.

    *) Bugfix: nginx could not be built on FreeBSD and Linux, if the
       --without-ngx_http_auth_basic_module configuration parameter was
       used.


Changes with nginx 0.1.26                                        22 Mar 2005

    *) Change: the invalid client header lines are now ignored and logged at
       the info level.

    *) Change: the server name is also logged in error log.

    *) Feature: the ngx_http_auth_basic_module module and the auth_basic and
       auth_basic_user_file directives.


Changes with nginx 0.1.25                                        19 Mar 2005

    *) Bugfix: nginx did run on Linux parisc.

    *) Feature: nginx now does not start under FreeBSD if the sysctl
       kern.ipc.somaxconn value is too big.

    *) Bugfix: if a request was internally redirected by the
       ngx_http_index_module module to the ngx_http_proxy_module or
       ngx_http_fastcgi_module modules, then the index file was not closed
       after request completion.

    *) Feature: the "proxy_pass" can be used in location with regular
       expression.

    *) Feature: the ngx_http_rewrite_filter_module module supports the
       condition like "if ($HTTP_USER_AGENT ~ MSIE)".

    *) Bugfix: nginx started too slow if the large number of addresses and
       text values were used in the "geo" directive.

    *) Change: a variable name must be declared as "$name" in the "geo"
       directive. The previous variant without "$" is still supported, but
       will be removed soon.

    *) Feature: the "%{VARIABLE}v" logging parameter.

    *) Feature: the "set $name value" directive.

    *) Bugfix: gcc 4.0 compatibility.

    *) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.


Changes with nginx 0.1.24                                        04 Mar 2005

    *) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING and
       DOCUMENT_URI variables.

    *) Bugfix: the ngx_http_autoindex_module may some times return the 404
       response for existent directory, if this directory was used in
       "alias" directive.

    *) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large
       responses.

    *) Bugfix: the lack of the "Referer" header line was always accounted as
       valid referrer.


Changes with nginx 0.1.23                                        01 Mar 2005

    *) Feature: the ngx_http_ssi_filter_module and the ssi,
       ssi_silent_errors, and ssi_min_file_chunk directives. The 'echo
       var="HTTP_..." default=""' and 'echo var="REMOTE_ADDR"' commands are
       supported.

    *) Feature: the %request_time log parameter.

    *) Feature: if the request has no the "Host" header line, then the
       "proxy_preserve_host" directive set this header line to the first
       server name of the "server_name" directive.

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.1.22.

    *) Bugfix: the ngx_http_autoindex_module now shows the information not
       about the symlink, but about file or directory it points to.

    *) Bugfix: the %apache_length parameter logged the negative length of
       the response header if the no response was transferred to a client.


Changes with nginx 0.1.22                                        22 Feb 2005

    *) Bugfix: the ngx_http_stub_status_module showed incorrect handled
       connections statistics if the proxying or FastCGI server were used.

    *) Bugfix: the installation paths were incorrectly quoted on Linux and
       Solaris; the bug had appeared in 0.1.21.


Changes with nginx 0.1.21                                        22 Feb 2005

    *) Bugfix: the ngx_http_stub_status_module showed incorrect statistics
       if "rtsig" method was used or if several worker process ran on SMP.

    *) Bugfix: nginx could not be built by the icc compiler on Linux or if
       the zlib-1.2.x library was building from sources.

    *) Bugfix: nginx could not be built on NetBSD 2.0.


Changes with nginx 0.1.20                                        17 Feb 2005

    *) Feature: the new "script_filename" and "remote_port" parameters of
       the fastcgi_params directive.

    *) Bugfix: the FastCGI stderr stream was handled incorrectly.


Changes with nginx 0.1.19                                        16 Feb 2005

    *) Bugfix: now, if request contains the zero, then the 404 error is
       returned for the local requests.

    *) Bugfix: nginx could not be built on NetBSD 2.0.

    *) Bugfix: the timeout may occur while reading of the client request
       body via SSL connections.


Changes with nginx 0.1.18                                        09 Feb 2005

    *) Workaround: the default values of the devpoll_events and the
       devpoll_changes directives changed from 512 to 32 to be compatible
       with Solaris 10.

    *) Bugfix: the proxy_set_x_var and fastcgi_set_var directives were not
       inherited.

    *) Bugfix: in a redirect rewrite directive arguments were concatenated
       with URI by an "&" rather than a "?".

    *) Bugfix: the lines without trailing ";" in the file being included by
       the ngx_http_geo_module were silently ignored.

    *) Feature: the ngx_http_stub_status_module.

    *) Bugfix: the unknown log format in the access_log directive caused the
       segmentation fault.

    *) Feature: the new "document_root" parameter of the fastcgi_params
       directive.

    *) Feature: the fastcgi_redirect_errors directive.

    *) Feature: the new "break" modifier of the "rewrite" directive allows
       to stop the rewrite/location cycle and sets the current configuration
       to the request.


Changes with nginx 0.1.17                                        03 Feb 2005

    *) Change: the ngx_http_rewrite_module was rewritten from the scratch.
       Now it is possible to redirect, to return the error codes, to check
       the variables and referrers. The directives can be used inside
       locations. The redirect directive was canceled.

    *) Feature: the ngx_http_geo_module.

    *) Feature: the proxy_set_x_var and fastcgi_set_var directives.

    *) Bugfix: the location configuration with "=" modifier may be used in
       another location.

    *) Bugfix: the correct content type was set only for requests that use
       small caps letters in extension.

    *) Bugfix: if the proxy_pass or fastcgi_pass directives were set in the
       location, and access was denied, and the error was redirected to a
       static page, then the segmentation fault occurred.

    *) Bugfix: if in a proxied "Location" header was a relative URL, then a
       host name and a slash were added to them; the bug had appeared in
       0.1.14.

    *) Bugfix: the system error message was not logged on Linux.


Changes with nginx 0.1.16                                        25 Jan 2005

    *) Bugfix: if the response were transferred by chunks, then on the HEAD
       request the final chunk was issued.

    *) Bugfix: the "Connection: keep-alive" header were issued, even if the
       keepalive_timeout directive forbade the keep-alive use.

    *) Bugfix: the errors in the ngx_http_fastcgi_module caused the
       segmentation faults.

    *) Bugfix: the compressed response encrypted by SSL may not transferred
       complete.

    *) Bugfix: the TCP-specific TCP_NODELAY, TCP_NOPSUH, and TCP_CORK
       options, are not used for the unix domain sockets.

    *) Feature: the rewrite directive supports the arguments rewriting.

    *) Bugfix: the response code 400 was returned for the POST request with
       the "Content-Length: 0" header; the bug had appeared in 0.1.14.


Changes with nginx 0.1.15                                        19 Jan 2005

    *) Bugfix: the error while the connecting to the FastCGI server caused
       segmentation fault.

    *) Bugfix: the correct handling of the regular expression, that has
       different number of the captures and substitutions.

    *) Feature: the location, that is passed to the FastCGI server, can be
       regular expression.

    *) Bugfix: the FastCGI's parameter REQUEST_URI is now passed with the
       arguments and in the original state.

    *) Bugfix: the ngx_http_rewrite_module module was required to be built
       to use the regular expressions in locations.

    *) Bugfix: the directive "proxy_preserve_host on" adds port 80 to the
       "Host" headers, if upstream listen on port 80; the bug had appeared
       in 0.1.14.

    *) Bugfix: the same paths in autoconfiguration parameters
       --http-client-body-temp-path=PATH and --http-proxy-temp-path=PATH, or
       --http-client-body-temp-path=PATH and --http-fastcgi-temp-path=PATH
       caused segmentation fault.


Changes with nginx 0.1.14                                        18 Jan 2005

    *) Feature: the autoconfiguration directives:
       --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH, and
       --http-fastcgi-temp-path=PATH

    *) Change: the directory name for the temporary files with the client
       request body is specified by directive client_body_temp_path, by
       default it is <prefix>/client_body_temp.

    *) Feature: the ngx_http_fastcgi_module and the directives:
       fastcgi_pass, fastcgi_root, fastcgi_index, fastcgi_params,
       fastcgi_connect_timeout, fastcgi_send_timeout, fastcgi_read_timeout,
       fastcgi_send_lowat, fastcgi_header_buffer_size, fastcgi_buffers,
       fastcgi_busy_buffers_size, fastcgi_temp_path,
       fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
       fastcgi_next_upstream, and fastcgi_x_powered_by.

    *) Bugfix: the "[alert] zero size buf" error; the bug had appeared in
       0.1.3.

    *) Change: the URI must be specified after the host name in the
       proxy_pass directive.

    *) Change: the %3F symbol in the URI was considered as the argument
       string start.

    *) Feature: the unix domain sockets support in the
       ngx_http_proxy_module.

    *) Feature: the ssl_engine and ssl_ciphers directives.
       Thanks to Sergey Skvortsov for SSL-accelerator.


Changes with nginx 0.1.13                                        21 Dec 2004

    *) Feature: the server_names_hash and server_names_hash_threshold
       directives.

    *) Bugfix: the *.domain.tld names in the "server_name" directive did not
       work.

    *) Bugfix: the %request_length log parameter logged the incorrect
       length.


Changes with nginx 0.1.12                                        06 Dec 2004

    *) Feature: the %request_length log parameter.

    *) Bugfix: when using the /dev/poll, select and poll on the platforms,
       where these methods may do the false reports, there may be the long
       delay when the request was passed via the keep-alive connection. It
       may be at least on Solaris when using the /dev/poll.

    *) Bugfix: the send_lowat directive is ignored on Linux because Linux
       does not support the SO_SNDLOWAT option.


Changes with nginx 0.1.11                                        02 Dec 2004

    *) Feature: the worker_priority directive.

    *) Change: both tcp_nopush and tcp_nodelay directives affect the
       transferred response.

    *) Bugfix: nginx did not call initgroups().
       Thanks to Andrew Sitnikov and Andrei Nigmatulin.

    *) Change: now the ngx_http_autoindex_module shows the file size in the
       bytes.

    *) Bugfix: the ngx_http_autoindex_module returned the 500 error if the
       broken symlink was in a directory.

    *) Bugfix: the files bigger than 4G could not be transferred using
       sendfile.

    *) Bugfix: if the backend was resolved to several backends and there was
       an error while the response waiting then process may got caught in an
       endless loop.

    *) Bugfix: the worker process may exit with the "unknown cycle" message
       when the /dev/poll method was used.

    *) Bugfix: "close() channel failed" errors.

    *) Bugfix: the autodetection of the "nobody" and "nogroup" groups.

    *) Bugfix: the send_lowat directive did not work on Linux.

    *) Bugfix: the segmentation fault occurred if there was no events
       section in configuration.

    *) Bugfix: nginx could not be built on OpenBSD.

    *) Bugfix: the double slashes in "://" in the URI were converted to
       ":/".


Changes with nginx 0.1.10                                        26 Nov 2004

    *) Bugfix: if the request without arguments contains "//", "/./", "/../"
       or "%XX" then the last character in the request line was lost; the
       bug had appeared in 0.1.9.

    *) Bugfix: the fix in 0.1.9 for the files bigger than 2G on Linux did
       not work.


Changes with nginx 0.1.9                                         25 Nov 2004

    *) Bugfix: the proxied request was sent without arguments if the request
       contains "//", "/./", "/../" or "%XX".

    *) Bugfix: the large compressed responses may be transferred not
       completely.

    *) Bugfix: the files bigger than 2G was not transferred on Linux that
       does not support sendfile64().

    *) Bugfix: while the build configuration on Linux the --with-poll_module
       parameter was required; the bug had appeared in 0.1.8.


Changes with nginx 0.1.8                                         20 Nov 2004

    *) Bugfix: in the ngx_http_autoindex_module if the long file names were
       in the listing.

    *) Feature: the "^~" modifier in the location directive.

    *) Feature: the proxy_max_temp_file_size directive.


Changes with nginx 0.1.7                                         12 Nov 2004

    *) Bugfix: on FreeBSD the segmentation fault may occur if the size of
       the transferred file was changed; the bug had appeared in 0.1.5.


Changes with nginx 0.1.6                                         11 Nov 2004

    *) Bugfix: some location directive combinations with the regular
       expressions caused the wrong configuration choose.


Changes with nginx 0.1.5                                         11 Nov 2004

    *) Bugfix: on Solaris and Linux there may be too many "recvmsg()
       returned not enough data" alerts.

    *) Bugfix: there were the "writev() failed (22: Invalid argument)"
       errors on Solaris in proxy mode without sendfile. On other platforms
       that do not support sendfile at all the process got caught in an
       endless loop.

    *) Bugfix: segmentation fault on Solaris in proxy mode and using
       sendfile.

    *) Bugfix: segmentation fault on Solaris.

    *) Bugfix: on-line upgrade did not work on Linux.

    *) Bugfix: the ngx_http_autoindex_module module did not escape the
       spaces, the quotes, and the percent signs in the directory listing.

    *) Change: the decrease of the copy operations.

    *) Feature: the userid_p3p directive.


Changes with nginx 0.1.4                                         26 Oct 2004

    *) Bugfix: in the ngx_http_autoindex_module.


Changes with nginx 0.1.3                                         25 Oct 2004

    *) Feature: the ngx_http_autoindex_module and the autoindex directive.

    *) Feature: the proxy_set_x_url directive.

    *) Bugfix: proxy module may get caught in an endless loop when sendfile
       is not used.


Changes with nginx 0.1.2                                         21 Oct 2004

    *) Feature: the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS
       options in configure.

    *) Feature: the server_name directive supports *.domain.tld.

    *) Bugfix: the portability improvements.

    *) Bugfix: if configuration file was set in command line, the
       reconfiguration was impossible; the bug had appeared in 0.1.1.

    *) Bugfix: proxy module may get caught in an endless loop when sendfile
       is not used.

    *) Bugfix: with sendfile the response was not recoded according to the
       charset module directives; the bug had appeared in 0.1.1.

    *) Bugfix: very seldom bug in the kqueue processing.

    *) Bugfix: the gzip module compressed the proxied responses that was
       already compressed.


Changes with nginx 0.1.1                                         11 Oct 2004

    *) Feature: the gzip_types directive.

    *) Feature: the tcp_nodelay directive.

    *) Feature: the send_lowat directive is working not only on OSes that
       support kqueue NOTE_LOWAT, but also on OSes that support SO_SNDLOWAT.

    *) Feature: the setproctitle() emulation for Linux and Solaris.

    *) Bugfix: the "Location" header rewrite bug fixed while the proxying.

    *) Bugfix: the ngx_http_chunked_module module may get caught in an
       endless loop.

    *) Bugfix: the /dev/poll module bugs fixed.

    *) Bugfix: the responses were corrupted when the temporary files were
       used while the proxying.

    *) Bugfix: the unescaped requests were passed to the backend.

    *) Bugfix: while the build configuration on Linux 2.4 the
       --with-poll_module parameter was required.


Changes with nginx 0.1.0                                         04 Oct 2004

    *) The first public version.