2012-04-19 36 views
8

Vì vậy, tôi đang chơi xung quanh với xương sống và đã nhận được để đặt nơi tải các trang trực tiếp sử dụng pushState không hoạt động đúng. nếu tôi cố truy cập my.url.com/login, nó sẽ cho tôi một trang không tìm thấy mà nó nên vì nó không tồn tại trực tiếp. Tôi có quy tắc viết lại sau đây:Backbone.js và mod viết lại

RewriteEngine On 
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f 
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d 
RewriteRule (.*) index.html [L,QSA] 

hoi điều này dường như không hoạt động (nghĩ rằng tôi nhận được yêu cầu xấu thay vì không tìm thấy). Làm thế nào tôi có thể nhận được pushState url để tải đúng với mod viết lại?

Trả lời

0

Đây thực sự là lần đầu tiên tôi đọc API lịch sử mới và cách Backbone sử dụng nó - những thứ khá thú vị.

Để giải quyết vấn đề Yêu cầu không hợp lệ của bạn, tất cả những gì bạn cần làm là thêm / trước index.html. Kết thúc của tôi chuyển hướng chính xác trong nội bộ và chuyển vào chuỗi truy vấn như bạn mong đợi.

RewriteEngine On 
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f 
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d 
RewriteRule (.*) /index.html [L,QSA]