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
- 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
- Để đá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?