Якщо ви хочете налаштувати це локально на OS X 10.8, що обслуговує Angular з Apache, ви можете знайти у своєму файлі .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>
Параметри + FollowSymlinks, якщо їх не встановлено, може призвести до забороненої помилки в журналах, наприклад:
Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden
База перезапису необхідна, інакше запити будуть вирішені до кореня вашого сервера, який локально за замовчуванням не є каталогом вашого проекту, якщо ви спеціально не налаштували свої vhosts, тому вам потрібно встановити шлях, щоб запит знаходив ваш кореневий каталог проекту. Наприклад, на своїй машині у мене є каталог / Users / me / Sites, де я зберігаю всі свої проекти. Як і старі налаштування OS X.
Наступні два рядки фактично говорять, якщо шлях не є каталогом чи файлом, тому вам потрібно переконатися, що у вас немає файлів чи каталогів таких самих, як маршрути маршруту вашої програми.
Наступна умова говорить, якщо запит не закінчується вказаними розширеннями файлів, тому додайте туди, що вам потрібно
І [L] останній говорить про те, щоб обслуговувати файл index.html - ваш додаток для всіх інших запитів.
Якщо у вас все ще виникають проблеми, перевірте журнал apache, він, можливо, дасть вам корисні підказки:
/private/var/log/apache2/error_log