【问题标题】:rewrite language extension in URLs with htaccess使用 htaccess 重写 URL 中的语言扩展
【发布时间】:2017-05-27 21:57:55
【问题描述】:

我在 htaccess 中重写 url 时遇到了一些问题。

我的所有 PHP 页面都在 /pages 子文件夹中。

这些是我的网址:
http://www.example/tickets
http://www.example/en/tickets
http://www.example/fr/tickets
http://www.example/nl/tickets

--> 所有这些都应该指向/pages/tickets.php

目前我在 htaccess 中使用它:

RewriteRule ^(nl|fr|en)/tickets /pages/tickets.php [L]

带有语言字符串的网址可以工作,但是当我省略语言字符串时,我收到 404 错误。

我该如何解决这个问题?

【问题讨论】:

  • 似乎没有做到这一点。我仍然得到一个 404 页面:s

标签: .htaccess mod-rewrite


【解决方案1】:

您可以使用此规则删除以下所有规则的语言标识符:

RewriteRule ^(nl|fr|en)/(.*) $1

或者,如果您只是希望它对于这条单一规则是可选的:

RewriteRule ^((nl|fr|en)/)?tickets$ /pages/tickets.php [L]

【讨论】:

    【解决方案2】:

    这也有效:

    Redirect 301 /nl/ / Redirect 301 /fr/ / Redirect 301 /en/ /
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-13
      • 1970-01-01
      • 2020-04-29
      • 1970-01-01
      • 2021-06-17
      • 1970-01-01
      相关资源
      最近更新 更多