例如,我有一个网站 domain.com。我有带有 pushstate 和 fallback 的backbone.js,当我转到 domain.com/about 时,它会加载 index.html 页面并将 pushstates 设置为 about。一切正常。但是,如果我想转到一个目录,其中有一个页面,例如:www.domain.com/bio/moreinfo,它不起作用并抛出一个无效页面。如果我在 IE 中做它工作正常。我的 htaccess 文件有以下内容:
RewriteEngine on
# html5 pushstate (history) support:
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !index
RewriteRule (.*) index.html [L]
</ifModule>
如果我直接导航到 domain.com/bio/moreinfo 页面,它就会出错(我认为是因为我的服务器想要转到 bio 目录?或者我可能需要以不同的方式实际控制主干中的路由?它只是在 bangs 上工作所以它必须是一些奇怪的推送状态目录的东西,其中 #bio/info 与 apache 不一样 /bio/info 。感谢任何帮助。