【问题标题】:Remove slugs and redirect using htaccess使用 htaccess 删除 slug 并重定向
【发布时间】:2011-07-10 23:07:15
【问题描述】:

使用 .htaccess,我如何从 url 中剥离参数并将整个文件夹重定向到另一个位置?

例如,我有http://www.webbiscuit.co.uk/News.aspx/11/favicon-competition,我只想将其重定向到http://www.webbiscuit.co.uk/。

我试过了

Redirect 301 /News.aspx http://www.webbiscuit.co.uk/

但这只是剥离了News.aspx 部分,并将我重定向到

http://www.webbiscuit.co.uk/11/favicon-competition

如何剥离整个文件和 slug?

【问题讨论】:

  • 您可以使用 mod_rewrite (RewriteRule) .. 还是只需要 Redirect 指令?
  • 我认为 RewriteRule 可能没问题。

标签: .htaccess http-status-code-301


【解决方案1】:

使用 mod_rewrite(? 在这里可能不需要):

RewriteRule ^News\.aspx(.*) http://www.webbiscuit.co.uk/? [NC,R=301,L]

【讨论】:

  • 我不能为任何网址做这件事。我需要在同一个域内重定向,并且仅当它以“webbiscuit.co.uk/News.aspx”开头时
  • 所以...您只想为 News.apsx 重定向 (301)?如果是这样 - 我稍后会更新我的答案。
  • 是的,很抱歉不清楚。感谢您的帮助,但不幸的是,这似乎并没有删除 News.aspx 之后的文件夹,它只是拉出了 News.aspx 部分。
  • 尝试其他浏览器或清除浏览器缓存并重新启动——现代浏览器 DO CACHE 重定向。我测试过,对我来说效果很好。
  • 那时我不知道——这是一个基本的简单规则...您对 Apache 有多少控制权?你可以编辑配置文件(httpd-vhost.conf)吗?如果是 - 您可以启用重写调试 (RewriteLogLevel 9) 并查看它以这种方式重定向的位置和原因。
猜你喜欢
  • 1970-01-01
  • 2016-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-02
  • 1970-01-01
相关资源
最近更新 更多