2016-06-10 131 views
0

我做了一個小型的angular2路由應用。 'npm start'時它工作正常。angular2路由在apache的深度鏈接

但是,只要我將它部署到apache,每當我嘗試通過在瀏覽器地址欄中鍵入來手動更改路由,它都會顯示錯誤。

我試過在Angular2 routing/deep linking not working with Apache 404處給出的解決方案,但它在手動更改路由時仍然不起作用。

我做了一個我的問題的小屏幕錄像。如果有人能幫助我。 https://youtu.be/a7oDW3KsYCU

感謝

[編輯] 我的.htaccess是

<IfModule mod_rewrite.c> 
    Options Indexes FollowSymLinks 
    RewriteEngine On 
    RewriteBase /angulardeploy2/ 
    RewriteRule ^index\.html$ - [L] 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule . /index.html [L] 
</IfModule> 

如何修改它。

+0

http://krasimirtsonev.com/blog/article/apache-htaccess-for-html5-push-state-manipulations,http://stackoverflow.com/questions/14034082/httpd-conf-and- html5-pushstate –

+0

我編輯了我的問題,如何更改我的.htaccess文件。我不知道Apache的配置。 – raju

+0

聽起來更像是一個Apache問題,而不是一個角度問題。我會修改標籤以獲得正確人員的關注。 –

回答

0

只要啓用了mod_rewrite,src/.htaccess中的該設置應該可以工作。

RewriteEngine On 
RewriteRule ^index\.html$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.html [L] 

,不要忘了,包括在被部署捆綁.htaccess文件,你可以做到這一點的文件註冊爲.angular-cli.json的資產。

"apps": [ 
    { 
     "root": "src", 
     "outDir": "dist", 
     "assets": [ 
     "assets", 
     "favicon.ico", 
     ".htaccess" 
     ],