我想知道我做错了什么或我错过了什么。我试图使用html5mode和我的基础href作为子目录。如果我从该基地离开并重新加载,页面会尝试跳回到子目录之前。
如果这没有任何意义,请告诉我我是如何配置的......
在我的app.js文件中,我设置了:
$locationProvider.html5Mode(true)
在我的index.html文件中,在我的标记中我已设置:
<base href="/subdirectory/">
因此,如果我导航到http://url.com/subdirectory一切都很好。
如果我点击链接访问http://url.com/subdirectory/subpage,一切都很好。
但是,如果我重新加载子页面,或者,如果我尝试直接导航到该子页面,它将不会呈现。事实上,我认为浏览器认为它试图从http://url.com开始,而不是从http://url.com/subdirectory/开始
遇到类似问题的人能解释一下这个解决方案吗?
我一直把头撞在墙上。我真的很感激。谢谢!
答案 0 :(得分:0)
您必须将服务器配置为将所有请求重定向到http://url.com/subdirectory/subpage
到http://url.com/subdirectory/
指向的相同位置。
答案 1 :(得分:0)
所以这就是解决方案。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /subdirectory/index.html [NC,L]
</IfModule>