Wordpress chuyển biến thành tiêu đề

On FreeBSD, AIO can be used starting from FreeBSD 4. 3. Prior to FreeBSD 11. 0, AIO can either be linked statically into a kernel

options VFS_AIO

or loaded dynamically as a kernel loadable module

kldload aio

On Linux, AIO can be used starting from kernel version 2. 6. 22. Also, it is necessary to enable directio, or otherwise reading will be blocking

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}

On Linux, directio can only be used for reading blocks that are aligned on 512-byte boundaries (or 4K for XFS). File’s unaligned end is read in blocking mode. The same holds true for byte range requests and for FLV requests not from the beginning of a file. reading of unaligned data at the beginning and end of a file will be blocking

When both AIO and sendfile are enabled on Linux, AIO is used for files that are larger than or equal to the size specified in the directio directive, while sendfile is used for files of smaller sizes or when directio is disabled

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}

Finally, files can be read and sent using multi-threading (1. 7. 11), without blocking a worker process

location /video/ {
    sendfile       on;
    aio            threads;
}

Read and send file operations are offloaded to threads of the specified pool. If the pool name is omitted, the pool with the name “

aio off;
41” is used. The pool name can also be set with variables

aio threads=pool$disk;

By default, multi-threading is disabled, it should be enabled with the

aio off;
42 configuration parameter. Currently, multi-threading is compatible only with the epoll, kqueue, and eventport methods. Multi-threaded sending of files is only supported on Linux

See also the sendfile directive

Syntax.

aio off;
43 .
aio off;
29;
Mặc định.
kldload aio
0Context.
aio off;
30,
aio off;
31,
aio off;
32

This directive appeared in version 1. 9. 13.

If aio is enabled, specifies whether it is used for writing files. Currently, this only works when using

aio off;
48 and is limited to writing temporary files with data received from proxied servers

Syntax.

aio off;
49;
Default. —Context.
aio off;
32

Defines a replacement for the specified location. For example, with the following configuration

aio off;
0

theo yêu cầu của “

aio off;
51”, tệp
aio off;
52 sẽ được gửi

Giá trị

aio off;
53 có thể chứa các biến, ngoại trừ
aio off;
54 và
aio off;
55

Nếu

aio off;
56 được sử dụng bên trong một vị trí được xác định bằng biểu thức chính quy thì biểu thức chính quy đó phải chứa các ảnh chụp và
aio off;
56 nên tham chiếu đến các ảnh chụp này (0. 7. 40), ví dụ

aio off;
1

Khi vị trí khớp với phần cuối cùng của giá trị của chỉ thị

aio off;
2

tốt hơn là sử dụng chỉ thị root thay thế

aio off;
3

Cú pháp.

aio off;
58;
Mặc định.
aio off;
4Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Chỉ thị này đã xuất hiện trong phiên bản 1. 17. 10.

Trì hoãn xử lý các yêu cầu trái phép với mã phản hồi 401 để ngăn chặn các cuộc tấn công theo thời gian khi quyền truy cập bị giới hạn bởi mật khẩu, do kết quả của yêu cầu phụ hoặc bởi JWT

Cú pháp.

aio off;
62.
aio off;
29;
Mặc định.
aio off;
5Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Cho phép tắt mã hóa chuyển đoạn trong HTTP/1. 1. Nó có thể hữu ích khi sử dụng phần mềm không hỗ trợ mã hóa khối mặc dù yêu cầu của tiêu chuẩn

Cú pháp.

aio off;
67;
Mặc định.
aio off;
6Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Đặt kích thước bộ đệm để đọc phần thân yêu cầu của máy khách. Trong trường hợp phần thân yêu cầu lớn hơn bộ đệm, toàn bộ phần thân hoặc chỉ một phần của nó được ghi vào một tệp tạm thời. Theo mặc định, kích thước bộ đệm bằng hai trang bộ nhớ. Đây là 8K trên x86, các nền tảng 32 bit khác và x86-64. Nó thường là 16K trên các nền tảng 64-bit khác

Cú pháp.

aio off;
71.
aio off;
72.
aio off;
29;
Mặc định.
aio off;
7Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Xác định xem nginx có nên lưu toàn bộ nội dung yêu cầu của máy khách vào một tệp hay không. Lệnh này có thể được sử dụng trong quá trình gỡ lỗi hoặc khi sử dụng biến

aio off;
77 hoặc phương thức $r->request_body_file của mô-đun ngx_http_perl_module

Khi được đặt thành giá trị

aio off;
78, các tệp tạm thời sẽ không bị xóa sau khi xử lý yêu cầu

Giá trị

aio off;
72 sẽ khiến các tệp tạm thời còn lại sau khi xử lý yêu cầu bị xóa

Cú pháp.

aio off;
30
Mặc định.
aio off;
8Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Xác định xem nginx có nên lưu toàn bộ nội dung yêu cầu của máy khách trong một bộ đệm hay không. Lệnh này được khuyến nghị khi sử dụng biến

aio off;
85, để tiết kiệm số lượng thao tác sao chép liên quan

Cú pháp.

aio off;
31
Mặc định.
aio off;
9Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Xác định một thư mục để lưu trữ các tệp tạm thời chứa các phần thân yêu cầu của khách hàng. Có thể sử dụng hệ thống phân cấp thư mục con tối đa ba cấp trong thư mục được chỉ định. Ví dụ, trong cấu hình sau

aio threads=pool$disk;
90

một đường dẫn đến một tập tin tạm thời có thể trông như thế này

aio threads=pool$disk;
91

Cú pháp.

aio off;
93;
Mặc định.
aio threads=pool$disk;
92Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Xác định thời gian chờ để đọc nội dung yêu cầu của khách hàng. Thời gian chờ chỉ được đặt trong khoảng thời gian giữa hai thao tác đọc liên tiếp, không dành cho việc truyền toàn bộ nội dung yêu cầu. Nếu máy khách không truyền bất cứ thứ gì trong thời gian này, yêu cầu sẽ bị chấm dứt với lỗi 408 (Hết thời gian yêu cầu)

Cú pháp.

aio off;
97;
Mặc định.
aio threads=pool$disk;
93Bối cảnh.
aio off;
30,
aio off;
31

Đặt kích thước bộ đệm để đọc tiêu đề yêu cầu của khách hàng. Đối với hầu hết các yêu cầu, bộ đệm 1K byte là đủ. Tuy nhiên, nếu một yêu cầu bao gồm các cookie dài hoặc đến từ ứng dụng khách WAP, yêu cầu đó có thể không phù hợp với 1K. Nếu một dòng yêu cầu hoặc trường tiêu đề yêu cầu không vừa với bộ đệm này thì các bộ đệm lớn hơn, được định cấu hình bởi chỉ thị large_client_header_buffers, sẽ được cấp phát

Nếu lệnh được chỉ định ở cấp máy chủ, giá trị từ máy chủ mặc định có thể được sử dụng. Details are provided in the “Virtual server selection” section

Syntax.

aio threads=pool$disk;
900;
Default.
aio threads=pool$disk;
94Context.
aio off;
30,
aio off;
31

Defines a timeout for reading client request header. If a client does not transmit the entire header within this time, the request is terminated with the 408 (Request Time-out) error

Syntax.

aio threads=pool$disk;
903;
Default.
aio threads=pool$disk;
95Context.
aio off;
30,
aio off;
31,
aio off;
32

Sets the maximum allowed size of the client request body. If the size in a request exceeds the configured value, the 413 (Request Entity Too Large) error is returned to the client. Please be aware that browsers cannot correctly display this error. Setting

aio threads=pool$disk;
907 to 0 disables checking of client request body size

Syntax.

aio off;
32
Default.
aio threads=pool$disk;
96Context.
aio off;
30,
aio off;
31

Allows accurate tuning of per-connection memory allocations. This directive has minimal impact on performance and should not generally be used. By default, the size is equal to 256 bytes on 32-bit platforms and 512 bytes on 64-bit platforms

Prior to version 1. 9. 8, the default value was 256 on all platforms

Syntax.

aio threads=pool$disk;
911;
Default.
aio threads=pool$disk;
97Context.
aio off;
30,
aio off;
31,
aio off;
32

Defines the default MIME type of a response. Mapping of file name extensions to MIME types can be set with the types directive

Syntax.

aio off;
33
Default.
aio threads=pool$disk;
98Context.
aio off;
30,
aio off;
31,
aio off;
32

This directive appeared in version 0. 7. 7.

Enables the use of the

aio threads=pool$disk;
920 flag (FreeBSD, Linux), the
aio threads=pool$disk;
921 flag (macOS), or the
aio threads=pool$disk;
922 function (Solaris), when reading files that are larger than or equal to the specified
aio threads=pool$disk;
907. The directive automatically disables (0. 7. 15) the use of sendfile for a given request. It can be useful for serving large files

aio threads=pool$disk;
99

or when using aio on Linux

Syntax.

aio off;
34
Default.
options VFS_AIO
0Context.
aio off;
30,
aio off;
31,
aio off;
32

This directive appeared in version 0. 8. 11.

Đặt căn chỉnh cho directio. In most cases, a 512-byte alignment is enough. However, when using XFS under Linux, it needs to be increased to 4K

