Tôi đang cố gắng để có được nginx
để làm việc với xử lý URI pushState
dựa trên của mình rằng backbone.js
quản lý cho tôi trong một ứng dụng Javascript.Viết lại nginx cho pushState-URL
Hiện tại, truy cập URI bằng một cấp, ví dụ: example.com/users
hoạt động tốt, nhưng không phải là hai cấp hoặc sâu hơn URI, như example.com/users/all
, được đề cập trong Backbone documentation:
Ví dụ, nếu bạn có một đường/tài liệu/100, máy chủ web của bạn phải có thể để phục vụ trang đó, nếu trình duyệt truy cập URL trực tiếp
Vì vậy, là xa làm quen với các tùy chọn viết lại nginx, tôi vẫn chắc chắn rằng tôi có thể làm điều gì đó như rewrite^/index.html;
để chuyển hướng tất cả mọi thứ để index.html
của tôi , nhưng loosi ng ra trên bất kỳ tệp tĩnh cuối cùng nào (hình ảnh, javascript & css) được lưu trữ trên cùng một máy chủ mà tôi cần để có thể truy cập.
Vì vậy, tôi nên làm gì thay vì cấu hình hiện tại, được hiển thị bên dưới, để thực hiện công việc này?
server {
listen 80;
server_name example.com;
location/{
root /var/www/example.com;
try_files $uri /index.html;
}
}
đề nghị đầu tiên của bạn dường như đòi hỏi phải có dấu gạch chéo ... viết lại hoạt động khi tôi đi đến "/ search /" nhưng không phải "/ tìm kiếm" – andrhamm
bạn sẽ giải quyết nó như thế nào nếu bạn không có dấu gạch chéo? –
Có lẽ một regexp chấp nhận bất cứ điều gì trừ index.html? –