Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 14 Ответов
  • 4658 Просмотров
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
Всем привет. немного ввода о себе: я программер и php мне снится по ночам :)
С Joomla уже давно на "ты" или если не сказать грубо "ты чё суч...а"

итак. сейчас случайно через кои то годы работы с Joomla заметил такую фишку:

на хостинге создается кеш каждой странички в папке cache/page
при этом ключен плагин кеша в system и в настройках сайта включено кеширование на 10 мин.

но! на локалке нет этого cache/page

думал глюк какой-то. но нет! странички грузятся моментально. думал где-то недовключил кеш и на локалке этого нет. но нет! всё как на хостинге.
отключил нарошно кеш на локалке и стало тормозить. значит всё таки кеш работает как нужно.

вот этот долбанный cache/page меня убивает наповал. так как приходится дописывать исходник так, чтобы после определенных действий юзером кеш чистился конкретной страницы.
короче головняк постоянный. а тут тебе на блин. на локалке проблем нет, так как папка даже не создается

почему заметил только сейчас - тестировал счетчики показов баннеров. и заметил, что всё считает правильно, и баннера даже меняются при каждом обновлении страницы. и это сразу меня возмутило ! ведь cache/page держит полностью страницу закешированную, а тут такие чудеса

права на серве поставил 775 для кеша+подфайлы и папки.

думаюй придется сейчас лезть в исходник и искать какого черта на серве эта папка создается, а на локалке нет! он мне этот /page нафиг ненужен

Гурманы подскажите пожалуйста! я до такого еще не докопал систему :)
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
начал всё таки изучать этот долбанный кеш

оказалось он создает эту папку если браузер перезапустить
тоесть идет скорее всего привязка к сесии
зашел из нескольких браузеров
создалось несколько файлов в /page
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
пипец. я в ужасе

дергаю страничку фаером - создается page
дергаю страничку оперой - не создается

вот, что отсылает опера:
Код
GET / HTTP/1.1
User-Agent: Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.7.62 Version/11.01
Host: 127.0.0.1
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
If-Modified-Since: Fri, 08 Apr 2011 09:54:11 GMT
Cookie: referrerid=AUPRS-4D9969F56DA06; 0ac0b8afd537bedb5a6f8ae2ba8bbd76=58+D+A+91947+B+9+E1B411257475F+55E+417+C41+B+7+C434B5C53465A475C+1+D1A43+34742465B4B5043+946+B55+943+415+94C; 90639c356f8ee995c2075f0364a7d1c1=750d645d19e7a5f3d100a70e1c5704a5; 04e0a671eda8eb9ef13ae0eb17b76657=8676491be73bcef2451ea07451aaa68f; webfxtab_NestedPaneOne=5; webfxtab_NestedPaneTwo=2; webfxtab_NestedPaneThree=5; webfxtab_NestedPaneFive=1; webfxtab_NestedPaneSix=6; webfxtab_NestedmainPane=0; b=b
Cookie2: $Version=1
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers

а вот фаер
Код
GET / HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:2.0) Gecko/20100101 Firefox/4.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Cookie: __utma=96992031.71640057.1298535777.1302256075.1302256167.56; __utmz=96992031.1298535777.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); referrerid=AUPRS-4D9969F56DA06; __utmb=96992031.7.10.1302256167; activeProfile=62; 04e0a671eda8eb9ef13ae0eb17b76657=f184029c3f77ae16198df77eba93b509; b=b; __utmc=96992031
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
на локальном сервере точно включен плагин система кеш?
Я с мобильного, в основном...
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
да да. всё проверено
сейчас нашел лазейку Оперы
почему из под неё не создает кеш. так вот!

я взял её кук:
Код
Cookie: referrerid=AUPRS-4D9969F56DA06; 0ac0b8afd537bedb5a6f8ae2ba8bbd76=58+D+A+91947+B+9+E1B411257475F+55E+417+C41+B+7+C434B5C53465A475C+1+D1A43+34742465B4B5043+946+B55+943+415+94C; 90639c356f8ee995c2075f0364a7d1c1=750d645d19e7a5f3d100a70e1c5704a5; 04e0a671eda8eb9ef13ae0eb17b76657=8676491be73bcef2451ea07451aaa68f; webfxtab_NestedPaneOne=5; webfxtab_NestedPaneTwo=2; webfxtab_NestedPaneThree=5; webfxtab_NestedPaneFive=1; webfxtab_NestedPaneSix=6; webfxtab_NestedmainPane=0; b=b
Cookie2: $Version=1

ну и взял обычный кук. который генерится любым постером http заголовков
Код
Cookie: __utma=96992031.1134283663.1299750910.1302256807.1302256844.5; __utmb=96992031.1.10.1302256844; __utmz=96992031.1299750910.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); 04e0a671eda8eb9ef13ae0eb17b76657=6a1c15477f4e90b1d9ef0ed6e53bf053

пробовал всё
именно в куке решение.

если первый кук, то нет кеша
если второй вариант кука - то кеш создается
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
ну теперь решил поиздеваться над кешем и вот что подправил:

libraries\joomla\cache\cache.php

