Giải pháp tốt hơn:
location ~ ^/phpmyadmin(?:/(.*))?$ {
alias /home/phpmyadmin/$1;
}
Đảm bảo rằng máy chủ có quyền /home/phpmyadmin
trước.
Giải thích về sự khác biệt với câu trả lời được chấp nhận:
Đó là tất cả về các biểu thức thông thường .
Trước hết, ^
char có nghĩa là bạn muốn khớp từ đầu chuỗi chứ không phải ở đâu đó ở giữa. Ở $
cuối có nghĩa là khớp với cuối chuỗi.
Nhóm (?:)
có nghĩa là không bắt giữ - chúng tôi không muốn nó trong kết quả chụp, nhưng chúng tôi muốn nhóm đơn giản một số ký tự. Chúng tôi nhóm nó như thế này, vì chúng tôi muốn /
char là một phần không quan trọng của con đường con, và không phải là một phần quan trọng của con đường cha mẹ.