Tôi đang cố gắng viết lại uri yêu cầu tùy thuộc vào phần mở rộng của tệp, sau đó chỉ trích xuất tên tệp từ uri và lưu trữ nó trong một thư mục khác. Vấn đề ở đây là không có biến được xác định trước cho tên tệp và các biến có sẵn uri
, request_uri
và request_filename
sẽ cung cấp đầy đủ uri.
server{
set $file_folder D:/nginx-1.0.15/imageAll/;
location ~*+.(gif|jpg)$ {
try_files $uri @imgstore;
}
location @imgstore {
proxy_pass $file_folder$request_filename;
proxy_store on;
proxy_temp_path /nginx-1.0.15/images/;
proxy_store_access user:rw group:rw all:r;
}
}
điều tốt nhất tôi có thể làm là nhận phần mở rộng .jpg hoặc .gif, khi tôi đặt $1
vào vị trí $request_filename
như thế này:
location @imgstore {
proxy_pass $file_folder$1;
}
Vì vậy, tôi muốn biết:
- Làm thế nào để có được tên tập tin từ yêu cầu?
- Đây có phải là cách đúng đắn để lưu trữ hình ảnh từ thư mục này sang thư mục khác?