Si vous souhaitez configurer cela localement sur OS X 10.8 servant Angular avec Apache, vous trouverez peut-être ce qui suit dans votre fichier .htaccess:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteBase /~yourusername/appname/public/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(css|js|html|png|jpg|jpeg|gif|txt)
RewriteRule (.*) index.html [L]
</IfModule>
Les options + FollowSymlinks, si elles ne sont pas définies, peuvent vous donner une erreur interdite dans les journaux comme ceci:
Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden
La réécriture de la base est requise, sinon les demandes seront résolues à la racine de votre serveur qui, par défaut, n'est pas votre répertoire de projet sauf si vous avez spécifiquement configuré vos vhosts, vous devez donc définir le chemin afin que la demande trouve votre répertoire racine de projet. Par exemple sur ma machine j'ai un répertoire / Users / me / Sites où je garde tous mes projets. Comme l'ancien OS X configuré.
Les deux lignes suivantes indiquent effectivement si le chemin n'est pas un répertoire ou un fichier, vous devez donc vous assurer que vous n'avez pas de fichiers ou de répertoires identiques à ceux de vos chemins de routage d'application.
La condition suivante indique si la demande ne se termine pas avec les extensions de fichier spécifiées, alors ajoutez ce dont vous avez besoin
Et le [L] dernier dit de servir le fichier index.html - votre application pour toutes les autres demandes.
Si vous avez toujours des problèmes, consultez le journal d'apache, il vous donnera probablement des conseils utiles:
/private/var/log/apache2/error_log