【问题标题】:How redirect specific url using htaccess rewrite rules如何使用 htaccess 重写规则重定向特定 url
【发布时间】:2013-10-19 23:58:34
【问题描述】:

如何重定向此 URL:

http://domain.com/index.html#!

致这个:

http://domain.com/

使用 htaccess 重写规则?

【问题讨论】:

  • 你试过什么? # 之后的所有内容都不会在请求中发送到服务器。 #! 建议您使用某种 ajax 框架。如果您阅读文档和/或示例,将 index.php 重定向到 / 应该很简单。

标签: .htaccess


【解决方案1】:

对于/index.html/,您需要:

RewriteEngine On
RewriteCond %{THE_REQUEST} \ /+index\.html
RewriteRule ^ / [R=301,L]

这也可以顺便修复 URL 的 #! 部分,但 URL 的那部分称为 片段,并由客户端的某些东西添加到那里,它保持不变在客户端,它从不传输到服务器。因此,没有任何 htaccess 或服务器端会知道它的存在。如果要删除它,则需要弄清楚将其添加到那里的脚本并删除该脚本。如果您只是添加 javacsript 以将其删除,则其他脚本可能会无意中将其添加回来。

if (location.href.indexOf("#") > -1) {
    location.assign(location.href.replace(/\/?#/, "/"));
}

【讨论】:

    猜你喜欢
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-01
    • 2016-06-08
    • 1970-01-01
    相关资源
    最近更新 更多