Cách khắc phục NGINX 403 Forbidden

How Fix Nginx 403 Forbidden



Khi xử lý các máy chủ và tài nguyên web, chúng tôi gặp phải các lỗi mà chúng tôi gây ra khi thực hiện bảo trì và cấu hình. Khi gặp những lỗi như vậy, bạn cần chẩn đoán và khắc phục sự cố càng nhanh càng tốt để tránh thời gian chết và mất dữ liệu.

Hướng dẫn nhanh này sẽ giải quyết một lỗi phổ biến khi làm việc với máy chủ NGINX (403 Forbidden), nguyên nhân và cách khắc phục lỗi.







Lỗi Nginx 403 là gì?

Lỗi Nginx 403 Forbidden là mã trạng thái được tạo và hiển thị cho người dùng khi khách hàng cố gắng truy cập vào một phần của máy chủ web không đủ quyền. Ví dụ: NGINX bảo vệ danh sách thư mục và sẽ dẫn đến lỗi 403.





Nguyên nhân phía máy chủ gây ra lỗi Nginx 403

Trước khi bắt đầu, chúng ta cần lưu ý rằng lỗi có thể đến từ phía máy khách chứ không phải từ chính máy chủ. Trước tiên, chúng tôi sẽ giải quyết các lỗi phía máy chủ, sau đó là các lỗi phía máy khách.





Nguyên nhân 1: Tệp chỉ mục không chính xác

Nguyên nhân đầu tiên và phổ biến của lỗi NGINX 403 Forbidden là cấu hình tệp chỉ mục không chính xác.

Tệp cấu hình Nginx chỉ định tệp chỉ mục nào sẽ tải và thứ tự tải chúng. Tuy nhiên, nếu các tệp chỉ mục được chỉ định không có trong thư mục, Nginx sẽ trả về lỗi 403 bị cấm.



Ví dụ: cấu hình bên dưới xác định các tệp chỉ mục và cách chúng nên được tải

vị trí/ {
index index.html index.htm index.html ind.php;
}

Một cách để giải quyết vấn đề này là thêm tệp chỉ mục được chỉ định trong tệp cấu hình hoặc thêm tệp chỉ mục có sẵn vào tệp cấu hình.

Một cách khác để giải quyết vấn đề này là cho phép Nginx liệt kê các thư mục nếu tệp chỉ mục không khả dụng. Kích hoạt mô-đun này bằng cách thêm mục nhập sau vào tệp cấu hình.

vị trí/ {
autoindex trên;
autoindex_exact_size on;
}

GHI CHÚ: Chúng tôi không khuyến nghị phương pháp này trên các máy chủ có thể truy cập công cộng.

Để biết thêm thông tin về cách phân phát nội dung tĩnh, hãy xem xét nguồn tài liệu Nginx được cung cấp bên dưới:

https://docs.nginx.com/nginx/admin-guide/web-server/serving-static-content/

Nguyên nhân 2: Đặt quyền không chính xác

Lỗi cấm Nginx 403 cũng có thể do các tệp và thư mục đặt quyền không chính xác. Để Nginx có thể phục vụ thành công một tệp và tài nguyên cụ thể cho máy khách, Nginx cần có quyền RWX — đọc, ghi và thực thi — trên toàn bộ đường dẫn.

Để giải quyết lỗi này, hãy thay đổi quyền thư mục thành 755 và quyền tệp thành 644. Đảm bảo rằng người dùng đang chạy quy trình Nginx sở hữu các tệp. Ví dụ: đặt người dùng thành www-data:

sudo băm nhỏ -NSwww-data: www-data*

Cuối cùng, đặt quyền thư mục và tệp là:

sudo chmod 755 {cho bạn}
sudo chmod 644 {các tập tin}

Nguyên nhân từ phía khách hàng của lỗi 403

Như đã đề cập, vào những thời điểm khác, lỗi 403 có thể do người dùng gây ra thay vì do phía máy chủ. Để giải quyết các vấn đề như vậy ở phía máy khách, hãy thực hiện các thao tác sau.

  • Đảm bảo bạn đang truy cập đúng vị trí web
  • Xóa bộ nhớ cache của trình duyệt
  • Đảm bảo tường lửa hoặc proxy cho phép bạn truy cập tài nguyên web.

Phần kết luận

Hướng dẫn nhanh này đã thảo luận về nguyên nhân của lỗi bị cấm NGIX 403 và các cách khác nhau để khắc phục. Bạn nên xem lại nhật ký máy chủ trước khi thử bất kỳ phương pháp khắc phục sự cố nào.