Перезапись URL с помощью IIRF замедляет докувики - PullRequest
0 голосов
/ 21 апреля 2011

РЕДАКТИРОВАТЬ: в данном случае код IIRF.ini не был проблемой, проблемы с производительностью dokuwiki были связаны с разрешениями, а введение перезаписи URL не было причиной проблемы.

У меня есть новый экземпляр Dokuwiki (то есть почти пустой, не используется), который работал совершенно нормально, до того как я интегрировал перезапись URL-адресов с помощью IIRF.

Теперь он работает значительно медленнее - навигация между страницами занимает несколько секунд, тогда как прежде, чем она стала «быстрой» (немедленной).

Я следовал инструкциям по реализации IIRF здесь , чтов основном включает добавление файла «IIRF.ini» в корень сайта и обновление файла «conf / local.php» в соответствии с инструкциями на сайте, указанном выше (код скопирован из заголовка «Фильтр перезаписи Iapics Isapi»).

Итак, чтобы уточнить, перезапись URL работает ;но это вызвало значительное замедление в навигации по вики.Я был бы признателен, если бы кто-нибудь мог предложить предложение для его ускорения снова!

Это содержимое моего файла "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]

1 Ответ

0 голосов
/ 05 июля 2011

Не ответ, но некоторые предложения:

  1. Знаете ли вы, является ли это конкретное правило, вызывающее проблему, или сама IIRF?Закомментируйте все правила и попробуйте следующее:

    RewriteRule ^(*.) $1
    

    Чтобы проверить производительность IIRF, затем раскомментируйте другие правила.

  2. Включите трассировку.Действуют ли правила, как ожидалось?

  3. Используйте приложение TestDriver для запуска ваших тестов.

  4. Попробуйте запустить свои тесты в контекстепользователя, которого использует программное обеспечение вашего веб-сервера.

Я предполагаю, что существует проблема с доступом к тесту файла или каталога.

...