Nếu bạn muốn định cấu hình cục bộ này trên OS X 10.8 phục vụ Angular với Apache thì bạn có thể tìm thấy những điều sau trong tệp .htaccess của mình giúp:
<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>
Tùy chọn + FollowSymlinks nếu không được đặt có thể cung cấp cho bạn một lỗi bị cấm trong nhật ký như vậy:
Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden
Cơ sở Rewrite là bắt buộc nếu không các yêu cầu sẽ được giải quyết đến root máy chủ của bạn, theo mặc định, đó không phải là thư mục dự án của bạn trừ khi bạn đã cấu hình cụ thể vhost của mình, vì vậy bạn cần đặt đường dẫn để yêu cầu tìm thấy thư mục gốc của dự án. Ví dụ trên máy của tôi, tôi có thư mục / Users / me / Sites nơi tôi giữ tất cả các dự án của mình. Giống như OS X cũ được thiết lập.
Hai dòng tiếp theo nói một cách hiệu quả nếu đường dẫn không phải là thư mục hoặc tệp, vì vậy bạn cần đảm bảo rằng bạn không có tệp hoặc thư mục giống như đường dẫn tuyến ứng dụng của bạn.
Điều kiện tiếp theo cho biết nếu yêu cầu không kết thúc bằng phần mở rộng tệp được chỉ định, hãy thêm những gì bạn cần vào đó
Và [L] cuối cùng đang nói để phục vụ tệp index.html - ứng dụng của bạn cho tất cả các yêu cầu khác.
Nếu bạn vẫn gặp sự cố thì hãy kiểm tra nhật ký apache, nó có thể sẽ cung cấp cho bạn các gợi ý hữu ích:
/private/var/log/apache2/error_log