【问题标题】:URL rewrite with IIRF makes dokuwiki slow使用 IIRF 重写 URL 使 dokuwiki 变慢
【发布时间】:2011-04-21 13:57:25
【问题描述】:

编辑:在这种情况下,IIRF.ini 代码不是问题,dokuwiki 的性能问题实际上与权限有关,并且 URL 重写的引入不是问题的原因。强>

在我使用 IIRF 集成 URL 重写之前,我有一个新的 Dokuwiki 实例(即几乎是空的,未使用),它运行得非常好。

现在它的运行速度明显变慢了——在页面之间导航需要几秒钟,而之前它是“快速”(立即)。

我按照实现 IIRF here 的说明进行操作,这基本上涉及将“IIRF.ini”文件添加到站点根目录,并按照上面链接的站点上的说明更新“conf/local.php”文件(代码从“Ionics Isapi Rewrite Filter”标题下复制)。

所以澄清一下,URL 重写是工作;但它导致了浏览 wiki 的速度明显变慢。如果有人可以提供建议以再次加快速度,我将不胜感激!

这是我的“IIRF.ini”文件的内容:

IterationLimit 1

# QSA is not supported, fix it
RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteRule (.*)\?(.*) $1&$2

RewriteRule ^/_media/(.*)             /lib/exe/fetch.php?media=$1   [QSA,L]
RewriteRule ^/_detail/(.*)            /lib/exe/detail.php?media=$1  [QSA,L]
RewriteRule ^/_export/([^/]+)/(.*)    /doku.php?do=export_$1&id=$2  [QSA,L]
RewriteRule ^/$                       /doku.php                     [QSA,L]

# infinite redirect fix
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteRule ^/(.*)/$                  /doku.php?id=$1               [QSA,L]

# end fix
RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteRule ^/(.*)                    /doku.php?id=$1               [QSA,L]

【问题讨论】:

  • 那里的ini文件不正确-至少COMMENT不正确。评论说# QSA is not supported, fix it,但这对于 IIRF 是不正确的。 IIRF 支持 QSA。您不需要 IIRF 文件中的该节。你得到的 ini 代码有一些陈旧的位。
  • 你可能是对的 Cheeso,我从 dokuwiki 文档中复制了这个文件,所以我不知道评论是否正确。

标签: navigation url-rewriting slowdown dokuwiki iirf


【解决方案1】:

不是答案,而是一些建议:

  1. 您知道导致问题的原因是特定规则还是 IIRF 本身?注释掉所有的规则并尝试以下操作:

    RewriteRule ^(*.) $1
    

    要测试 IIRF 性能,然后取消注释其他规则。

  2. 打开跟踪。规则的行为是否符合预期?

  3. 使用TestDriver 应用程序运行您的测试。

  4. 尝试在您的 Web 服务器软件使用的用户上下文中运行测试。

我的猜测是文件或目录测试存在访问问题。

【讨论】:

  • 我会将其标记为答案,因为您说的最后一句话是对的,事实证明这是与访问/权限相关的问题。在支持 URL 重写时,dokuwiki 似乎需要比没有它时更多的权限。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-08
相关资源
最近更新 更多