Điểm:0

NGINX - chỉ cho phép truy cập vào URL cụ thể thông qua tên miền phụ

lá cờ us

Tôi có một trang web, nằm trên ví dụ.com/app.

Có cách nào để từ chối truy cập trực tiếp vào ví dụ.com/app và chỉ cho phép thông qua ứng dụng.example.com bằng NGINX?

lá cờ us
Vui lòng chia sẻ đầu ra của `nginx -T` để chúng tôi có thể xem cấu hình nginx đầy đủ của bạn và đưa ra câu trả lời thích hợp.
Điểm:1
lá cờ cn

trong bạn ví dụ.com người phục vụ chặn, vị trí ~ ứng dụng { từ chối tất cả; } (hoặc tương tự):

người phục vụ {
    server_name example.com;
    vị trí ~ api { từ chối tất cả; }

<cấu hình ví dụ.com>
}

người phục vụ {
    server_name api.example.com;

<cấu hình cho api.example.com>
}
Tarlan Mammadzada avatar
lá cờ us
Nhưng liệu tôi có thể truy cập example.com/api qua api.example.com không?
Paul avatar
lá cờ cn
Miễn là `api.example.com` nằm trong một khối `máy chủ` khác, vâng.
Tarlan Mammadzada avatar
lá cờ us
Bạn có thể vui lòng thêm vào câu trả lời của mình một khối máy chủ cho `api.example.com` để truy cập `example.com/api` không?
Paul avatar
lá cờ cn
Tên miền phụ và tên miền đơn giản nằm trong các khối `máy chủ` khác nhau. Họ không truy cập theo cách giống như trình duyệt. Quyền truy cập vào các thư mục và tệp trên máy chủ. Bằng cách định cấu hình các khối `máy chủ` riêng biệt cho miền và miền phụ, quyền truy cập vào các tệp sẽ dễ quản lý hơn.
Tarlan Mammadzada avatar
lá cờ us
Trong ví dụ của bạn, tôi phải chuyển hướng `api.example.com` sang `example.com/api`, vì tôi không có thư mục có tên `app` để đặt trong thư mục gốc của `server`.
Paul avatar
lá cờ cn
`location` là những gì được khách hàng yêu cầu cho `nginx`. Với lệnh `deny all;`, `nginx` sẽ không tìm kiếm `location` phù hợp. Theo như những gì thực sự có trong cấu trúc tệp máy chủ là một câu chuyện khác, bởi vì đó không phải là những gì đang được đánh giá trong trường hợp này. Ngay cả khi không có tệp hoặc thư mục có tên `api`, `nginx` vẫn sẽ phản hồi ứng dụng khách với 403.
lá cờ sv
@TarlanMammadzada Vui lòng cập nhật câu hỏi của bạn bằng cách đăng cấu hình hiện tại của bạn và đầu ra `curl` về những gì đang xảy ra và những gì bạn đang tìm kiếm. Câu trả lời này đưa ra câu trả lời chính xác mà bạn đã yêu cầu trong OP của mình. Nếu bạn có câu hỏi khác hoặc câu hỏi bổ sung, hãy đăng câu hỏi đó trong OP của bạn hoặc tạo câu hỏi mới để mọi người biết bạn đang cố gắng đạt được điều gì.

Đă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.