如何放置JavaScript重定向代码以实现全网页自动跳转?
纯JavaScript实现全站路径重定向的解决方案
核心思路:利用服务器404错误页面统一处理所有未匹配路径
因为无法为每个可能的路径创建单独的HTML文件,最有效的方法是让服务器将所有不存在的请求都导向一个包含重定向代码的页面,具体步骤如下:
创建全局重定向页面
新建一个404.html文件,写入重定向JS代码(可优化为包含查询参数的完整跳转):<!DOCTYPE html> <html> <body> <script> // 拼接目标域名、当前路径和查询参数,实现完整跳转 const targetUrl = "https://example2.com" + document.location.pathname + document.location.search; // 可选:添加手动跳转提示,提升用户体验 document.body.innerHTML = `正在跳转到目标页面... 如果未自动跳转,请<a href="${targetUrl}">点击这里</a>`; // 执行跳转 location.href = targetUrl; </script> </body> </html>配置服务器指向自定义404页面
根据你的服务器类型,设置所有404请求都加载上面的404.html:- Apache服务器:在站点配置文件或根目录的
.htaccess(仅用于配置404,不是重定向)中添加:ErrorDocument 404 /404.html - Nginx服务器:在站点配置的
server块中添加:error_page 404 /404.html;
- Apache服务器:在站点配置文件或根目录的
关键注意事项
- 确保服务器根目录下没有与用户访问路径同名的文件或文件夹,否则服务器会直接返回对应文件,不会触发404页面。
- 该方案仅依赖JS跳转,完全符合不使用服务器端重定向的需求,所有访问任意路径的请求都会通过404页面执行跳转逻辑。
内容的提问来源于stack exchange,提问作者Genisys Mythic
相关产品推荐
相关产品推荐

