2017-08-08 68 views
1

我有一個角應用與幾個路線的情況下重定向,例如:的.htaccess的404錯誤

/collections 
/collections/1/1 
/servers 
/servers/1 

而且我的應用程序放置在/var/www/html/myapp/MYAPP文件夾包含整個項目和指標.html文件。 在index.html文件中基地設置爲<base href="/myapp/">

,我有一個.htaccess文件這個文件夾包含重寫規則

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

當我試圖進入到http://dummydomain.com/myapp/它的正常工作中,但是當我進入到http://dummydomain.com/myapp/collections它不工作。

所以我的問題是,如何直接請求404錯誤時,我如何重定向到index.html? 謝謝!

回答

2

您的RewriteBase指令和/index.html前會將請求轉發到站點根目錄而不是當前目錄。

您可以使用:

DirectoryIndex index.html 

<IfModule mod_rewrite.c> 
    RewriteEngine On 

    RewriteRule ^index\.html$ - [L,NC] 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule . index.html [L] 
</IfModule> 
+1

真棒,它的工作!謝謝! –