Omi*_*gar 2 javascript backbone.js
我一直在观看Backbone.js上PeepCode的截屏视频,并用它完成了编码.
我已经完成了第一部分,现在,我有一个像这样的路由器:
routes: {
'': 'home',
'blank': 'blank'
}
Run Code Online (Sandbox Code Playgroud)
我也有这个启动应用程序:
$(function(){
window.App = new BackboneTunes();
Backbone.history.start({pushState: true});
});
Run Code Online (Sandbox Code Playgroud)
现在,如果我在URL栏中键入http:// localhost:9292 /#blank,它会将我重定向到http:// localhost:9292/blank,但如果我直接键入http:// localhost:9292/blank,给出一条404消息.
这是正常的还是我在这里有错误?
提前致谢.
对于那些认为以上的回答是不够的:你想要做什么是使你的服务器来重新路由所有的URL到您的index.html页面,Backbone.js的会照顾路由的为您服务.以下步骤将允许您在地址栏内保持URL相同的同时执行此操作.
如果您使用Apache作为容器,则需要在应用程序的.htaccess文件中启用mod_rewrite模块.
在你的httpd文件里面:
1)确保将文档根目录的"覆盖"命令启用为"覆盖所有"而不是"覆盖无"
2)通过取消注释该行来启用mod_rewrite.so模块:
LoadModule rewrite_module modules/mod_rewrite.so
在应用程序的.htaccess文件中(如果没有,请创建一个):
1)如果已经编写了IfModule mod_rewrite.c模块,则将这些行复制到其中一个模块中:
RewriteEngine On
RewriteRule ^/[a-zA-Z0-9] + [/]?$ /index.html [QSA,L]
你应该有这样的东西:
<IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^/[a-zA-Z0-9]+[/]?$ /index.html [QSA,L] </IfModule>
编辑
注意:在Apache 2.2+中,您现在可以使用FallbackResource而不是mod_rewrite,它需要更少的行并完成相同的操作.
| 归档时间: |
|
| 查看次数: |
2003 次 |
| 最近记录: |