Syntax.

aio off;
35
aio off;
36
Default.
options VFS_AIO
1Context.
aio off;
30,
aio off;
31,
aio off;
32

This directive appeared in version 1. 1. 15.

Determines how symbolic links should be treated when opening files

aio off;
29Symbolic links in the pathname are allowed and not checked. Đây là hành vi mặc định.
aio off;
78Nếu bất kỳ thành phần nào của tên đường dẫn là một liên kết tượng trưng, ​​quyền truy cập vào một tệp sẽ bị từ chối.
aio threads=pool$disk;
930Quyền truy cập vào một tệp bị từ chối nếu bất kỳ thành phần nào của tên đường dẫn là một liên kết tượng trưng, ​​đồng thời liên kết và đối tượng mà liên kết trỏ đến có các chủ sở hữu khác nhau.
aio threads=pool$disk;
931=
aio threads=pool$disk;
932Khi kiểm tra các liên kết tượng trưng (tham số
aio off;
78 và
aio threads=pool$disk;
930), tất cả các thành phần của tên đường dẫn thường được kiểm tra. Có thể tránh kiểm tra các liên kết tượng trưng trong phần đầu của tên đường dẫn bằng cách chỉ định thêm tham số
aio threads=pool$disk;
931=
aio threads=pool$disk;
932. Trong trường hợp này, các liên kết tượng trưng chỉ được kiểm tra từ thành phần tên đường dẫn theo sau phần ban đầu được chỉ định. Nếu giá trị không phải là phần ban đầu của tên đường dẫn được chọn, thì toàn bộ tên đường dẫn sẽ được kiểm tra như thể tham số này hoàn toàn không được chỉ định. Nếu giá trị khớp với toàn bộ tên tệp, các liên kết tượng trưng sẽ không được chọn. Giá trị tham số có thể chứa các biến

Ví dụ

options VFS_AIO
2

Lệnh này chỉ khả dụng trên các hệ thống có giao diện

aio threads=pool$disk;
945 và
aio threads=pool$disk;
946. Các hệ thống như vậy bao gồm các phiên bản hiện đại của FreeBSD, Linux và Solaris

Tham số

aio off;
78 và
aio threads=pool$disk;
930 thêm chi phí xử lý

Trên các hệ thống không hỗ trợ mở thư mục chỉ để tìm kiếm, để sử dụng các tham số này, các quy trình worker phải có quyền đọc đối với tất cả các thư mục đang được kiểm tra
Các mô-đun ngx_http_autoindex_module, ngx_http_random_index_module và ngx_http_dav_module hiện bỏ qua lệnh này

Cú pháp.

aio threads=pool$disk;
949. [
aio off;
36[____6951]]
aio threads=pool$disk;
952;
Mặc định. -Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32,
aio threads=pool$disk;
956

Xác định URI sẽ được hiển thị cho các lỗi đã chỉ định. Một giá trị

aio threads=pool$disk;
952 có thể chứa các biến

Ví dụ

options VFS_AIO
3

Điều này gây ra một chuyển hướng nội bộ đến

aio threads=pool$disk;
952 đã chỉ định với phương thức yêu cầu của khách hàng được thay đổi thành “
aio threads=pool$disk;
959” (đối với tất cả các phương thức khác với “
aio threads=pool$disk;
959” và “
aio threads=pool$disk;
961”)

Hơn nữa, có thể thay đổi mã phản hồi thành mã khác bằng cách sử dụng cú pháp “

aio off;
36
aio threads=pool$disk;
951”, chẳng hạn

options VFS_AIO
4

Nếu phản hồi lỗi được xử lý bởi máy chủ proxy hoặc máy chủ FastCGI/uwsgi/SCGI/gRPC và máy chủ có thể trả về các mã phản hồi khác nhau (e. g. , 200, 302, 401 hoặc 404), có thể trả lời bằng mã mà nó trả về

options VFS_AIO
5

Nếu không cần thay đổi URI và phương thức trong quá trình chuyển hướng nội bộ, có thể chuyển quá trình xử lý lỗi vào một vị trí được đặt tên

options VFS_AIO
6
Nếu quá trình xử lý
aio threads=pool$disk;
952 dẫn đến lỗi, mã trạng thái của lỗi xảy ra lần cuối sẽ được trả về máy khách

Cũng có thể sử dụng chuyển hướng URL để xử lý lỗi

options VFS_AIO
7

Trong trường hợp này, theo mặc định, mã phản hồi 302 được trả về máy khách. Nó chỉ có thể được thay đổi thành một trong các mã trạng thái chuyển hướng (301, 302, 303, 307 và 308)

Mã 307 không được coi là chuyển hướng cho đến phiên bản 1. 1. 16 và 1. 0. 13
Mã 308 không được coi là chuyển hướng cho đến phiên bản 1. 13. 0

Các lệnh này được kế thừa từ mức cấu hình trước đó khi và chỉ khi không có lệnh

aio threads=pool$disk;
965 nào được xác định ở mức hiện tại

Cú pháp.

aio off;
37
Mặc định.
options VFS_AIO
8Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Chỉ thị này đã xuất hiện trong phiên bản 1. 3. 3.

Bật hoặc tắt tự động tạo trường tiêu đề phản hồi “ETag” cho tài nguyên tĩnh

Cú pháp.

aio threads=pool$disk;
971
Mặc định. -Bối cảnh.
aio threads=pool$disk;
972

Cung cấp bối cảnh tệp cấu hình trong đó chỉ thị máy chủ HTTP được chỉ định

Cú pháp.

aio off;
38
Mặc định.
options VFS_AIO
9Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Chỉ thị này đã xuất hiện trong phiên bản 0. 7. 24.

Chỉ định cách so sánh thời gian sửa đổi của phản hồi với thời gian trong trường tiêu đề yêu cầu “Nếu-Đã sửa đổi-Từ khi”

aio off;
29trường tiêu đề yêu cầu “If-Modified-Since” bị bỏ qua (0. 7. 34);______6974khớp chính xác;
aio threads=pool$disk;
975thời gian sửa đổi của phản hồi nhỏ hơn hoặc bằng thời gian trong trường tiêu đề yêu cầu “If-Modified-Since”

Cú pháp.

aio off;
39
Mặc định.
kldload aio
0Bối cảnh.
aio off;
30,
aio off;
31

Kiểm soát xem có nên bỏ qua các trường tiêu đề có tên không hợp lệ hay không. Tên hợp lệ bao gồm các chữ cái tiếng Anh, chữ số, dấu gạch ngang và có thể là dấu gạch dưới (được kiểm soát bởi chỉ thị underscores_in_headers)

Nếu lệnh được chỉ định ở cấp máy chủ, giá trị từ máy chủ mặc định có thể được sử dụng. Details are provided in the “Virtual server selection” section

Cú pháp.

aio threads=pool$disk;
986
Mặc định. -Bối cảnh.
aio off;
32

Chỉ định rằng một vị trí nhất định chỉ có thể được sử dụng cho các yêu cầu nội bộ. Đối với các yêu cầu bên ngoài, lỗi máy khách 404 (Không tìm thấy) được trả về. Yêu cầu nội bộ như sau

Ví dụ

kldload aio
1
Có giới hạn 10 chuyển hướng nội bộ cho mỗi yêu cầu để ngăn các chu kỳ xử lý yêu cầu có thể xảy ra trong cấu hình không chính xác. Nếu đạt đến giới hạn này, lỗi 500 (Lỗi Máy chủ Nội bộ) sẽ được trả về. Trong những trường hợp như vậy, thông báo "viết lại hoặc chu kỳ chuyển hướng nội bộ" có thể được nhìn thấy trong nhật ký lỗi

Cú pháp.

aio threads=pool$disk;
988.
aio threads=pool$disk;
989. ;
Mặc định.
kldload aio
2Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Vô hiệu hóa các kết nối liên tục với các trình duyệt hoạt động sai. Các tham số

aio threads=pool$disk;
989 chỉ định trình duyệt nào sẽ bị ảnh hưởng. Giá trị
aio threads=pool$disk;
994 vô hiệu hóa các kết nối liên tục với các phiên bản cũ của MSIE, sau khi nhận được yêu cầu POST. Giá trị
aio threads=pool$disk;
995 vô hiệu hóa các kết nối liên tục với Safari và các trình duyệt giống Safari trên macOS và các hệ điều hành giống macOS. Giá trị
aio threads=pool$disk;
996 cho phép kết nối liên tục với tất cả các trình duyệt

Trước phiên bản 1. 1. 18, giá trị
aio threads=pool$disk;
995 khớp với tất cả Safari và các trình duyệt giống Safari trên tất cả các hệ điều hành và các kết nối liên tục với chúng bị tắt theo mặc định

Cú pháp.

aio threads=pool$disk;
998;
Mặc định.
kldload aio
3Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Chỉ thị này đã xuất hiện trong phiên bản 0. 8. 0.

Đặt số lượng yêu cầu tối đa có thể được phục vụ thông qua một kết nối liên tục. Sau khi số lượng yêu cầu tối đa được thực hiện, kết nối sẽ bị đóng

