Skip to content

Commit 917cd1a

Browse files
authored
Merge pull request #249 from chobits/for_pull_request
refactor logic of handling proxy timer
2 parents b998d16 + 0bc35f6 commit 917cd1a

7 files changed

+446
-308
lines changed

.github/workflows/ci.yml

+6-3
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,15 @@ jobs:
2424
sudo apt install -y libpcre3 libpcre3-dev
2525
sudo apt-get install libnet-dns-perl
2626
sudo cpan -T -i Test::More
27+
- name: 'checkout luajit2'
28+
uses: actions/checkout@v3
29+
with:
30+
repository: openresty/luajit2
31+
path: luajit2
2732
- name: install luajit
33+
working-directory: luajit2
2834
run: |
2935
pwd
30-
wget https://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz
31-
tar xf LuaJIT-2.1.0-beta3.tar.gz
32-
cd LuaJIT-2.1.0-beta3
3336
make -j
3437
sudo make install
3538
ls /usr/local/lib/ |grep lua

.github/workflows/test_nginx_lastest_commit.yml

+6-4
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,14 @@ jobs:
2222
sudo apt install -y libpcre3 libpcre3-dev
2323
sudo apt-get install libnet-dns-perl
2424
sudo cpan -T -i Test::More
25+
- name: 'checkout luajit2'
26+
uses: actions/checkout@v3
27+
with:
28+
repository: openresty/luajit2
29+
path: luajit2
2530
- name: install luajit
31+
working-directory: luajit2
2632
run: |
27-
pwd
28-
wget https://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz
29-
tar xf LuaJIT-2.1.0-beta3.tar.gz
30-
cd LuaJIT-2.1.0-beta3
3133
make -j
3234
sudo make install
3335
ls /usr/local/lib/ |grep lua

README.md

+32-18
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ Table of Contents
2424
* [proxy_connect](#proxy_connect)
2525
* [proxy_connect_allow](#proxy_connect_allow)
2626
* [proxy_connect_connect_timeout](#proxy_connect_connect_timeout)
27-
* [proxy_connect_read_timeout](#proxy_connect_read_timeout)
28-
* [proxy_connect_send_timeout](#proxy_connect_send_timeout)
27+
* [proxy_connect_data_timeout](#proxy_connect_data_timeout)
28+
* [proxy_connect_read_timeout(deprecated)](#proxy_connect_read_timeout)
29+
* [proxy_connect_send_timeout(deprecated)](#proxy_connect_send_timeout)
2930
* [proxy_connect_address](#proxy_connect_address)
3031
* [proxy_connect_bind](#proxy_connect_bind)
3132
* [proxy_connect_response](#proxy_connect_response)
@@ -34,8 +35,9 @@ Table of Contents
3435
* [$connect_port](#connect_port)
3536
* [$connect_addr](#connect_addr)
3637
* [$proxy_connect_connect_timeout](#proxy_connect_connect_timeout-1)
37-
* [$proxy_connect_read_timeout](#proxy_connect_read_timeout-1)
38-
* [$proxy_connect_send_timeout](#proxy_connect_send_timeout-1)
38+
* [$proxy_connect_data_timeout](#proxy_connect_data_timeout-1)
39+
* [$proxy_connect_read_timeout(deprecated)](#proxy_connect_read_timeout-1)
40+
* [$proxy_connect_send_timeout(deprecated)](#proxy_connect_send_timeout-1)
3941
* [$proxy_connect_resolve_time](#proxy_connect_resolve_time)
4042
* [$proxy_connect_connect_time](#proxy_connect_connect_time)
4143
* [$proxy_connect_first_byte_time](#proxy_connect_first_byte_time)
@@ -67,8 +69,7 @@ Configuration Example
6769
proxy_connect;
6870
proxy_connect_allow 443 563;
6971
proxy_connect_connect_timeout 10s;
70-
proxy_connect_read_timeout 10s;
71-
proxy_connect_send_timeout 10s;
72+
proxy_connect_data_timeout 10s;
7273
7374
# forward proxy for non-CONNECT request
7475
location / {
@@ -329,6 +330,14 @@ Context: `server`
329330

330331
Defines a timeout for establishing a connection with a proxied server.
331332

333+
proxy_connect_data_timeout
334+
--------------------------
335+
336+
Syntax: **proxy_connect_data_timeout `time`**
337+
Default: `60s`
338+
Context: `server`
339+
340+
Sets the timeout between two successive read or write operations on client or proxied server connections. If no data is transmitted within this time, the connection is closed.
332341

333342
proxy_connect_read_timeout
334343
--------------------------
@@ -337,9 +346,9 @@ Syntax: **proxy_connect_read_timeout `time`**
337346
Default: `60s`
338347
Context: `server`
339348

340-
Defines a timeout for reading a response from the proxied server.
341-
The timeout is set only between two successive read operations, not for the transmission of the whole response.
342-
If the proxied server does not transmit anything within this time, the connection is closed.
349+
Deprecated.
350+
351+
It has the same function as the directive `proxy_connect_data_timeout` for compatibility. You can configure only one of the directives (`proxy_connect_data_timeout` or `proxy_connect_read_timeout`).
343352

344353
proxy_connect_send_timeout
345354
--------------------------
@@ -348,9 +357,9 @@ Syntax: **proxy_connect_send_timeout `time`**
348357
Default: `60s`
349358
Context: `server`
350359

351-
Sets a timeout for transmitting a request to the proxied server.
352-
The timeout is set only between two successive write operations, not for the transmission of the whole request.
353-
If the proxied server does not receive anything within this time, the connection is closed.
360+
Deprecated.
361+
362+
It has no function.
354363

355364
proxy_connect_address
356365
---------------------
@@ -453,27 +462,32 @@ For example:
453462
# Set default value
454463
455464
proxy_connect_connect_timeout 10s;
456-
proxy_connect_read_timeout 10s;
457-
proxy_connect_send_timeout 10s;
465+
proxy_connect_data_timeout 10s;
458466
459467
# Overlap default value
460468
461469
if ($host = "test.com") {
462470
set $proxy_connect_connect_timeout "10ms";
463-
set $proxy_connect_read_timeout "10ms";
464-
set $proxy_connect_send_timeout "10ms";
471+
set $proxy_connect_data_timeout "10ms";
465472
}
466473
```
467474

475+
$proxy_connect_data_timeout
476+
---------------------------
477+
478+
Get or set a timeout of [`proxy_connect_data_timeout` directive](#proxy_connect_data_timeout).
479+
468480
$proxy_connect_read_timeout
469481
---------------------------
470482

471-
Get or set a timeout of [`proxy_connect_read_timeout` directive](#proxy_connect_read_timeout).
483+
Deprecated.
484+
It still can get or set a timeout of [`proxy_connect_data_timeout` directive](#proxy_connect_data_timeout) for compatibility.
472485

473486
$proxy_connect_send_timeout
474487
---------------------------
475488

476-
Get or set a timeout of [`proxy_connect_send_timeout` directive](#proxy_connect_send_timeout).
489+
Deprecated.
490+
It has no function.
477491

478492
$proxy_connect_resolve_time
479493
---------------------------

0 commit comments

Comments
 (0)