You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法从普通HTML网站跳转至Angular页面,请求技术支持

问题描述

我有一个简单的HTML网站,想要点击网站内的按钮跳转至Angular网站。目前HTML网站与Angular构建产物均部署在Hostinger同一服务器上。

用于跳转的HTML按钮代码如下:

<header class="manpower_inquiry">
        <div class="manpower_inquiry__text-box">
            <h1 class="heading-primary">
                <span class="heading--top">manpower supply</span>
                <br/>
                <!-- <span class="heading-primary--sub--service">Leading Retail security providers
                </span> -->
            </h1>

            <a href="../inquiry/MAN_P/index.html" class="btn btn--white btn--animated">Inquiry</a>
        </div>
  </header>

相关场景信息:

  • Hostinger服务器上,Angular构建产物存放在inquiry/MAN_P目录下,包含index.html及各类编译后资源文件
  • 发起跳转的HTML页面位于Angular目录的上级层级目录中
  • 点击按钮后出现404页面未找到错误
  • Angular项目已配置默认路由,指向ManpowerComponent
解决方案

1. 修正跳转路径

Angular单页应用无需指定index.html,直接指向目录即可,同时优先使用绝对路径避免层级混淆:

  • 修改链接为绝对路径(推荐):
<a href="/inquiry/MAN_P/" class="btn btn--white btn--animated">Inquiry</a>
  • 若坚持用相对路径,确认层级关系后调整为:
<a href="../inquiry/MAN_P/" class="btn btn--white btn--animated">Inquiry</a>

2. 配置服务器支持Angular路由

Angular路由依赖前端路由机制,直接访问子路由或刷新页面会触发服务器404,需在Hostinger中配置重定向规则:

  1. 进入inquiry/MAN_P目录,创建或编辑.htaccess文件
  2. 添加以下规则:
RewriteEngine On
RewriteBase /inquiry/MAN_P/
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /inquiry/MAN_P/index.html [L]

该规则会将所有非文件/目录的请求转发到Angular入口文件,确保路由正常工作。

3. 验证构建产物完整性

检查inquiry/MAN_P目录下是否包含完整的Angular构建文件:index.html、main.*.js、polyfills.*.js、styles.*.css等,缺失文件会导致页面加载失败。

内容的提问来源于stack exchange,提问作者Ekansh Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 09:54:33