Angular JS编码的URL显示404 page
Angular JS Encoded URL shows 404 Pag
我已经创建了AngularJS应用程序。
使用下面的URL可以正常工作:
http://localhost/AngularDemo/about
如果我像下面这样修改上面的URL,它会把我带到一个404页面:
http://localhost/AngularDemo%2Fabout
我对。htaccess文件
做了一些修改RewriteEngine on
# Don't rewrite files or directories
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
RewriteRule ^ - [L]
# Rewrite everything else to index.html to allow html5 state links
RewriteRule ^ index.html#! [L]
这是默认的Apache行为。URL编码斜杠(即。url路径中的%2F
)将隐式触发系统生成的 404。这被认为是一个"安全特性"。
如果需要在URL中明确允许编码斜杠,那么您可以在服务器配置中启用此功能:
AllowEncodedSlashes On
参考:
https://httpd.apache.org/docs/2.4/mod/core.html allowencodedslashes
然而,这通常不应该是一个问题。"User-agents"不应该以这种方式编码URL。由一些用户代理,如Linked In…
/AngularDemo%2Fabout
可能与/AngularDemo/about
是不同的URL
我解决了以下代码。你可以在app.js文件中写
$locationProvider.hashPrefix('');
相关文章:
- 从桌面读取python文件时高亮显示代码
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 如何在生成下载文件时显示加载动画
- React重新渲染但未显示正确的组件
- nodejs-expressjs上传图像并显示它们
- 使用JSP从服务器检索和显示图像
- 音频控件在mouseover上显示,在mouseout上淡出
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- 使用电话间隙在Android应用程序中显示SQL Lite的数据
- 显示5秒后隐藏潜水
- 画廊图像未显示
- 不显示带有本地json文件数据的谷歌地图脚本
- 如何将json数据显示为html
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 高亮显示时编辑文本大小和颜色
- AngularJS:路由到/page/:id并显示id'
- 自动突出显示当前的url(即使在/page/x)
- Angular JS编码的URL显示404 page
- 数据表单$scope在Angular的view (page)中不显示