当前位置:首页 > JavaScript

js实现301

2026-03-14 14:15:16JavaScript

使用 window.location 实现 301 重定向

通过修改 window.location.hrefwindow.location.replace() 实现页面跳转。虽然这不是真正的服务器端 301 重定向,但可以模拟类似效果。

// 直接跳转(保留历史记录)
window.location.href = "https://new-url.com";

// 替换当前历史记录(更接近 301 效果)
window.location.replace("https://new-url.com");

通过 HTTP 响应实现 301 重定向

纯前端无法直接发送 301 状态码,需配合后端(如 Node.js)实现。以下是示例代码:

Express.js 示例

const express = require('express');
const app = express();

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

app.listen(3000);

原生 Node.js 示例

const http = require('http');

http.createServer((req, res) => {
  if (req.url === '/old-path') {
    res.writeHead(301, { 'Location': 'https://new-url.com/new-path' });
    res.end();
  }
}).listen(3000);

通过 <meta> 标签实现重定向

在 HTML 的 <head> 中添加 <meta> 标签,虽然不是 301,但可用于简单跳转:

js实现301

<meta http-equiv="refresh" content="0; url=https://new-url.com">

注意事项

  • 前端限制:纯 JavaScript 的 window.location<meta> 跳转不会返回 301 状态码,仅适用于客户端跳转。
  • SEO 影响:搜索引擎优化的 301 重定向需通过服务器端配置(如 Apache、Nginx 或后端代码)。
  • 缓存问题:浏览器可能缓存 301 重定向,测试时需清除缓存。

如需完整的 301 重定向,优先使用服务器配置(如 Nginx 的 return 301 或 Apache 的 Redirect 301)。

标签: js
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 实现页面跳转,这是最常用的方法。 window.location.href = 'https://…

js实现

js实现

实现 JavaScript 功能的方法 在 JavaScript 中实现特定功能通常涉及多个步骤。以下是常见的实现方法: 基础语法和变量声明 使用 let 或 const 声明变量: let co…

js实现选项卡

js实现选项卡

实现选项卡的基本思路 选项卡通常由一组标签和对应的内容面板组成。点击标签时,显示对应的内容面板,隐藏其他面板。实现这一效果需要结合HTML结构、CSS样式和JavaScript交互逻辑。 HTML结…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js实现点击显示和隐藏

js实现点击显示和隐藏

实现点击显示和隐藏的JavaScript方法 使用classList.toggle切换类名 通过添加/移除CSS类控制元素的显示与隐藏,需提前在CSS中定义隐藏样式(如display: none)。…

js实现视口

js实现视口

js实现视口检测的方法 使用JavaScript检测元素是否进入视口(viewport)可以通过Intersection Observer API或手动计算元素位置实现。以下是两种常见方法: Int…