我正在使用Angular JS
以及cakephp
版本3.x.对于角度js状态路由的漂亮URL,我使用以下代码来实现。
在配置中添加
$locationProvider.html5Mode(true);
在Pages / home.ctp(cakephp文件中添加了base
。它就像一个index.html)
<base href="/">
它实际上有效,直到我重新加载页面。另外,我有一些控制器和动作,例如example.com/contact,example.com/work等..它提供了一个普通的php页面。
例如:
在漂亮的网址之前:
我有一个州url example.com/#/profile 我也是一个普通的php页面example.com/profile
这实际上有效,直到我添加了一个html5Mode。
添加漂亮的网址后:
Angular JS状态网址变为:example.com/profile(没关系) 但是,如果我重新加载它,它通常会抛出错误,因为它实际上正在寻找一般的MVC页面,而不是角度。
我确信与Angularjs有冲突 - Cakephp。另外我有一些身份验证,只有登录的用户才能访问某些操作,否则他们将被重定向到主页。
我尝试将服务器端代码放在.htaccess
:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
它不起作用。