I found a bunch of examples on the web of Apache rewrite rules that people are using for AJAX-based HTML5-history-using sites. All of them didn’t work for me. I don’t know why. But I thought it was Ember’s fault. It wasn’t. So I spun my wheels for a while blaming the router. It wasn’t. It’s just that there are some strange examples of rewrite rules on the web for AJAX-based HTML5-history-using sites. Anyway, I’m posting so nobody else gets caught up blaming Ember’s router. We can blame the router for other things JK: I’m in love with Ember, so I can tease. Maybe this will help someone else who’s just getting started.
Below is what worked for me. I wanted to send every request for URLs to index.html, except for certain subdirectories (js, css, img, svc). If you do this in the root of your Apache config, you might need to specify a forward slash. If you don’t use Apache, then you don’t care .
Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteRule ^(js|css|img|svc)($|/) - [L] RewriteRule ^(.*)$ index.html [L]