Статическое кэширование сраниц Joomla

Тема в разделе "Программирование", создана пользователем ColorFlow, 27.11.2011.

  1. Offline

    ColorFlow Недавно здесь

    Регистрация:
    27.11.2011
    Сообщения:
    1
    Симпатии:
    0
    Пол:
    Мужской
    Добрый день, уважаемые знатоки!

    как включить статическое кэширование?
    имею vps-хостинг со скромными ресурсами. одновременное подключение 50 посетителей ведет к полному зависанию хостинга.

    прочитал статью "Превращаем сайт на Joomla в статический" и решил что это лучшее решение для меня:


    Код (PHP):
    1. создаем директорию /static/ для хранения кеша, и в файл index.php корневой папки
    2. Джумлы, в самый конец, после строк:
    3.  
    4. // trigger the onAfterRender events
    5. JDEBUG ? $_PROFILER->mark('afterRender') : null;
    6. $mainframe->triggerEvent('onAfterRender');
    7.  
    8. добавляем такие строки:
    9.  
    10. $page = JResponse::toString($mainframe->getCfg('gzip'));
    11. $DOCUMENT_ROOT = 'полный/путь/к/корневой/папке';
    12. $filecache = $DOCUMENT_ROOT . 'static' . $_ENV['REQUEST_URI'];
    13. $cache = fopen($filecache, 'w');
    14. fwrite($cache, $page);
    15. fclose($cache);
    16. echo $page;
    17.  
    18. Если всё сделано правильно, то после этого шага копии открытых страниц уже
    19. сохраняются в директории /static/. Осталось только сделать чтобы веб-сервер отдавал
    20. сохраненную копию страницы вместо выполнения кода Джумлы. Это было сделано при
    21. помощи таких нескольких строк:
    22.  
    23. RewriteCond %{REQUEST_METHOD} GET
    24. RewriteCond /полный/путь/к/корневой/директории/static/%{REQUEST_URI} -f
    25. RewriteRule .* /static/%{REQUEST_URI} [L]


    все сделал, как написано, но последние три строчки я прописал в httpd.conf (т.к. .htaccess отключил) в секцию virtualhosts своего сайта.

    не работает. почему не работает? и как сделать чтобы заработало?
     
    Последнее редактирование: 27.11.2011
  2.  

Поделиться этой страницей

Загрузка...