当前位置:首页 > JavaScript

js实现301

2026-04-06 08:06:54JavaScript

使用 window.location 实现 301 重定向

在 JavaScript 中可以通过修改 window.location 实现页面跳转,但默认是 302 临时重定向。要模拟 301 永久重定向,通常需要服务器配置,但纯前端可以通过以下方式实现跳转:

window.location.replace("https://example.com/new-url");

replace() 方法不会在历史记录中留下原始页面,行为更接近 301 重定向的效果。

通过 HTTP 响应头实现 301 重定向

真正的 301 重定向需要服务器端配置。以下是常见服务器配置示例:

Node.js Express 示例:

app.get('/old-url', (req, res) => {
  res.status(301).redirect('https://example.com/new-url');
});

Apache 服务器 (.htaccess):

Redirect 301 /old-path https://example.com/new-path

Nginx 配置:

server {
    listen 80;
    server_name example.com;
    return 301 https://example.com$request_uri;
}

301 与 302 重定向的区别

  • 301 重定向:永久移动,搜索引擎会更新索引
  • 302 重定向:临时移动,搜索引擎会保留原地址

注意事项

前端实现的跳转无法真正返回 301 状态码,对 SEO 不友好。重要重定向应始终通过服务器配置实现。

对于单页应用 (SPA),可以使用路由库实现客户端跳转:

js实现301

// React Router 示例
<Redirect from="/old" to="/new" status={301} />

标签: js
分享给朋友:

相关文章

vue.js实现轮播

vue.js实现轮播

Vue.js 实现轮播功能 使用第三方库(推荐) Vue.js 生态中有许多成熟的轮播组件库,例如 vue-awesome-swiper 或 swiper,它们功能丰富且易于集成。 安装 swipe…

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js实现祖玛

js实现祖玛

实现祖玛游戏的核心思路 祖玛游戏的核心玩法是发射彩色珠子,形成三个或以上相同颜色的珠子即可消除。以下是使用JavaScript实现的基本框架。 游戏初始化 创建画布并初始化游戏状态: const…

js实现授权

js实现授权

授权流程设计 授权流程通常涉及前端与后端的交互,常见方案包括OAuth2.0、JWT等。以JWT为例的典型流程: 用户提交凭证(如用户名密码)到认证服务 服务端验证通过后生成包含用户信息的J…

js实现搜索

js实现搜索

实现搜索功能的方法 在JavaScript中实现搜索功能可以通过多种方式完成,以下是几种常见的实现方法。 使用数组的filter方法 通过数组的filter方法可以筛选出符合条件的数据项。假设有一个…