【问题标题】:Problems with RewriteMap MapType dbdRewriteMap MapType dbd 的问题
【发布时间】:2011-09-07 05:24:30
【问题描述】:

在这里继续另一个讨论:

MySQL + htaccess mod_rewrite?

我被要求开始另一个问题。

我将此添加到我的 httpd.conf 文件中:

DBDriver mysql
DBDParams "host=*****,user=*****,pass=*****,dbname=*****"
RewriteEngine On
RewriteMap hrci "dbd:SELECT title FROM challenges WHERE id = %s"

当我尝试重新启动 Apache 时出现此错误:

RewriteMap: file for map hrci not found:/dh/apache2/apache2-ps54462/dbd:SELECT title FROM challenges WHERE id = %s

看起来它完全忽略了dbd 部分并试图将整个内容作为文件名读取。我真的不知道我做错了什么。

更新

我尝试简化这一点,只为地图使用纯文本文件:

RewriteMap hrci txt:/home/username/rewrite.txt

根目录中有一个文本文件,其中仅包含以下内容:

232 The+Pillar+of+Autumn+LASO

最后,我有我的重写规则:

重写规则 ^ch([0-9]{1,4})(/)?$ http://reachchallenges.infectionist.com/challenge/$1/${hrci:$1} [R=301,L]

所以访问路径ch232 应该重定向到/challenge/232/The+Pillar+of+Autumn+LASO,但它只是重定向到/challenge/232/,没有标题。我到底做错了什么?!?

【问题讨论】:

    标签: mysql .htaccess mod-rewrite rewritemap


    【解决方案1】:

    我发现 RewriteMap 中的 dbd 部分不工作的原因(至少对我来说)是它应该只能在 apache 2.3+ 中工作。对于我的apache2.2,它不起作用。

    【讨论】:

      猜你喜欢
      • 2011-10-29
      • 2011-02-28
      • 1970-01-01
      • 2014-06-27
      • 2011-02-16
      • 1970-01-01
      • 2011-02-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多