Jeśli chcesz to skonfigurować lokalnie w systemie OS X 10.8 obsługującym Angular z Apache, możesz znaleźć następujące informacje w pliku .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>
Opcje + FollowSymlinks, jeśli nie jest ustawiony, może spowodować niedozwolony błąd w logach:
Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden
Wymagana jest przepisz bazę, w przeciwnym razie żądania zostaną rozstrzygnięte na twoim głównym katalogu serwera, który lokalnie domyślnie nie jest katalogiem projektu, chyba że specjalnie skonfigurowałeś vhosty, więc musisz ustawić ścieżkę, aby żądanie znalazło katalog główny projektu. Na przykład na moim komputerze mam katalog / Users / me / Sites, w którym przechowuję wszystkie moje projekty. Podobnie jak stary system OS X.
Następne dwa wiersze skutecznie mówią, jeśli ścieżka nie jest katalogiem lub plikiem, więc musisz upewnić się, że nie masz plików ani katalogów identycznych ze ścieżkami tras aplikacji.
Następny warunek mówi, że jeśli żądanie nie kończy się na określonych rozszerzeniach plików, dodaj tam, czego potrzebujesz
Ostatni [L] mówi, że ma obsługiwać plik index.html - twoją aplikację dla wszystkich innych żądań.
Jeśli nadal masz problemy, sprawdź dziennik Apache, prawdopodobnie da ci przydatne wskazówki:
/private/var/log/apache2/error_log