Việc đóng các kết nối theo định kỳ là cần thiết để giải phóng phân bổ bộ nhớ cho mỗi kết nối. Do đó, việc sử dụng số lượng yêu cầu tối đa quá cao có thể dẫn đến việc sử dụng bộ nhớ quá mức và không được khuyến nghị

Trước phiên bản 1. 19. 10, giá trị mặc định là 100

Cú pháp.

options VFS_AIO
02;
Mặc định.
kldload aio
4Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Chỉ thị này đã xuất hiện trong phiên bản 1. 19. 10.

Giới hạn thời gian tối đa mà các yêu cầu có thể được xử lý thông qua một kết nối liên tục. Sau khi đạt đến thời gian này, kết nối sẽ bị đóng sau quá trình xử lý yêu cầu tiếp theo

Cú pháp.

options VFS_AIO
06 [
options VFS_AIO
07];
Mặc định.
kldload aio
5Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Tham số đầu tiên đặt thời gian chờ trong đó kết nối máy khách liên tục sẽ vẫn mở ở phía máy chủ. Giá trị bằng 0 sẽ vô hiệu hóa các kết nối máy khách duy trì. Tham số thứ hai tùy chọn đặt một giá trị trong “Keep-Alive. timeout=______011” trường tiêu đề phản hồi. Hai tham số có thể khác nhau

Các “Giữ-Alive. timeout=_______011” trường tiêu đề được Mozilla và Konqueror công nhận. MSIE tự đóng các kết nối liên tục trong khoảng 60 giây

Cú pháp.

options VFS_AIO
13
aio threads=pool$disk;
907;
Mặc định.
kldload aio
6Bối cảnh.
aio off;
30,
aio off;
31

Đặt tối đa

options VFS_AIO
17 và
aio threads=pool$disk;
907 của bộ đệm được sử dụng để đọc tiêu đề yêu cầu máy khách lớn. Một dòng yêu cầu không thể vượt quá kích thước của một bộ đệm hoặc lỗi 414 (URI yêu cầu quá lớn) được trả về máy khách. Trường tiêu đề yêu cầu cũng không được vượt quá kích thước của một bộ đệm hoặc lỗi 400 (Yêu cầu không hợp lệ) được trả về máy khách. Bộ đệm chỉ được phân bổ theo yêu cầu. Theo mặc định, kích thước bộ đệm bằng 8K byte. Nếu sau khi kết thúc quá trình xử lý yêu cầu, một kết nối được chuyển sang trạng thái duy trì hoạt động, các bộ đệm này sẽ được giải phóng

Nếu lệnh được chỉ định ở cấp máy chủ, giá trị từ máy chủ mặc định có thể được sử dụng. Details are provided in the “Virtual server selection” section

Cú pháp.

options VFS_AIO
19. {. }
Mặc định. -Bối cảnh.
aio off;
32

Giới hạn các phương thức HTTP được phép bên trong một vị trí. Tham số

options VFS_AIO
21 có thể là một trong các tham số sau.
aio threads=pool$disk;
959,
aio threads=pool$disk;
961,
options VFS_AIO
24,
options VFS_AIO
25,
options VFS_AIO
26,
options VFS_AIO
27,
options VFS_AIO
28,
options VFS_AIO
29,
options VFS_AIO
30,
options VFS_AIO
31,
options VFS_AIO
32,
options VFS_AIO
33,
options VFS_AIO
34, hoặc
options VFS_AIO
35. Cho phép phương thức
aio threads=pool$disk;
959 làm cho phương thức
aio threads=pool$disk;
961 cũng được cho phép. Có thể giới hạn quyền truy cập vào các phương thức khác bằng cách sử dụng ngx_http_access_module, ngx_http_auth_basic_module và ngx_http_auth_jwt_module (1. 13. 10) chỉ thị mô-đun

kldload aio
7

Xin lưu ý rằng điều này sẽ giới hạn quyền truy cập vào tất cả các phương thức ngoại trừ GET và HEAD

Cú pháp.

options VFS_AIO
38;
Mặc định.
kldload aio
8Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32,
aio threads=pool$disk;
956

Giới hạn tốc độ truyền phản hồi tới máy khách.

options VFS_AIO
43 được chỉ định theo byte trên giây. Giá trị bằng 0 vô hiệu hóa giới hạn tốc độ. Giới hạn được đặt cho mỗi yêu cầu và do đó, nếu khách hàng đồng thời mở hai kết nối, tỷ lệ tổng thể sẽ cao gấp đôi so với giới hạn đã chỉ định

Giá trị tham số có thể chứa các biến (1. 17. 0). Nó có thể hữu ích trong trường hợp tỷ lệ nên được giới hạn tùy thuộc vào một điều kiện nhất định

kldload aio
9

Tuy nhiên, giới hạn tốc độ cũng có thể được đặt trong biến

options VFS_AIO
44, kể từ phiên bản 1. 17. 0, phương pháp này không được khuyến nghị

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
0

Giới hạn tốc độ cũng có thể được đặt trong trường tiêu đề “X-Accel-Limit-Rate” của phản hồi máy chủ proxy. Khả năng này có thể bị vô hiệu hóa bằng cách sử dụng các chỉ thị proxy_ignore_headers, fastcgi_ignore_headers, uwsgi_ignore_headers và scgi_ignore_headers

Cú pháp.

aio off;
40
Mặc định.
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
1Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32,
aio threads=pool$disk;
956

Chỉ thị này đã xuất hiện trong phiên bản 0. 8. 0.

Đặt số lượng ban đầu mà sau đó tốc độ truyền tiếp phản hồi cho khách hàng sẽ bị giới hạn. Giá trị tham số có thể chứa các biến (1. 17. 0)

Ví dụ

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
2

Cú pháp.

aio off;
41
Mặc định.
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
3Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Chỉ thị này đã xuất hiện trong phiên bản 1. 1. 0 và 1. 0. 6.

Kiểm soát cách nginx đóng các kết nối máy khách

Giá trị mặc định “

aio off;
78” hướng dẫn nginx đợi và xử lý dữ liệu bổ sung từ máy khách trước khi đóng hoàn toàn kết nối, nhưng chỉ khi phương pháp phỏng đoán gợi ý rằng máy khách có thể đang gửi thêm dữ liệu

Giá trị “

options VFS_AIO
52” sẽ khiến nginx chờ vô điều kiện và xử lý dữ liệu khách hàng bổ sung

Giá trị “

aio off;
29” yêu cầu nginx không bao giờ đợi thêm dữ liệu và đóng kết nối ngay lập tức. Hành vi này phá vỡ giao thức và không nên được sử dụng trong các trường hợp bình thường

Để kiểm soát việc đóng các kết nối HTTP/2, lệnh phải được chỉ định ở cấp độ máy chủ (1. 19. 1)

Cú pháp.

aio off;
42
Mặc định.
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
4Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Khi Linging_close có hiệu lực, lệnh này chỉ định thời gian tối đa mà nginx sẽ xử lý (đọc và bỏ qua) dữ liệu bổ sung đến từ máy khách. Sau đó, kết nối sẽ bị đóng, ngay cả khi có nhiều dữ liệu hơn

Cú pháp.

aio off;
43
Mặc định.
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
5Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Khi Linging_close có hiệu lực, chỉ thị này chỉ định thời gian chờ tối đa để có thêm dữ liệu khách hàng. Nếu không nhận được dữ liệu trong thời gian này, kết nối sẽ bị đóng. Mặt khác, dữ liệu được đọc và bỏ qua và nginx lại bắt đầu chờ thêm dữ liệu. Chu kỳ “chờ-đọc-bỏ qua” được lặp lại, nhưng không lâu hơn thời gian được chỉ định bởi chỉ thị Linging_time

Cú pháp.

options VFS_AIO
67[.
options VFS_AIO
68] [
options VFS_AIO
69] [
options VFS_AIO
70] [
options VFS_AIO
71.
options VFS_AIO
72] [
options VFS_AIO
73] [
options VFS_AIO
74=
options VFS_AIO
17] [
options VFS_AIO
76=
options VFS_AIO
17] [
options VFS_AIO
78=
options VFS_AIO
17] [
options VFS_AIO
80=
aio threads=pool$disk;
907] [
options VFS_AIO
82=
aio threads=pool$disk;
907] [
options VFS_AIO
84=
options VFS_AIO
85] [
options VFS_AIO
86] [
options VFS_AIO
87] [
options VFS_AIO
88=
aio off;
78. ________ 529] [________ 091] [________ 092=________ 578.
aio off;
29. [______095]. [______096]. [
options VFS_AIO
97]];
aio off;
44
kldload aio
28
aio off;
53 [
options VFS_AIO
69] [
options VFS_AIO
70] [
options VFS_AIO
71.
options VFS_AIO
72] [
options VFS_AIO
73] [_______078=
options VFS_AIO
17] [
options VFS_AIO
80=
aio threads=pool$disk;
907] [
options VFS_AIO
82=
aio threads=pool$disk;
907] [
options VFS_AIO
84=
options VFS_AIO
85] [
options VFS_AIO
86] [
options VFS_AIO
87] [
options VFS_AIO
92=
aio off;
78.
aio off;
29. [______095]. [______096]. [
options VFS_AIO
97]];
Mặc định.
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
6Bối cảnh.
aio off;
31

Đặt

kldload aio
52 và
options VFS_AIO
68 cho IP hoặc
aio off;
53 cho ổ cắm tên miền UNIX mà máy chủ sẽ chấp nhận yêu cầu trên đó. Cả
kldload aio
52 và
options VFS_AIO
68, hoặc chỉ
kldload aio
52 hoặc chỉ
options VFS_AIO
68 đều có thể được chỉ định. Ví dụ:
kldload aio
52 cũng có thể là tên máy chủ

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
7

Địa chỉ IPv6 (0. 7. 36) được chỉ định trong ngoặc vuông

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
8

Ổ cắm tên miền UNIX (0. 8. 21) được chỉ định với tiền tố “

kldload aio
60”

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
9

Nếu chỉ cung cấp

kldload aio
52, thì cổng 80 được sử dụng

Nếu lệnh không có thì

kldload aio
62 được sử dụng nếu nginx chạy với đặc quyền siêu người dùng hoặc
kldload aio
63 nếu không

Tham số

options VFS_AIO
69, nếu có, sẽ khiến máy chủ trở thành máy chủ mặc định cho
kldload aio
52 đã chỉ định. Cặp
options VFS_AIO
68. Nếu không có lệnh nào có tham số
options VFS_AIO
69 thì máy chủ đầu tiên có tham số
kldload aio
52. Cặp
options VFS_AIO
68 sẽ là máy chủ mặc định cho cặp này

Trong các phiên bản trước 0. 8. 21 tham số này được đặt tên đơn giản là
aio off;
41

Tham số

options VFS_AIO
70 (0. 7. 14) cho phép chỉ định rằng tất cả các kết nối được chấp nhận trên cổng này sẽ hoạt động ở chế độ SSL. Điều này cho phép cấu hình nhỏ gọn hơn cho máy chủ xử lý cả yêu cầu HTTP và HTTPS

Tham số

options VFS_AIO
71 (1. 9. 5) định cấu hình cổng để chấp nhận kết nối HTTP/2. Thông thường, để điều này hoạt động, tham số
options VFS_AIO
70 cũng phải được chỉ định, nhưng nginx cũng có thể được định cấu hình để chấp nhận kết nối HTTP/2 mà không cần SSL

Tham số

options VFS_AIO
72 (1. 3. 15-1. 9. 4) cho phép chấp nhận các kết nối SPDY trên cổng này. Thông thường, để điều này hoạt động, tham số
options VFS_AIO
70 cũng phải được chỉ định, nhưng nginx cũng có thể được định cấu hình để chấp nhận các kết nối SPDY không có SSL

Tham số

options VFS_AIO
73 (1. 5. 12) cho phép chỉ định rằng tất cả các kết nối được chấp nhận trên cổng này phải sử dụng giao thức PROXY

Giao thức PROXY phiên bản 2 được hỗ trợ kể từ phiên bản 1. 13. 11

Chỉ thị

kldload aio
77 có thể có một số tham số bổ sung dành riêng cho các cuộc gọi hệ thống liên quan đến ổ cắm. Các tham số này có thể được chỉ định trong bất kỳ chỉ thị
kldload aio
77 nào, nhưng chỉ một lần cho một
kldload aio
52 nhất định. Cặp
options VFS_AIO
68

Trong các phiên bản trước 0. 8. 21, chúng chỉ có thể được chỉ định trong chỉ thị
kldload aio
77 cùng với tham số
aio off;
41
options VFS_AIO
74=
options VFS_AIO
17tham số này (0. 8. 44) đặt bảng định tuyến liên quan, FIB (tùy chọn
kldload aio
85) cho ổ cắm nghe. Điều này hiện chỉ hoạt động trên FreeBSD.
options VFS_AIO
76=
options VFS_AIO
17bật “TCP Fast Open” cho ổ cắm nghe (1. 5. 8) và giới hạn độ dài tối đa cho hàng kết nối chưa hoàn thành bắt tay ba bước
Không bật tính năng này trừ khi máy chủ có thể xử lý việc nhận cùng một gói SYN với dữ liệu nhiều lần
options VFS_AIO
78=
options VFS_AIO
17đặt tham số
options VFS_AIO
78 trong cuộc gọi
kldload aio
91 giới hạn độ dài tối đa cho hàng đợi kết nối đang chờ xử lý. Theo mặc định,
options VFS_AIO
78 được đặt thành -1 trên FreeBSD, DragonFly BSD và macOS và thành 511 trên các nền tảng khác.
options VFS_AIO
80=
aio threads=pool$disk;
907đặt kích thước bộ đệm nhận (tùy chọn
kldload aio
95) cho ổ cắm nghe.
options VFS_AIO
82=
aio threads=pool$disk;
907đặt kích thước bộ đệm gửi (tùy chọn
kldload aio
98) cho ổ cắm nghe.
options VFS_AIO
84=
options VFS_AIO
85đặt tên của bộ lọc chấp nhận (tùy chọn
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
01) cho ổ cắm lắng nghe lọc các kết nối đến trước khi chuyển chúng đến
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
02. Tính năng này chỉ hoạt động trên FreeBSD và NetBSD 5. 0+. Các giá trị có thể có là dataready và httpready.
options VFS_AIO
86hướng dẫn sử dụng
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
02 bị hoãn lại (tùy chọn ổ cắm
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
05) trên Linux.
options VFS_AIO
87hướng dẫn thực hiện cuộc gọi
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
07 riêng cho một
kldload aio
52 đã cho. Cặp
options VFS_AIO
68. Điều này rất hữu ích vì nếu có một số lệnh
kldload aio
77 có cùng một cổng nhưng địa chỉ khác nhau và một trong các lệnh
kldload aio
77 lắng nghe trên tất cả các địa chỉ cho cổng đã cho (
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
12
options VFS_AIO
68), nginx sẽ chỉ
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
07 tới
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
12
options VFS_AIO
68. Cần lưu ý rằng cuộc gọi hệ thống
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
17 sẽ được thực hiện trong trường hợp này để xác định địa chỉ đã chấp nhận kết nối. Nếu các tham số
options VFS_AIO
74,
options VFS_AIO
76,
options VFS_AIO
78,
options VFS_AIO
80,
options VFS_AIO
82,
options VFS_AIO
84,
options VFS_AIO
86,
options VFS_AIO
88,
options VFS_AIO
91 hoặc
options VFS_AIO
92 được sử dụng thì cho một
kldload aio
52 nhất định. Cặp
options VFS_AIO
68 một cuộc gọi
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
07 riêng biệt sẽ luôn được thực hiện.
options VFS_AIO
88=
aio off;
78.
aio off;
29tham số này (0. 7. 42) xác định (thông qua tùy chọn ổ cắm
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
34) liệu ổ cắm IPv6 có lắng nghe địa chỉ ký tự đại diện
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
35 sẽ chỉ chấp nhận kết nối IPv6 hay cả kết nối IPv6 và IPv4 hay không. Thông số này được bật theo mặc định. Nó chỉ có thể được đặt một lần khi bắt đầu
Trước phiên bản 1. 3. 4, nếu tham số này bị bỏ qua thì cài đặt của hệ điều hành có hiệu lực đối với ổ cắm
options VFS_AIO
91tham số này (1. 9. 1) hướng dẫn tạo ổ cắm nghe riêng cho từng quy trình worker (sử dụng tùy chọn ổ cắm
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
37 trên Linux 3. 9+ và DragonFly BSD hoặc
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
38 trên FreeBSD 12+), cho phép nhân phân phối các kết nối đến giữa các quy trình worker. Tính năng này hiện chỉ hoạt động trên Linux 3. 9+, DragonFly BSD và FreeBSD 12+ (1. 15. 1)
Việc sử dụng tùy chọn này không phù hợp có thể có ý nghĩa bảo mật
options VFS_AIO
92=____578.
aio off;
29. [______095]. [______096]. [
options VFS_AIO
97]thông số này (1. 1. 11) định cấu hình hành vi “TCP keepalive” cho ổ cắm nghe. Nếu tham số này bị bỏ qua thì cài đặt của hệ điều hành sẽ có hiệu lực đối với ổ cắm. Nếu nó được đặt thành giá trị “
aio off;
78”, tùy chọn
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
46 được bật cho ổ cắm. Nếu nó được đặt thành giá trị “
aio off;
29”, tùy chọn
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
46 sẽ bị tắt cho ổ cắm. Một số hệ điều hành hỗ trợ cài đặt các tham số cố định TCP trên cơ sở mỗi ổ cắm bằng cách sử dụng các tùy chọn ổ cắm
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
49,
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
50 và
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
51. Trên những hệ thống như vậy (hiện tại, Linux 2. 4+, NetBSD 5+ và FreeBSD 9. 0-STABLE), chúng có thể được cấu hình bằng cách sử dụng các tham số
options VFS_AIO
95,
options VFS_AIO
96 và
options VFS_AIO
97. Một hoặc hai tham số có thể bị bỏ qua, trong trường hợp đó, cài đặt mặc định của hệ thống cho tùy chọn ổ cắm tương ứng sẽ có hiệu lực. Ví dụ,
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
0
sẽ đặt thời gian chờ không hoạt động (
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
49) thành 30 phút, để khoảng thời gian thăm dò (
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
50) ở mặc định hệ thống và đặt số lần thăm dò (
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
51) thành 10 lần thăm dò

Ví dụ

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
1

Cú pháp.

aio off;
45
____263
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
64 {. }
Mặc định. -Bối cảnh.
aio off;
31,
aio off;
32

Đặt cấu hình tùy thuộc vào URI yêu cầu

So khớp được thực hiện dựa trên URI đã chuẩn hóa, sau khi giải mã văn bản được mã hóa ở dạng “

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
67”, giải quyết các tham chiếu đến các thành phần đường dẫn tương đối “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
68” và “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
69”, và có thể nén hai hoặc nhiều dấu gạch chéo liền kề thành một dấu gạch chéo

Vị trí có thể được xác định bằng chuỗi tiền tố hoặc bằng biểu thức chính quy. Cụm từ thông dụng được chỉ định với công cụ sửa đổi “

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
60” trước đó (đối với khớp không phân biệt chữ hoa chữ thường) hoặc công cụ sửa đổi “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
59” (đối với khớp phân biệt chữ hoa chữ thường). Để tìm vị trí khớp với một yêu cầu nhất định, trước tiên nginx kiểm tra các vị trí được xác định bằng chuỗi tiền tố (vị trí tiền tố). Trong số đó, vị trí có tiền tố khớp dài nhất được chọn và ghi nhớ. Sau đó, các biểu thức chính quy được kiểm tra, theo thứ tự xuất hiện trong tệp cấu hình. Việc tìm kiếm các biểu thức chính quy kết thúc ở lần khớp đầu tiên và cấu hình tương ứng được sử dụng. Nếu không tìm thấy kết quả khớp với biểu thức chính quy thì cấu hình của vị trí tiền tố được ghi nhớ trước đó sẽ được sử dụng

Các khối

aio off;
32 có thể được lồng vào nhau, với một số ngoại lệ được đề cập bên dưới

Đối với các hệ điều hành không phân biệt chữ hoa chữ thường như macOS và Cygwin, việc so khớp với chuỗi tiền tố sẽ bỏ qua chữ hoa chữ thường (0. 7. 7). Tuy nhiên, so sánh được giới hạn ở các ngôn ngữ một byte

Biểu thức chính quy có thể chứa ảnh chụp (0. 7. 40) mà sau này có thể được sử dụng trong các chỉ thị khác

Nếu vị trí tiền tố khớp dài nhất có công cụ sửa đổi “

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
61” thì biểu thức chính quy không được chọn

Ngoài ra, bằng cách sử dụng công cụ sửa đổi “

aio off;
36”, có thể xác định đối sánh chính xác của URI và vị trí. Nếu tìm thấy kết quả khớp chính xác, quá trình tìm kiếm sẽ kết thúc. Ví dụ: nếu yêu cầu “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
75” xảy ra thường xuyên, việc xác định “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
76” sẽ tăng tốc độ xử lý các yêu cầu này, vì tìm kiếm kết thúc ngay sau lần so sánh đầu tiên. Một vị trí như vậy rõ ràng không thể chứa các vị trí lồng nhau

Trong các phiên bản từ 0. 7. 1 đến 0. 8. 41, nếu một yêu cầu khớp với vị trí tiền tố mà không có công cụ sửa đổi “
aio off;
36” và “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
61”, thì quá trình tìm kiếm cũng bị chấm dứt và biểu thức chính quy không được chọn

Hãy minh họa điều trên bằng một ví dụ

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
2

Yêu cầu “

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
75” sẽ khớp với cấu hình A, yêu cầu “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
80” sẽ khớp với cấu hình B, yêu cầu “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
81” sẽ khớp với cấu hình C, yêu cầu “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
82” sẽ khớp với cấu hình D và yêu cầu “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
83” sẽ khớp với cấu hình E

Tiền tố “

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
84” xác định vị trí được đặt tên. Một vị trí như vậy không được sử dụng để xử lý yêu cầu thông thường mà thay vào đó được sử dụng để chuyển hướng yêu cầu. Chúng không thể được lồng vào nhau và không thể chứa các vị trí lồng nhau

Nếu một vị trí được xác định bởi một chuỗi tiền tố kết thúc bằng ký tự gạch chéo và các yêu cầu được xử lý bởi một trong số proxy_pass, fastcgi_pass, uwsgi_pass, scgi_pass, memcached_pass hoặc grpc_pass thì quá trình xử lý đặc biệt sẽ được thực hiện. Để phản hồi yêu cầu có URI bằng chuỗi này, nhưng không có dấu gạch chéo ở cuối, chuyển hướng vĩnh viễn có mã 301 sẽ được trả về URI được yêu cầu có dấu gạch chéo được thêm vào. Nếu điều này không được mong muốn, một đối sánh chính xác của URI và vị trí có thể được xác định như thế này

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
3

Cú pháp.

aio off;
46
Mặc định.
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
4Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Bật hoặc tắt ghi nhật ký lỗi về tệp không tìm thấy vào error_log

Cú pháp.

aio off;
47
Mặc định.
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
5Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables logging of subrequests into access_log

Syntax.

aio off;
48
Default. —Context.
aio off;
30,
aio off;
31,
aio off;
32

This directive appeared in version 1. 1. 2.

Limits the maximum allowed number of ranges in byte-range requests. Requests that exceed the limit are processed as if there were no byte ranges specified. By default, the number of ranges is not limited. The zero value disables the byte-range support completely

Syntax.

aio off;
49
Default.
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
6Bối cảnh.
aio off;
30,
aio off;
31

Enables or disables compression of two or more adjacent slashes in a URI into a single slash

Note that compression is essential for the correct matching of prefix string and regular expression locations. Without it, the “

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
03” request would not match

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
7

and might be processed as a static file. So it gets converted to “

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
04”

Turning the compression

aio off;
29 can become necessary if a URI contains base64-encoded names, since base64 uses the “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
75” character internally. However, for security considerations, it is better to avoid turning the compression off

Nếu lệnh được chỉ định ở cấp máy chủ, giá trị từ máy chủ mặc định có thể được sử dụng. Details are provided in the “Virtual server selection” section

Syntax.

aio off;
50
Default.
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
8Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables adding comments to responses for MSIE clients with status greater than 400 to increase the response size to 512 bytes

Syntax.

aio off;
51
Default.
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
9Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables issuing refreshes instead of redirects for MSIE clients

Syntax.

aio off;
52
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
18=
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
19 [
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
20=
options VFS_AIO
11];
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
0Context.
aio off;
30,
aio off;
31,
aio off;
32

Configures a cache that can store

  • open file descriptors, their sizes and modification times;
  • information on existence of directories;
  • file lookup errors, such as “file not found”, “no read permission”, and so on
    Caching of errors should be enabled separately by the open_file_cache_errors directive

The directive has the following parameters

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
25sets the maximum number of elements in the cache; on cache overflow the least recently used (LRU) elements are removed;
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
20defines a time after which an element is removed from the cache if it has not been accessed during this time; by default, it is 60 seconds;
aio off;
29disables the cache

Ví dụ

location /video/ {
    sendfile       on;
    aio            threads;
}
1

Syntax.

aio off;
53
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
2Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables caching of file lookup errors by open_file_cache

Syntax.

aio off;
54
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
3Context.
aio off;
30,
aio off;
31,
aio off;
32

Sets the minimum

options VFS_AIO
17 of file accesses during the period configured by the
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
20 parameter of the open_file_cache directive, required for a file descriptor to remain open in the cache

Syntax.

aio off;
55
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
4Context.
aio off;
30,
aio off;
31,
aio off;
32

Sets a time after which open_file_cache elements should be validated

Syntax.

aio off;
56
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
5Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Sets the

options VFS_AIO
17 and
aio threads=pool$disk;
907 of the buffers used for reading a response from a disk

Prior to version 1. 9. 5, the default value was 1 32k

Syntax.

aio off;
57
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
6Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables specifying the port in absolute redirects issued by nginx

The use of the primary server name in redirects is controlled by the server_name_in_redirect directive

Syntax.

aio off;
58
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
7Context.
aio off;
30,
aio off;
31,
aio off;
32

If possible, the transmission of client data will be postponed until nginx has at least

aio threads=pool$disk;
907 bytes of data to send. The zero value disables postponing data transmission

Syntax.

aio off;
59
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
8Context.
aio off;
30,
aio off;
31,
aio off;
32

Sets the amount of pre-reading for the kernel when working with file

On Linux, the

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
64 system call is used, and so the
aio threads=pool$disk;
907 parameter is ignored

On FreeBSD, the

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
66
aio threads=pool$disk;
907
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
68 system call, supported since FreeBSD 9. 0-CURRENT, is used. FreeBSD 7 phải được vá

Syntax.

aio off;
60
Default.
location /video/ {
    sendfile       on;
    aio            threads;
}
9Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Bật hoặc tắt thực hiện một số chuyển hướng bằng chỉ thị error_page. Số lượng chuyển hướng như vậy bị hạn chế

Cú pháp.

aio off;
61
Mặc định.
aio threads=pool$disk;
0Bối cảnh.
aio off;
30,
aio off;
31

Cho phép điều chỉnh chính xác phân bổ bộ nhớ theo yêu cầu. Chỉ thị này có tác động tối thiểu đến hiệu suất và thường không được sử dụng

Cú pháp.

aio off;
62
Mặc định.
aio threads=pool$disk;
1Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Bật hoặc tắt đặt lại các kết nối đã hết thời gian chờ và các kết nối đã đóng bằng mã không chuẩn 444 (1. 15. 2). Việc thiết lập lại được thực hiện như sau. Trước khi đóng một ổ cắm, tùy chọn

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
82 được đặt trên đó với giá trị thời gian chờ là 0. Khi đóng ổ cắm, TCP RST được gửi tới máy khách và tất cả bộ nhớ bị ổ cắm này chiếm giữ sẽ được giải phóng. Điều này giúp tránh giữ một ổ cắm đã đóng với bộ đệm đầy ở trạng thái FIN_WAIT1 trong một thời gian dài

Cần lưu ý rằng các kết nối duy trì hết thời gian được đóng bình thường

Cú pháp.

aio off;
63
Mặc định. -Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Định cấu hình máy chủ tên được sử dụng để phân giải tên của máy chủ ngược dòng thành địa chỉ, chẳng hạn

aio threads=pool$disk;
2

Địa chỉ có thể được chỉ định dưới dạng tên miền hoặc địa chỉ IP, với một cổng tùy chọn (1. 3. 1, 1. 2. 2). Nếu cổng không được chỉ định, cổng 53 được sử dụng. Máy chủ tên được truy vấn theo kiểu vòng tròn

Trước phiên bản 1. 1. 7, chỉ có thể cấu hình một máy chủ định danh duy nhất. Chỉ định máy chủ tên sử dụng địa chỉ IPv6 được hỗ trợ bắt đầu từ phiên bản 1. 3. 1 và 1. 2. 2

Theo mặc định, nginx sẽ tra cứu cả địa chỉ IPv4 và IPv6 trong khi giải quyết. Nếu không muốn tra cứu địa chỉ IPv4 hoặc IPv6, hãy sử dụng

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
97 (1. 23. 1) hoặc tham số
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
98 có thể được chỉ định

Việc phân giải tên thành địa chỉ IPv6 được hỗ trợ bắt đầu từ phiên bản 1. 5. 8

Theo mặc định, nginx lưu trữ câu trả lời bằng cách sử dụng giá trị TTL của phản hồi. Một tham số

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
84 tùy chọn cho phép ghi đè nó

aio threads=pool$disk;
3
Trước phiên bản 1. 1. 9, không thể điều chỉnh thời gian lưu vào bộ đệm và nginx luôn lưu các câu trả lời vào bộ đệm trong khoảng thời gian 5 phút
Để ngăn giả mạo DNS, bạn nên định cấu hình máy chủ DNS trong mạng cục bộ đáng tin cậy được bảo mật đúng cách

Tham số

location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
92 tùy chọn (1. 17. 1) cho phép thu thập số liệu thống kê của máy chủ DNS về các yêu cầu và phản hồi trong
location /video/ {
    sendfile       on;
    aio            on;
    directio       8m;
}
93 được chỉ định. Tham số có sẵn như là một phần của đăng ký thương mại của chúng tôi

Cú pháp.

aio off;
64
Mặc định.
aio threads=pool$disk;
4Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Đặt thời gian chờ để giải quyết tên, ví dụ

aio threads=pool$disk;
5

Cú pháp.

aio off;
65
Mặc định.
aio threads=pool$disk;
6Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32,
aio threads=pool$disk;
956

Đặt thư mục gốc cho các yêu cầu. Ví dụ với cấu hình sau

aio threads=pool$disk;
7

Tệp

location /video/ {
    sendfile       on;
    aio            threads;
}
11 sẽ được gửi để phản hồi yêu cầu “
aio off;
51”

Giá trị

aio off;
53 có thể chứa các biến, ngoại trừ
aio off;
54 và
aio off;
55

Đường dẫn đến tệp được tạo bằng cách chỉ thêm một URI vào giá trị của chỉ thị

location /video/ {
    sendfile       on;
    aio            threads;
}
16. Nếu một URI phải được sửa đổi, nên sử dụng chỉ thị bí danh

Cú pháp.

location /video/ {
    sendfile       on;
    aio            threads;
}
17.
location /video/ {
    sendfile       on;
    aio            threads;
}
18;
Mặc định.
aio threads=pool$disk;
8Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Cho phép truy cập nếu tất cả (

location /video/ {
    sendfile       on;
    aio            threads;
}
22) hoặc ít nhất một (
location /video/ {
    sendfile       on;
    aio            threads;
}
18) trong số các mô-đun ngx_http_access_module, ngx_http_auth_basic_module, ngx_http_auth_request_module hoặc ngx_http_auth_jwt_module cho phép truy cập

Ví dụ

aio threads=pool$disk;
9

Cú pháp.

aio off;
66
Mặc định.
kldload aio
00Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Nếu lệnh được đặt thành giá trị khác 0, nginx sẽ cố gắng giảm thiểu số lượng thao tác gửi trên ổ cắm máy khách bằng cách sử dụng cờ

location /video/ {
    sendfile       on;
    aio            threads;
}
28 của phương thức kqueue hoặc tùy chọn ổ cắm
location /video/ {
    sendfile       on;
    aio            threads;
}
29. Trong cả hai trường hợp,
aio threads=pool$disk;
907 được chỉ định được sử dụng

Lệnh này bị bỏ qua trên Linux, Solaris và Windows

Cú pháp.

aio off;
67
Mặc định.
kldload aio
01Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Đặt thời gian chờ để truyền phản hồi cho khách hàng. Thời gian chờ chỉ được đặt giữa hai thao tác ghi liên tiếp, không phải để truyền toàn bộ phản hồi. Nếu khách hàng không nhận được gì trong thời gian này, kết nối sẽ bị đóng

Cú pháp.

aio off;
68
Mặc định.
kldload aio
02Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32,
aio threads=pool$disk;
956

Cho phép hoặc vô hiệu hóa việc sử dụng

location /video/ {
    sendfile       on;
    aio            threads;
}
41

Bắt đầu từ nginx 0. 8. 12 và FreeBSD 5. 2. 1, aio có thể được sử dụng để tải trước dữ liệu cho

location /video/ {
    sendfile       on;
    aio            threads;
}
41

kldload aio
03

Trong cấu hình này,

location /video/ {
    sendfile       on;
    aio            threads;
}
41 được gọi với cờ
location /video/ {
    sendfile       on;
    aio            threads;
}
44 khiến nó không chặn I/O trên đĩa mà thay vào đó, báo cáo lại rằng dữ liệu không có trong bộ nhớ. nginx sau đó bắt đầu tải dữ liệu không đồng bộ bằng cách đọc một byte. Trong lần đọc đầu tiên, nhân FreeBSD tải 128K byte đầu tiên của tệp vào bộ nhớ, mặc dù các lần đọc tiếp theo sẽ chỉ tải dữ liệu trong các khối 16K. Điều này có thể được thay đổi bằng chỉ thị read_ahead

Trước phiên bản 1. 7. 11, tải trước có thể được kích hoạt với
location /video/ {
    sendfile       on;
    aio            threads;
}
45

Cú pháp.

aio off;
69
Mặc định.
kldload aio
04Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Giới hạn lượng dữ liệu có thể được truyền trong một cuộc gọi

location /video/ {
    sendfile       on;
    aio            threads;
}
41. Không có giới hạn, một kết nối nhanh có thể nắm bắt hoàn toàn quy trình worker

Trước phiên bản 1. 21. 4, theo mặc định không có giới hạn

Cú pháp.

location /video/ {
    sendfile       on;
    aio            threads;
}
51
Mặc định. -Bối cảnh.
aio off;
30

Đặt cấu hình cho máy chủ ảo. Không có sự tách biệt rõ ràng giữa máy chủ ảo dựa trên IP (dựa trên địa chỉ IP) và dựa trên tên (dựa trên trường tiêu đề yêu cầu “Máy chủ”). Thay vào đó, các lệnh lắng nghe mô tả tất cả các địa chỉ và cổng sẽ chấp nhận các kết nối cho máy chủ và lệnh server_name liệt kê tất cả các tên máy chủ. Cấu hình ví dụ được cung cấp trong tài liệu “How nginx process a request”

Cú pháp.

aio off;
70
Mặc định.
kldload aio
05Bối cảnh.
aio off;
31

Đặt tên của một máy chủ ảo, ví dụ

kldload aio
06

Tên đầu tiên trở thành tên máy chủ chính

Tên máy chủ có thể bao gồm dấu hoa thị (“

location /video/ {
    sendfile       on;
    aio            threads;
}
55”) thay thế phần đầu hoặc phần cuối của tên

kldload aio
07

Những tên như vậy được gọi là tên ký tự đại diện

Hai tên đầu tiên được đề cập ở trên có thể được kết hợp trong một

