目前,我的角度应用在“http://localhost”根或索引页面中运行apache服务器,但刷新内页“http://localhost/dms-data/summary-of-findings”后显示浏览器
未找到
在此服务器上找不到请求的网址/ dms-data / summary-of-findings。
本地主机端口80的Apache / 2.4.9(Win32)PHP / 5.5.12服务器
我的浏览器中显示此消息 我的index.html基础href是
<base href="http://localhost/">
答案 0 :(得分:1)
这是因为您使用HTML pushState作为位置策略,因此当您从浏览器刷新时,浏览器会将您的路由页面的请求发送到apache服务器。由于apache服务器显示404错误,因此不知道此内部路由是否有角度。
有两种可能的解决方案:
将后备页面定义为index.html :您需要在服务器中对此进行配置,因为发送到您的服务器的任何未知页面请求(您的路由请求)都将重定向到你的主要HTML。 index.html(用于配置服务器的See this link)
使用基于哈希的位置策略:使用此功能,您将不需要任何服务器配置。此外,您的路由页面网址将类似于localhost /#/ route1。如果你正在建立一个网站,那么它也可能妨碍SEO。 (See this link了解更多信息)
答案 1 :(得分:0)
您可以在项目目录中创建 .htaccess 文件,并将此代码放入.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>
您可以检查在apache服务器Deploy step
上部署角度构建的所有步骤