было:
Код
	function store($data, $id, $group=null)
{
// Get the default group
$group = ($group)? $group : $this->_options['defaultgroup'];

// Get the storage handler and store the cached data
$handler =& $this->_getStorage();
if (!JError::isError($handler) && $this->_options['caching']) {
return $handler->store($id, $group, $data);
}
return false;
}

стало:
Код
function store($data, $id, $group=null)
{
// Get the default group
        if ($group!='page'){
$group = ($group)? $group : $this->_options['defaultgroup'];

// Get the storage handler and store the cached data
$handler =& $this->_getStorage();
if (!JError::isError($handler) && $this->_options['caching']) {
return $handler->store($id, $group, $data);
}
        }
return false;
}

и файлы page не генерятся
весь остальной кеш генерится отлично

копаю дальше
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
проверил. теперь мои баннера как и должны меняются
те модули, что под кешем так и стоят мертвым грузом. и не грузят систему

спрашивается! нафига разработчики Joomla не доработали управляемый кеш, который бы можно было настроить хоть как-то

мне раньше приходилось каждую страничку чистить после изменений каких-то
(например юзер отдал голос за фото. а баллы получается не обновлялись сразу)
вот как я чищу конкретную страничку
$cache =& JFactory::getCache('page');
$uri= substr($_SERVER['HTTP_REFERER'],strpos($_SERVER['HTTP_REFERER'],'/',7));
$cache->remove(md5($uri),'page');

где самое важное это URI страницы, которую нужно почистить и всё. но ведь это гемор
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
ИТОГО:
решил проверить насколько дольше будут обрабатываться запросы если не юзать готовые файлы из /page

как только добавил проверку  if ($group!='page'){....
файлы в /page перестали формироваться, но сама по себе папка создается

в среднем если юзать с page у меня задержка идет 0.37 сек
а если убрать page то 0.75 - 1.0 сек

как бы не много. и проблемы все мои решаются. но думаю еще поколупаться в самом cache, чтобы он даже не пытался создавать у себя в памяти кеш страницы если его предназначением будет папка page

спасибо самому себе :)
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
кто-то подумал, что я на этом остановился? :)
эээ нет!

я убрал вот ту проверку в libraries\joomla\cache\cache.php

и полез в корень зла.

берем файл plugins\system\cache.php

и камментим (от 45 до 57й строк)
//Set the language in the class
.....
//$this->_cache =& JCache::getInstance( 'page', $options );

и чуть ниже камментим. 77я строка и до конца функции:
/*$data  = $this->_cache->get();
....
}*/

теперь гораздо заметнее открывает странички и не формирует папку page
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
ну и напоследок камментим функцию function onAfterRender()
и всё

на этом эксперименты закончу

всё работает. кромесоздания page
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
пляяяя. проще просто нахер отрубить плагин и не морочить голову
я фигею
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
отключил этот долбанный плагин cache
все файлы как кешировались, так и кешируются. но!
не юзается технология /page

убрал проверки с первого файла
итого: страничка грузится с паузой 0.8-0.9 сек
нормуль

завершаю
*

Aleks_El_Dia

  • Живу я здесь
  • 3671
  • 353 / 0
  • AEDStudio Joomla! Direction
Спам придумали боги в отместку за наши молитвы (с) Рома Воронежский
На молоко: Z369038872422 || R210017695494 || U247040729215 || ЯД 410011288250383
Мигрирую сайты, переношу расширения J!1.0->J!1.5->J!2.5. Более 50 успешных миграций.
*

Aleks_El_Dia

  • Живу я здесь
  • 3671
  • 353 / 0
  • AEDStudio Joomla! Direction
Спам придумали боги в отместку за наши молитвы (с) Рома Воронежский
На молоко: Z369038872422 || R210017695494 || U247040729215 || ЯД 410011288250383
Мигрирую сайты, переношу расширения J!1.0->J!1.5->J!2.5. Более 50 успешных миграций.
*

Slayer Moon

  • Захожу иногда
  • 169
  • 9 / 0
Круто было бы для простых смертных выложить варианты плагина или его доработок с пояснениями, что каждый из них делает, дабы можно было бы поэксперементировать. Я этих кешеров юзаю море (системный джумловский как плагин, так и в настройках админки, причём последний - посредством xcache, query cache тоже через xcache), надо бы понять какой вариант оптимальный.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla накешировала 200Mb в директорию cache/page при отключенном кешировании, что за ...?

Автор Marygold

Ответов: 12
Просмотров: 5466
Последний ответ 27.09.2023, 09:23:54
от XFQDesNik
Content - Page Navigation не реагирует на настройки

Автор Escander

Ответов: 4
Просмотров: 1892
Последний ответ 06.09.2016, 13:39:58
от serjik
Плагин AutoToC как избавится от дублей

Автор tori2006

Ответов: 0
Просмотров: 1436
Последний ответ 13.04.2016, 11:50:21
от tori2006
Как настроить плагин Show / Hide Content?

Автор yasna

Ответов: 8
Просмотров: 4497
Последний ответ 29.10.2015, 18:13:42
от Inngrid
КАК Добавить функцию исключить категории в плагин?

Автор romanovruslan

Ответов: 0
Просмотров: 5801
Последний ответ 12.07.2014, 06:20:12
от romanovruslan