Категория: Web & comp
Опубликовано 28.04.2012 11:42

Иногда мощности машины (при Денвере) или сервера хостинга не хватает, чтоб за 30 сек установитть какое-то приложение (VM, например). И Джумла выдаёт ошибку, а приложение ессно не установлено.

Решение- увеличить время обработки, оно прописано в  php.ini, и стандартно =30 (сек) 

у вас на локальном сервере (Денвер)

Z:\usr\local\php5\php.ini
блок «Resource Limits» строки примерно 255-288

max_execution_time = 300 (например) 

 Не  забываем перегрузить Денвер (рестарт)

 

  Подробнее об установке ВМ.

С сайта разработчиков Virtuemart 2 и стандартные расширения скачиваются единым пакетом. Первое, что нужно сделать, это извлечь из него файлы(разархивировать). В извлеченном архиве обнаружится еще 2 архива:

– com_virtuemart.2.x.x.tar.gz – непосредственно компонент.

– com_virtuemart.2.x.x_ext_aio.tar.gz – стандартные расширения.

Эти архивы и требуется установить. Сначала устанавливается компонент, а затем расширения. Для установки нужно перейти в менеджер расширений Joomla, выбрать через обзор архив компонента и нажать кнопку «Установить».

Велика вероятность, что установщик Joomla, при попытке установки компонента, выдаст какую-либо ошибку. Обычно эти ошибки связаны не с Virtuermart 2, а с настройками сервера. Об этом мы поговорим чуть позже.

Если с сервером все нормально, то после непродолжительного ожидания компонент будет установлен, а в окне браузера появится страница с сообщением  об успешной установке

Аналогично для расширений

Установка и обновление Virtuemart 2. Русификация.

После установки, обычно первое, что хочется сделать, русифицировать Virtuemart 2. Многие люди не очень хорошо знают английский язык и разбираться с новым расширением им гораздо проще на родном, да и посетителям сайта видеть англоязычные слова ни к чему.

Русификация Virtuemart 2 еще проще установки. Самое сложное здесь, собственно, найти русификатор. Но поскольку я уже сделал это за вас, то вам остается только скачать его.

Русификатор Virtuemart 2.

На странице есть локализации не только для русского языка, но и для многих других. Выберите языки, нужные вам, скачайте архивы, а затем просто установите их, аналогично Virtuemart 2, через менеджер расширений. Больше ничего делать не нужно. Virtuemart автоматически переведется на тот язык, который установлен для Joomla.
Установка и обновление Virtuemart 2. Обновление.

Перед обновлением в любом случае нужно обязательно делать резервную копию сайта и базы данных!

Помните об этом. Это святое правило, пренебрежение которым может привести к очень печальным для вашего сайта последствиям.

Хотя в Joomla с версии 1.7 встроен хороший менеджер обновлений, разработчики Virtuemart 2 в очередной раз пошли своим путем и изобрели велосипед. Virtuemart 2 имеет собственный менеджер обновлений, который информирует администратора о выходе новой версии. В панели управления Virtuemart 2 под боковым меню(которое слева), теперь есть баннер, информирующий о том, какая версия Virtuemart 2 используется. 

Обновиться можно двумя способами:

1) Перейти по ссылке-баннеру, и нажать кнопку «Обновить до последней версии»

2) Скачать пакет установки с официального сайта Virtuemart и провести новую установку компонента и расширений прямо поверх существующей версии, не удаляя ее.

Какой из способов лучше сказать сложно. Если не работает первый, пользуйтесь вторым. Важно другое. Если вы вносили изменения в шаблон Virtuemart 2 или, того хуже, в его ядро, если вы устанавливали дополнительные сторонние плагина для Virtuemart 2, то после обновления вас может ждать ряд неприятных сюрпризов. Первый из них, исчезновение хаков и верстки шаблона. Если с хаками все понятно(на то они и хаки), то проблему с шаблоном можно решить. О том как, смотрите ниже. Второй неприятный сюрприз может быть связан с тем, что сторонние расширения и плагины для Virtuemart 2 попросту откажутся корректно работать с новой версией. Здесь уже ничего не поделать. Разработчики Virtuemart 2 постоянно совершенствуют компонент, добавляют функционал и исправляют ошибки. Это неизбежно приводит к тому, что с со сторонними расширениями возникают несостыковки. Протестировать новые версии на предмет совместимости со всеми сторонними расширениями невозможно просто физически. В случае возникновения таких проблем остается только ждать, пока разработчики стороннего расширения выпустят обновление, которое будет совместимо с последней версией Virtuemart 2.

