Перейти к содержимому


Фотография

Битые файлы языкового кеша

Форумы IBResource
ipboard language lang cache corrupt повреждены файлы языка

Лучший Ответ Denis Chursinov, 07 Март 2014 - 14:44

						fwrite( $fh, $to_write, strlen( $to_write ) );
						fclose( $fh );
Вот и весь код.

Единственное место, где тонко - strlen( $to_write ) . Могу предположить, что у вас mbstring.func_overload установлена больше 1 . Желательно ставить 0 .

http://www.php.net/m...nfiguration.php

В 4.3 >= php >= 5.2.6 эта функция выставляется только в php.ini (PHP_INI_SYSTEM) в более новых версиях относится к PHP_INI_PERDIR , значит может быть выставлена для отдельной папки через php.ini, .htaccess, конфиг апача или .user.ini . Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 10
dio_bless
  • Участники
  • Cообщений: 8

Отправлено

Привет!
Приобрёл xml локализации тут: http://community.inv...uage-pack-only/
Загрузил, выбрал русский дефолтным, но все скрипты в /var/www/board/upload/cache/lang_cache/4/ "битые".

То есть все массивы с элементами перевода не закрыты, что собсна ошибку и вызывает. 

С чем это может быть связано?
Можно закрыть ручками, но непонятно сколько элементов в каждом блоке пропадёт...

Версия 3.4.6


Сообщение отредактировал IBResource: 15 Июнь 2014 - 15:25


Denis Chursinov
  • Клиенты
  • Cообщений: 659

Отправлено

Странно это как-то. Пак идет в xml. Если xml битый, то он не импортируется. А здесь получается все импортировано, но при создании кеша что-то сбоит. Пак тут, скорее всего, ничем повлиять не может. 
А можно кусочек файла кеша?
 



dio_bless
  • Участники
  • Cообщений: 8

Отправлено

'sent_new_convo' => " хочет начать личную беседу с вами",
'set_fave_button' => "%s",
'set_mobile_theme' => "Использовать мобильную версию",
'sf_bytes' => "байт",
'sf_gb' => "ГБ",
'sf_k' => "К",
'sf_mb' => "МБ",
'sign_in' => "Войти",
'sj_help' => "Помощь",
'sj_home
----------------------------------------------------------------

'_laquo' => "«",
'_larr' => "←",
'_raquo' => "»",
'_rarr' => "→",
'_rssimportcode' => "Code: ",
'_rssimportnotoc' => "No title or content",
'_rssimportsource' => "Source",
'_stopwords_' => "about,all,and,been,can,cant,for,has,here,just,me,new,next,not,old,out,our,said,saw,that,thats,the,their,then,theyll,this,was,were,well,will,with,what,what


Обрывается в произвольном месте, независимо от размера файла.


dio_bless
  • Участники
  • Cообщений: 8

Отправлено

Я 

 

Странно это как-то. Пак идет в xml. Если xml битый, то он не импортируется. А здесь получается все импортировано, но при создании кеша что-то сбоит. Пак тут, скорее всего, ничем повлиять не может. 
А можно кусочек файла кеша?
 

Я так понял, что при импорте языкового пакета, данные сначала идут в БД, а уже потом генерятся файлы кеша. То есть проблема в скрипте, который их генерит?



Denis Chursinov
  • Клиенты
  • Cообщений: 659

Отправлено

Да, информация импортируется в БД. Потом можно зеленой кнопочкой 1394034527-clip-25kb.png  кеш пересоздавать сколько угодно. Что-то мешает. Может антивирус какой-то злой или еще чего. Попробуйте перекешировать несколько раз, результат случайный?



dio_bless
  • Участники
  • Cообщений: 8

Отправлено

Да, информация импортируется в БД. Потом можно зеленой кнопочкой 1394034527-clip-25kb.png  кеш пересоздавать сколько угодно. Что-то мешает. Может антивирус какой-то злой или еще чего. Попробуйте перекешировать несколько раз, результат случайный?

Нет, на одном и том же месте режется...



Denis Chursinov
  • Клиенты
  • Cообщений: 659

Отправлено

А на чем режется, может на круглой цифре размера, может на кавычке какой-то или еще каком символе ?
Вот последняя версия пака на хостинге ипс http://ibresource.invisionconnect.com/ . Глюков с кешем языка нету. 
А оригинальный язык если перекешировать, тоже рвет?



dio_bless
  • Участники
  • Cообщений: 8

Отправлено

А на чем режется, может на круглой цифре размера, может на кавычке какой-то или еще каком символе ?
Вот последняя версия пака на хостинге ипс http://ibresource.invisionconnect.com/ . Глюков с кешем языка нету. 
А оригинальный язык если перекешировать, тоже рвет?

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

Обрезается на произвольном символе...



Denis Chursinov
  • Клиенты
  • Cообщений: 659

Отправлено   Лучший Ответ

						fwrite( $fh, $to_write, strlen( $to_write ) );
						fclose( $fh );
Вот и весь код.

Единственное место, где тонко - strlen( $to_write ) . Могу предположить, что у вас mbstring.func_overload установлена больше 1 . Желательно ставить 0 .

http://www.php.net/m...nfiguration.php

В 4.3 >= php >= 5.2.6 эта функция выставляется только в php.ini (PHP_INI_SYSTEM) в более новых версиях относится к PHP_INI_PERDIR , значит может быть выставлена для отдельной папки через php.ini, .htaccess, конфиг апача или .user.ini .
  • MrLite это нравится

dio_bless
  • Участники
  • Cообщений: 8

Отправлено

						fwrite( $fh, $to_write, strlen( $to_write ) );
						fclose( $fh );
Вот и весь код.

Единственное место, где тонко - strlen( $to_write ) . Могу предположить, что у вас mbstring.func_overload установлена больше 1 . Желательно ставить 0 .

http://www.php.net/m...nfiguration.php

В 4.3 >= php >= 5.2.6 эта функция выставляется только в php.ini (PHP_INI_SYSTEM) в более новых версиях относится к PHP_INI_PERDIR , значит может быть выставлена для отдельной папки через php.ini, .htaccess, конфиг апача или .user.ini .

 

Помогло либо это, либо увеличение памяти до 128М -- менял скопом. В любом случае спасибо)



Denis Chursinov
  • Клиенты
  • Cообщений: 659

Отправлено

Память - мало вероятно, там в кеш-файлах и 5 мегабайт нету во всех вместе. 







Темы с аналогичными тегами: ipboard, language, lang cache corrupt, повреждены файлы языка

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных