Điểm:0

Nginx try_file chỉ thị không hoạt động như mong đợi

lá cờ zm

Tôi đang cố hiểu tệp cấu hình Nginx. Đây là cây thư mục ứng dụng của tôi:

/ứng dụng
|-- abcd.html
|-- tập tin.php
|-- index.html
|-- index.php
|-- sss
| `--index.html
|-- style.css
`--thumb.png

Đây là cấu hình nginx thử nghiệm của tôi:

sự kiện {}
http {
        viết lại_log vào;
        error_log /var/log/nginx/localhost.error_log gỡ lỗi;
        người phục vụ {
                bao gồm mime.types;
                gốc/ứng dụng;
                nghe 8080 ;
                chỉ số index.html;
                địa điểm / {
                        try_files $uri/ =404;
                }
        }
}

Theo hiểu biết của tôi về tệp cấu hình Nginx, khi tôi yêu cầu máy chủ cục bộ:8080/, theo tài liệu try_files, nó sẽ kiểm tra tệp /, thì vì nó là một thư mục nên nó sẽ phục vụ tệp chỉ mục bên trong. Nhưng trên thực tế, nó không. tôi cũng đã thử try_files $uri =404;. Nó cũng trả về một trang 404. Nhưng khi tôi cố gắng try_files $uri $uri/ =404, nó hoạt động và nó phản hồi với tệp chỉ mục. Bất cứ ai có thể vui lòng giải thích những gì đang xảy ra?

Tôi cũng đã thử một thứ khác không hoạt động như mong đợi. Như trước đây, trong ngữ cảnh vị trí, tôi đã thử try_files /sss /sss/ =404. Tôi mong nó phục vụ tôi tệp chỉ mục bên trong sss thư mục, bất kể url yêu cầu của tôi là gì. Nhưng nó bị mắc kẹt trong một vòng lặp yêu cầu vô tận. Nó phản hồi bằng chuyển hướng 301 và yêu cầu /sss/ url. nó không giống như trường hợp trước, khi tôi sử dụng try_files $uri $uri/ =404?

Richard Smith avatar
lá cờ jp
Mô-đun [`index`](http://nginx.org/en/docs/http/ngx_http_index_module.html#index) chịu trách nhiệm xử lý các URI kết thúc bằng `/`. Và nó sẽ gây ra *chuyển hướng nội bộ* làm thay đổi giá trị của `$uri` thành `/index.html`. Đó là lý do tại sao bạn cần * both* `$uri` và `$uri/` trong câu lệnh `try_files`.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.