Прочитав предыдущий абзац, многие веб-мастера, возможно, захотят отказаться от обновлений Virtuemart 2 вовсе, мотивируя это тем, что сейчас все работает, зачем еще что-то обновлять, раз могут возникнуть такие трудности. Это большая ошибка. Регулярно обновлять Virtuemart 2 необходимо, поскольку в новых версиях не только появляются новые функции, но и исправляются обнаруженные уязвимости. Отказ от обновлений ставит под угрозу безопасность вашего сайта.
Установка и обновление Virtuemart 2. Частые ошибки.

Как я писал выше, есть несколько неточностей в настройке сервера(хостинга), которые приводят к ошибкам на этапе установки и обновления Virtuemart 2.

Ошибка 1. Превышено максимальное время выполнения скрипта.

Virtuemart 2 – очень большой компонент и для его установки требуется некоторое время и ресурсы сервера. Если сервер очень слабый или время выполнения одного действия установлено очень низким, то если за это время Virtuemart 2 не успеет установится, сервер автоматически прекратит установку и вернет ошибку или просто белый экран.

Посмотреть максимальное время выполнения скрипта можно в админке Joomla.

Сайт –> Информация о системе –> Информация о PHP –> max_execution_time

Если это время <= 30, увеличьте его в php.ini, или, если к файлу конфигурации нет доступа, попросите сделать это тех. поддержку хостинга.

Ошибка 2. Превышен максимальный размер файла, загружаемого на сервер.

В настройках PHP обычно стоит ограничение на максимальный размер файла, который может быть загружен на сервер. Размер архива Virtuemart 2 ~1.4мб, архива расширений ~ 2 мб. Соответственно, если в настройках PHP максимальный размер загружаемого файла выставлен в 1мб, то ничего не установится. Обычно в этом случае Joomla выдает сообщение «Ошибка загрузки файла на сервер».

Посмотреть максимальный размер загружаемого файла можно также в админке Joomla.

Сайт –> Информация о системе –> Информация о PHP –> upload_max_filesize

Решается проблема либо через правку конфигурационного файла PHP, либо через обращение в тех. поддержку вашего хостинга.

Ошибка 3. Нет прав доступа на запись в каталоги.

Еще одна частая ошибка связана с недостаточными правами Joomla, по управлению собственной файловой структурой. На странице «Сайт –> Информация о системе –> Права доступа на каталоги» всё должно быть доступно(быть зеленого цвета). Если большинство каталогов недоступны(красные), то обращайтесь в поддержку хостинга.

Обычно до 90% проблем с установкой Virtuemart 2 и других расширений Joomla, решаются в рамках этих трех ошибок.
Установка и обновление Virtuemart 2. Как не потерять изменения, внесенные в шаблон Virtuemart 2, при обновлении.

Файлы шаблона страниц Virtuemart 2 находятся в папке components/com_virtuemart/views. Если вы внесете исправления в эти файлы, то при обновлении многие из этих исправлений исчезнут по той простой причине, что каждый из файлов будет заменен обновленным. Что же делать в этом случае? Virtuemart 2 использует концепцию MVC. В соединении с Joomla это означает, что каждый шаблон(макет) Virtuemart 2 может быть переопределен в шаблоне Joomla. Что означает это умное слово «переопределен»? Оно означает, что вы можете скопировать шаблон Virtuemart 2 в папку html шаблона Joomla, используя некоторую структуру каталогов, после чего Virtuemart 2 будет брать все данные исключительно из шаблона Joomla, а не из components/com_virtuemart/views, что обезопасит вас от перезаписывания файлов с изменениями. Шаблон Virtuemart, а точнее то, что находится в папке components/com_virtuemart/views, должно быть скопировано в папку templates/ваш_шаблон/html/com_virtuemart/ в той же файловой структуре за исключением папки tmpl. Это означает, что, например, шаблон страницы товара components/com_virtuemart/views/productdetails/tmpl/default.php должен быть скопирован в

templates/ваш_шаблон/html/com_virtuemart/productdetails/default.php .

На этом всё. 

 

Аналогичная статья с иллюстрациями и продолжением