【问题标题】:.htaccess rewriterule pattern Hash twitter.htaccess 重写模式 Hash twitter
【发布时间】:2015-09-27 20:08:45
【问题描述】:

我想捕捉一个包含#的链接。

考虑:

RewriteEngine On
     RewriteRule pattern target [flags]

这里的问题是模式部分。因为\# 不工作。还有其他方法可以读取/捕获传入链接中的哈希吗?

就像 twitter 一样:http://twitter/#chakku 会将您重定向到包含 #chakku 的推文。

【问题讨论】:

    标签: angularjs apache .htaccess twitter hashtag


    【解决方案1】:

    # 和它之后的所有内容都是 URL 片段,它永远不会发送到服务器。因此,apache 和 mod_rewrite 都不会知道它的存在。

    片段主要用于客户端/浏览器端,因此您可能需要类似 javascript 的东西来捕获它。

    【讨论】:

    • 嗨@jon-lin 我明白了,但考虑一下:要解决domain.com/#topic,我可以有一个像 RewriteRule ^ index.html [L] 这样的规则并在索引中.html 我在窗口加载时加载了一个脚本。我可以在哪里适当地重定向。这是处理这个问题的最佳方法吗?例如twitter.com/#JonLin 会将我重定向到该主题的页面。他们就是这样实施的吗?如果是这样,.htaccess 文件的用途是什么。
    • @Hishaam htaccess 在这里根本没有戏。在 位于 domain.com 的页面上(可能是一些 index.html 或其他东西),您有查看 URL 并解析出片段的 javascript。 htaccess 文件中的任何内容都不会帮助您处理片段。
    • 我有一个基于 AngulrJS 的项目。 htaccess 是 html5mode routeprovider 的必需品。问题是,在这个配置中,所有链接都被重定向到 index.html,并且 Angular 在内部负责路由。因此,如果我在 body 的负载上加载脚本,则其他所有路由都必须调用它。你认为这种副作用是无法避免的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-21
    • 2013-11-16
    • 1970-01-01
    • 2012-11-25
    • 2012-02-18
    相关资源
    最近更新 更多