使用历史记录时如何避免 404 API HTML5

How avoid 404 when using history API HTML5

SennaJS 和 EmberJS 中都使用 History API。 当 URL 粘贴到地址栏时,这些库如何避免 404。

您必须 mod 验证您的网络服务器并启用 mod_rewrite。然后服务器将接收请求并将其转发到您的索引文件,ember 和 SennaJS 将按照您的预期解析 URL。

对于 Apache,您需要启用 mod 重写和编辑您的虚拟主机:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.html$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.html [L]
 </IfModule>

和 nginx:

rewrite ^(.+)$ /index.html last;

参见:http://readystate4.com/2012/05/17/nginx-and-apache-rewrite-to-support-html5-pushstate/