kldload aio
08

Cũng có thể sử dụng cụm từ thông dụng trong tên máy chủ, đặt trước tên bằng dấu ngã (“

location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
59”)

kldload aio
09

Biểu thức chính quy có thể chứa ảnh chụp (0. 7. 40) mà sau này có thể được sử dụng trong các chỉ thị khác

aio off;
00

Các ảnh chụp được đặt tên trong các biểu thức chính quy tạo các biến (0. 8. 25) mà sau này có thể được sử dụng trong các chỉ thị khác

aio off;
01

Nếu tham số của lệnh được đặt thành “

location /video/ {
    sendfile       on;
    aio            threads;
}
57” (0. 9. 4), tên máy chủ của máy được chèn

Cũng có thể chỉ định một tên máy chủ trống (0. 7. 11)

aio off;
02

Nó cho phép máy chủ này xử lý các yêu cầu mà không cần trường tiêu đề "Máy chủ" — thay vì máy chủ mặc định — cho địa chỉ đã cho. cặp cổng. Đây là thiết lập mặc định

Trước 0. 8. 48, tên máy chủ của máy được sử dụng theo mặc định

Trong quá trình tìm kiếm máy chủ ảo theo tên, nếu tên khớp với nhiều biến thể đã chỉ định, (e. g. cả tên ký tự đại diện và khớp cụm từ thông dụng), biến thể khớp đầu tiên sẽ được chọn, theo thứ tự ưu tiên sau

  1. tên chính xác
  2. tên ký tự đại diện dài nhất bắt đầu bằng dấu hoa thị, e. g. “______458”
  3. tên ký tự đại diện dài nhất kết thúc bằng dấu hoa thị, e. g. “______459”
  4. biểu thức chính quy phù hợp đầu tiên (theo thứ tự xuất hiện trong tệp cấu hình)

Mô tả chi tiết về tên máy chủ được cung cấp trong tài liệu Tên máy chủ riêng

Cú pháp.

aio off;
71
Mặc định.
aio off;
03Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables the use of the primary server name, specified by the server_name directive, in absolute redirects issued by nginx. When the use of the primary server name is disabled, the name from the “Host” request header field is used. If this field is not present, the IP address of the server is used

The use of a port in redirects is controlled by the port_in_redirect directive

Syntax.

aio off;
72
Default.
aio off;
04Context.
aio off;
30

Sets the bucket size for the server names hash tables. The default value depends on the size of the processor’s cache line. The details of setting up hash tables are provided in a separate document

Syntax.

aio off;
73
Default.
aio off;
05Context.
aio off;
30

Sets the maximum

aio threads=pool$disk;
907 of the server names hash tables. The details of setting up hash tables are provided in a separate document

Syntax.

aio off;
74
Default.
aio off;
06Context.
aio off;
30,
aio off;
31,
aio off;
32

Bật hoặc tắt phiên bản nginx phát ra trên các trang lỗi và trong trường tiêu đề phản hồi “Máy chủ”

The

location /video/ {
    sendfile       on;
    aio            threads;
}
72 parameter (1. 11. 10) enables emitting a build name along with nginx version

Additionally, as part of our commercial subscription, starting from version 1. 9. 13 the signature on error pages and the “Server” response header field value can be set explicitly using the

location /video/ {
    sendfile       on;
    aio            threads;
}
73 with variables. An empty string disables the emission of the “Server” field

Syntax.

aio off;
75
Mặc định.
aio off;
07Context.
aio off;
30,
aio off;
31,
aio off;
32

This directive appeared in version 1. 13. 10.

Sets the

aio threads=pool$disk;
907 of the buffer used for storing the response body of a subrequest. By default, the buffer size is equal to one memory page. This is either 4K or 8K, depending on a platform. It can be made smaller, however

The directive is applicable only for subrequests with response bodies saved into memory. For example, such subrequests are created by SSI

Syntax.

aio off;
76
Default.
aio off;
08Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables the use of the

location /video/ {
    sendfile       on;
    aio            threads;
}
89 option. The option is enabled when a connection is transitioned into the keep-alive state. Additionally, it is enabled on SSL connections, for unbuffered proxying, and for WebSocket proxying

Syntax.

aio off;
77
Default.
aio off;
09Context.
aio off;
30,
aio off;
31,
aio off;
32

Enables or disables the use of the

location /video/ {
    sendfile       on;
    aio            threads;
}
95 socket option on FreeBSD or the
location /video/ {
    sendfile       on;
    aio            threads;
}
96 socket option on Linux. The options are enabled only when sendfile is used. Enabling the option allows

  • sending the response header and the beginning of a file in one packet, on Linux and FreeBSD 4. *;
  • sending a file in full packets

Syntax.

location /video/ {
    sendfile       on;
    aio            threads;
}
97 .
aio threads=pool$disk;
952;
______497. =
aio threads=pool$disk;
00;
Default. —Context.
aio off;
31,
aio off;
32

Checks the existence of files in the specified order and uses the first found file for request processing; the processing is performed in the current context. The path to a file is constructed from the

aio threads=pool$disk;
03 parameter according to the root and alias directives. It is possible to check directory’s existence by specifying a slash at the end of a name, e. g. “______604”. If none of the files were found, an internal redirect to the
aio threads=pool$disk;
952 specified in the last parameter is made. Ví dụ

aio off;
10

Tham số cuối cùng cũng có thể trỏ đến một vị trí được đặt tên, như trong các ví dụ bên dưới. Bắt đầu từ phiên bản 0. 7. 51, tham số cuối cùng cũng có thể là

aio threads=pool$disk;
00

aio off;
11

Ví dụ trong proxy Mongrel

aio off;
12

Ví dụ cho Drupal/FastCGI

aio off;
13

Trong ví dụ sau,

aio off;
14

chỉ thị

aio threads=pool$disk;
07 tương đương với

aio off;
15

Và đây,

aio off;
16

aio threads=pool$disk;
07 kiểm tra sự tồn tại của tệp PHP trước khi chuyển yêu cầu đến máy chủ FastCGI

Ví dụ cho Wordpress và Joomla

aio off;
17

Cú pháp.

aio threads=pool$disk;
09
Mặc định.
aio off;
18Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Ánh xạ các phần mở rộng tên tệp cho các loại phản hồi MIME. Tiện ích mở rộng không phân biệt chữ hoa chữ thường. Một số tiện ích mở rộng có thể được ánh xạ tới một loại, ví dụ:

aio off;
19

Một bảng ánh xạ đầy đủ được phân phối với nginx trong tệp

aio threads=pool$disk;
13

Để làm cho một vị trí cụ thể phát ra loại MIME “

aio threads=pool$disk;
14” cho tất cả các yêu cầu, có thể sử dụng cấu hình sau

aio off;
20

Cú pháp.

aio off;
78
Mặc định.
aio off;
21Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Đặt kích thước thùng cho các loại bảng băm. Chi tiết thiết lập bảng băm được cung cấp trong một tài liệu riêng

Trước phiên bản 1. 5. 13, giá trị mặc định phụ thuộc vào kích thước của dòng bộ đệm của bộ xử lý

Cú pháp.

aio off;
79
Mặc định.
aio off;
22Bối cảnh.
aio off;
30,
aio off;
31,
aio off;
32

Đặt tối đa

aio threads=pool$disk;
907 của các loại bảng băm. Chi tiết thiết lập bảng băm được cung cấp trong một tài liệu riêng

Cú pháp.

aio off;
80
Mặc định.
aio off;
23Bối cảnh.
aio off;
30,
aio off;
31

Bật hoặc tắt việc sử dụng dấu gạch dưới trong các trường tiêu đề yêu cầu của máy khách. Khi việc sử dụng dấu gạch dưới bị vô hiệu hóa, các trường tiêu đề yêu cầu có tên chứa dấu gạch dưới được đánh dấu là không hợp lệ và trở thành đối tượng của chỉ thị ign_invalid_headers

Nếu lệnh được chỉ định ở cấp máy chủ, giá trị từ máy chủ mặc định có thể được sử dụng. Details are provided in the “Virtual server selection” section

Cú pháp.

aio off;
81
Mặc định.
aio off;
24Bối cảnh.
aio off;
30

Đặt kích thước thùng cho bảng băm biến. Chi tiết thiết lập bảng băm được cung cấp trong một tài liệu riêng

Cú pháp.

aio off;
82
Mặc định.
aio off;
25Bối cảnh.
aio off;
30

Đặt tối đa

aio threads=pool$disk;
907 của bảng băm biến. Chi tiết thiết lập bảng băm được cung cấp trong một tài liệu riêng

Trước phiên bản 1. 5. 13, giá trị mặc định là 512

Biến nhúng

Mô-đun

aio threads=pool$disk;
33 hỗ trợ các biến nhúng có tên khớp với các biến của Máy chủ Apache. Trước hết, đây là các biến đại diện cho các trường tiêu đề yêu cầu của khách hàng, chẳng hạn như
aio threads=pool$disk;
34,
aio threads=pool$disk;
35, v.v. Ngoài ra còn có các biến khác

