Điểm:0

Nginx định cấu hình ghi lại vị trí cho tất cả các thư mục con

lá cờ cn

Câu hỏi này tiếp tục theo nhiều cách từ một cái trước Tôi đã hỏi - và cuối cùng lại tự trả lời. Một bản tóm tắt ngắn gọn về vấn đề tôi mô tả ở đó và giải pháp của tôi cho nó

  • Tôi cần thực hiện các hành động mặc định khác nhau khi có nỗ lực truy cập các tệp trong thư mục con tùy thuộc vào người đang cố gắng truy cập

aa

  1. Một ứng dụng web "back-office" trong trường hợp đó tệp được phân phối nếu nó tồn tại hoặc một "sơ khai" được tạo và phản hồi lại nếu nó không tồn tại
  2. Để đáp lại các yêu cầu từ ứng dụng điện thoại, OTH, tôi muốn gửi tệp, nếu tệp tồn tại hoặc HTTP 404 nếu tệp không tồn tại

Giải pháp tôi đã tìm ra như sau

  • Tạo một liên kết tượng trưng đến thư mục được đề cập ln -s /đường dẫn/đến/thư mục /đường dẫn/đến/bo_thư mục tiền tố ở đâu bo_ trên liên kết tượng trưng là viết tắt của back-office
  • Khi tìm nạp tệp từ ứng dụng, chỉ cần cố gắng tiếp cận chúng trực tiếp dưới dạng /path/to/folder/file.name.extn trong trường hợp đó Nginx sẽ giải quyết việc gửi lại 404 hoặc tệp, nếu nó cho là đúng
  • Khi tìm nạp tệp để chỉnh sửa trong bộ backoffice, hãy truy cập chúng dưới dạng /path/to/bo_folder/file.name.extn

Khối cấu hình Nginx sau đây

vị trí/đường dẫn/đến/bo_folder
{
 add_header Access-Control-Allow-Origin *;
 viết lại ^(.*)$ /path/to/folder/index.php?$1 cuối cùng;
}

Vấn đề mà tôi hiện đang cố gắng tìm một giải pháp nhẹ nhàng hơn là vấn đề này - tôi không chỉ có một thư mục như vậy mà là cả một chuỗi chúng /đường dẫn/đến/thư mục_1, /đường dẫn/đến/thư mục_2... /đường dẫn/đến/thư mục_n

Trong khi tôi có thể đưa vào địa điểm các khối cho mỗi thư mục như vậy có thể là tẻ nhạt và dễ bị lỗi. Gần như chắc chắn có một cách để viết lại một thư mục tổng quát hơn, tức là trong /đường dẫn/đến thay vì cho từng thư mục con riêng lẻ.

Có một sự phức tạp nhỏ ở đây - tôi không thể giải quyết vấn đề này bằng cách viết lại thành /path/to/index.php vì nội dung sơ khai mà tôi cần gửi lại khá khác nhau tùy thuộc vào thư mục con chứa nội dung đó.

Kiến thức khá sơ sài của tôi về cấu hình Nginx cho phép tôi xuống đây. Điều này có thể giải quyết như thế nào?

djdomi avatar
lá cờ za
tại sao không chỉ sử dụng tên miền phụ?
lá cờ cn
Bạn có thể xây dựng? Tôi không chắc tôi hiểu ý của bạn
djdomi avatar
lá cờ za
câu hỏi của tôi là, nó có phải là một đường dẫn cụ thể hay nó có thể được thay thế bằng tên miền phụ không?
lá cờ cn
À, vâng - Tôi hiểu ý của bạn bây giờ. Một tên miền phụ cũng sẽ hoạt động tốt, ví dụ: backoffice.example.com. Tôi sẽ phải lấy chứng chỉ Let's Ecrypt mới cho nó nhưng điều đó không sao cả. Tuy nhiên, tôi vẫn chưa hiểu rõ về cách viết các khối cấu hình nginx để cố gắng lấy các tệp từ, chẳng hạn như `backoffice.example.com/folder/subfolder` được chuyển hướng đến `backoffice.example.com/folder/subfolder /index.php` **KHÔNG** viết các khối cấu hình riêng biệt cho mỗi thư mục.
djdomi avatar
lá cờ za
tốt, vui lòng cập nhật câu hỏi của bạn, nó vẫn chưa cụ thể - có thể với một ví dụ chính xác - và nhắc nhở, đừng bao giờ viết ở đây thông tin như vậy hãy cập nhật câu hỏi bằng cách chỉnh sửa nó

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