【问题标题】:htaccess Mod_rewrite with accentshtaccess Mod_rewrite 带重音符号
【发布时间】:2012-05-14 03:52:53
【问题描述】:

我有一个国际网站,该网站的一部分用于创建一个新人,该人的姓名在 URL 中。我需要该 URL 以允许重音以及一些特殊字符,例如 à

我现在正在使用:

RewriteRule ^([áéíóúñÁÉÍÓÚÑäëïöüÄËÏÖÜçÇA-Za-z-]+)/?$ /newPerson.php?person=$1 [NC,QSA]

更新: 这可行,但不是一种非常优雅的方法。如果有这样的事情,我正在寻求一种更好的方法来匹配所有字母(小写和大写)与所有可能的重音 à、á、ä... 等。

更新 2: 在正则表达式中没有明显的方法来表示“一个字符及其所有重音版本”,所以我想我会坚持这个......

【问题讨论】:

标签: .htaccess mod-rewrite diacritics


【解决方案1】:

你可以只允许任何东西,除了 e.g. /.。正则表达式为此使用[^ ]-notation。在您的情况下,您可以使用:

RewriteRule ^([^/.]+)/?$ /newPerson.php?person=$1 [QSA]

【讨论】:

  • 我认为这与另一个规则冲突,因为它会产生内部服务器错误,以及使用 (.*)
  • 您能否在您的问题中添加其他规则?
猜你喜欢
  • 2013-10-14
  • 1970-01-01
  • 2012-06-21
  • 2013-04-13
  • 2023-04-04
  • 2019-12-08
  • 2011-02-20
  • 1970-01-01
  • 2016-11-25
相关资源
最近更新 更多