aio threads=pool$disk;
36
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
64đối số
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
64 trong dòng yêu cầu
aio threads=pool$disk;
39đối số trong dòng yêu cầu
aio threads=pool$disk;
40địa chỉ máy khách ở dạng nhị phân, độ dài của giá trị luôn là 4 byte đối với địa chỉ IPv4 hoặc 16 byte đối với địa chỉ IPv6
aio threads=pool$disk;
41số byte được gửi tới máy khách, không tính tiêu đề phản hồi; . 3. 8, 1. 2. 5)
aio threads=pool$disk;
45số sê-ri kết nối (1. 3. 8, 1. 2. 5)
aio threads=pool$disk;
46số lượng yêu cầu hiện tại được thực hiện thông qua kết nối (1. 3. 8, 1. 2. 5)thời gian kết nối tính bằng giây với độ phân giải mili giây (1. 19. 10)
aio threads=pool$disk;
47Trường tiêu đề yêu cầu “Content-Length”
aio threads=pool$disk;
48Trường tiêu đề yêu cầu “Content-Type”
aio threads=pool$disk;
49
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
64giá trị của ______264 cookie
aio off;
54root hoặc chỉ thị bí danh cho yêu cầu hiện tại
aio threads=pool$disk;
53giống như
aio threads=pool$disk;
54
aio threads=pool$disk;
55 theo thứ tự ưu tiên này. tên máy chủ lưu trữ từ dòng yêu cầu hoặc tên máy chủ lưu trữ từ trường tiêu đề yêu cầu "Máy chủ" hoặc tên máy chủ khớp với yêu cầu
location /video/ {
    sendfile       on;
    aio            threads;
}
57tên máy chủ lưu trữ
aio threads=pool$disk;
57
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
64trường tiêu đề yêu cầu tùy ý; . 3. 9, 1. 2. 6)
aio threads=pool$disk;
65nginx phiên bản
aio threads=pool$disk;
66PID của worker process
aio threads=pool$disk;
67“
aio threads=pool$disk;
68” nếu yêu cầu được chuyển thành đường ống, “
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
68” nếu không (1. 3. 12, 1. 2. 7) ______670địa chỉ khách hàng từ tiêu đề giao thức PROXY (1. 5. 12)

Giao thức PROXY phải được bật trước đó bằng cách đặt tham số

options VFS_AIO
73 trong lệnh nghe

Cổng
aio threads=pool$disk;
72client từ tiêu đề giao thức PROXY (1. 11. 0)

Giao thức PROXY phải được bật trước đó bằng cách đặt tham số

options VFS_AIO
73 trong lệnh nghe

aio threads=pool$disk;
74địa chỉ máy chủ từ tiêu đề giao thức PROXY (1. 17. 6)

Giao thức PROXY phải được bật trước đó bằng cách đặt tham số

options VFS_AIO
73 trong lệnh nghe

Cổng máy chủ
aio threads=pool$disk;
76 từ tiêu đề giao thức PROXY (1. 17. 6)

Giao thức PROXY phải được bật trước đó bằng cách đặt tham số

options VFS_AIO
73 trong lệnh nghe

aio threads=pool$disk;
78
location /video/ {
    aio            on;
    directio       512;
    output_buffers 1 128k;
}
64TLV từ tiêu đề Giao thức PROXY (1. 23. 2).
aio threads=pool$disk;
80 có thể là tên loại TLV hoặc giá trị số của nó. Trong trường hợp sau, giá trị là hệ thập lục phân và phải có tiền tố là
aio threads=pool$disk;
81
aio off;
26
SSL TLV cũng có thể được truy cập bằng tên loại TLV hoặc giá trị số của nó, cả hai đều có tiền tố là
aio threads=pool$disk;
82
aio off;
27

Các tên loại TLV sau đây được hỗ trợ

  • aio threads=pool$disk;
    
    83 (
    aio threads=pool$disk;
    
    84) - giao thức tầng trên được sử dụng qua kết nối
  • aio threads=pool$disk;
    
    85 (
    aio threads=pool$disk;
    
    86) - giá trị tên máy chủ lưu trữ được chuyển bởi ứng dụng khách
  • aio threads=pool$disk;
    
    87 (
    aio threads=pool$disk;
    
    88) - id kết nối duy nhất
  • aio threads=pool$disk;
    
    89 (
    aio threads=pool$disk;
    
    90) - tên của không gian tên
  • options VFS_AIO
    
    70 (
    aio threads=pool$disk;
    
    92) - cấu trúc SSL TLV nhị phân

Các tên loại SSL TLV sau đây được hỗ trợ

  • aio threads=pool$disk;
    
    93 (
    aio threads=pool$disk;
    
    94) - Phiên bản SSL được sử dụng trong kết nối máy khách
  • aio threads=pool$disk;
    
    95 (
    aio threads=pool$disk;
    
    96) - Chứng chỉ SSL Tên chung
  • aio threads=pool$disk;
    
    97 (
    aio threads=pool$disk;
    
    98) - tên của mật mã được sử dụng
  • aio threads=pool$disk;
    
    99 (
    kldload aio
    
    000) - thuật toán được sử dụng để ký chứng chỉ
  • kldload aio
    
    001 (
    kldload aio
    
    002) - thuật toán khóa công khai

Ngoài ra, tên loại SSL TLV đặc biệt sau được hỗ trợ

  • kldload aio
    
    003 - kết quả xác minh chứng chỉ SSL của ứng dụng khách,
    kldload aio
    
    004 nếu ứng dụng khách xuất trình chứng chỉ và chứng chỉ đó đã được xác minh thành công, nếu không thì khác 0

Giao thức PROXY phải được bật trước đó bằng cách đặt tham số

options VFS_AIO
73 trong lệnh nghe

kldload aio
006giống như
aio threads=pool$disk;
39
aio off;
55một tên đường dẫn tuyệt đối tương ứng với giá trị của chỉ thị gốc hoặc bí danh cho yêu cầu hiện tại, với tất cả các liên kết tượng trưng được phân giải thành đường dẫn thực
kldload aio
009địa chỉ máy khách
kldload aio
010cổng máy khách
kldload aio
011tên người dùng được cung cấp cùng với Xác thực cơ bản
kldload aio
012dòng yêu cầu gốc đầy đủ
aio off;
85nội dung yêu cầu

Giá trị của biến được cung cấp ở các vị trí được xử lý bởi các lệnh proxy_pass, fastcgi_pass, uwsgi_pass và scgi_pass khi nội dung yêu cầu được đọc vào bộ nhớ đệm

aio off;
77tên tệp tạm thời với cơ quan yêu cầu

Khi kết thúc quá trình xử lý, tệp cần được xóa. Để luôn ghi nội dung yêu cầu vào tệp, client_body_in_file_only cần được bật. Khi tên của một tệp tạm thời được chuyển trong một yêu cầu được ủy quyền hoặc trong một yêu cầu tới máy chủ FastCGI/uwsgi/SCGI, việc chuyển nội dung yêu cầu sẽ bị vô hiệu hóa bởi proxy_pass_request_body tắt, fastcgi_pass_request_body tắt, uwsgi_pass_request_body tắt hoặc scgi_pass_request_body tắt tương ứng

kldload aio
015“
kldload aio
016” nếu một yêu cầu đã hoàn thành hoặc một chuỗi trống nếu không thì_______1017đường dẫn tệp cho yêu cầu hiện tại, dựa trên chỉ thị gốc hoặc bí danh và yêu cầu URI
kldload aio
018mã định danh yêu cầu duy nhất được tạo từ 16 byte ngẫu nhiên, ở dạng thập lục phân (1. 11. 0)______1019độ dài yêu cầu (bao gồm dòng yêu cầu, tiêu đề và nội dung yêu cầu) (1. 3. 12, 1. 2. 7)
kldload aio
020phương thức yêu cầu, thường là “
aio threads=pool$disk;
959” hoặc “
options VFS_AIO
24”thời gian xử lý yêu cầu tính bằng giây với độ phân giải mili giây (1. 3. 9, 1. 2. 6); . 13. 2);

Tính toán một giá trị của biến này thường yêu cầu một cuộc gọi hệ thống. Để tránh cuộc gọi hệ thống, lệnh nghe phải chỉ định địa chỉ và sử dụng tham số

options VFS_AIO
87

kldload aio
033tên của máy chủ đã chấp nhận yêu cầu_______1034cổng của máy chủ đã chấp nhận yêu cầu
kldload aio
035giao thức yêu cầu, thường là “
kldload aio
036”, “
kldload aio
037” hoặc “HTTP/2. 0”
kldload aio
038trạng thái phản hồi (1. 3. 2, 1. 2. 2)
kldload aio
039,
kldload aio
040,
kldload aio
041,
kldload aio
042thông tin về kết nối TCP của máy khách; . 3. 12, 1. 2. 7)giờ địa phương ở Định dạng nhật ký chung (1. 3. 12, 1. 2. 7) ______654URI hiện tại được yêu cầu, đã chuẩn hóa

Giá trị của

aio threads=pool$disk;
54 có thể thay đổi trong quá trình xử lý yêu cầu, e. g. khi thực hiện chuyển hướng nội bộ hoặc khi sử dụng tệp chỉ mục