sonyps4.ru

Разьяснения о процессе миграции на нашем видео.

Представляем вашему вниманию новый курс от команды The Codeby - "Тестирование Веб-Приложений на проникновение с нуля". Общая теория, подготовка рабочего окружения, пассивный фаззинг и фингерпринт, Активный фаззинг, Уязвимости, Пост-эксплуатация, Инструментальные средства, Social Engeneering и многое другое.


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

(Шутка с Баша)

Хотелось бы начать с того, что на днях вышел Apache 2.4.3, в котором наконец-то убран баг с AcceptFilter https none и ресурс Apache Haus теперь официально рекомендует обновиться с 2.2 до 2.4. Важно отметить, что на Apache 2.4 (правда, только на 32-битную версию) портрирован модуль поддержки PHP.

Пара полезных ссылок:

Обновление Apache с 2.2 до 2.4 не вызывает каких либо особых трудностей. Тем не менее,

на некоторые моменты следует обратить внимание.

Изменения компиляционных настроек

Процесс компиляции очень схож с таковым для версии 2.2. Ваша старая строка параметров конфигурации (которая расположена в папке build/config.nice установленного сервера) может быть использована в большинстве случаев. Присутствует всего несколько изменений в настройках по умолчанию. Рассмотрим их:

  • Три модуля были удалены: mod_authn_default, mod_authz_default, mod_mem_cache. Если вы пользовались mod_mem_cache в 2.2, обратите внимание на mod_cache_disk в 2.4.
  • Все балансировочные реализации были перемещены в индивидуальные, автономные mod_proxy submodules, например mod_lbmethod_bybusyness. Вы можете встраивать и загружать их по отдельности.
  • Из поддерживаемых платформ были удалены: BeOS, TPF, и ещё более старые платформы, такие как A/UX, Next и Tandem. В любом случае, кажется Apache там всё равно не работал.
  • конфигурация: динамические модули (DSO) встроены по умолчанию
  • конфигурация: по умолчанию загружаются только базовые настройки модулей. Другие дерективы LoadModule закомментированы.
  • конфигурация: настройки модуля «most» встроены по умолчанию
  • конфигурация: настройки модуля «reallyall» добавлены к модулям разработчика в настройки «all»

Изменение рабочих настроек

Были сделаны значительные изменения в настройках конфигурации авторизации и другие небольшие конфигурационные изменения, которые требуют внесения правок в ваш конфигурационный файл 2.2 перед использованием его в 2.4.

Все конфигурационные файлы, использующие механизм авторизации, вероятно, придётся править.

Вам следует просмотреть Справочную информацию по Идентификации, Авторизации и Контролю доступа , особенно секцию Сразу после авторизации , которая объясняет новый механизм для контроля порядка в котором применяются директивы авторизации.

Директивы, контролирующие как модуль авторизации отвечает, когда авторизация не удалась, были удалены: а именно управляющие команды AuthzLDAPAuthoritative, AuthzDBDAuthoritative, AuthzDBMAuthoritative, AuthzGroupFileAuthoritative, AuthzUserAuthoritative и AuthzOwnerAuthoritative. Они были заменены более выразительными RequireAny, RequireNone и RequireAall.

Контроль доступа

В 2.2 контроль доступа базировался на клиентском имени компьютера, IP адресе и других характеристиках клиента, которые сравнивались с правилами установленными директивами Order, Allow, Deny и Satisfy.

В 2.4 такой контроль доступа выполнен в том же духе, что и проверки авторизации, т.е. с использованием модуля mod_authz_host. Старые идиомы следует заменить новым идентификационным механизмом, хотя сохранена совместимость старых настроек с новым модулем mod_access_compat .

Здесь несколько примеров нового и старого способов установления одинаковых правил доступа.

В этом примере все запросы отклоняются

2.2 конфигурация:

Order deny, allow Deny from all

2.4 конфигурация:

Require all denied

В этом примере все запросы разрешены

2.2 конфигурация:

Order allow, deny Allow from all

2.4 конфигурация:

Require all granted

В этом примере, все хосты для домена example.org разрешены, ко всем другим хостам – доступ закрыт.

2.2 конфигурация:

Order Deny , Allow Deny from all Allow from example. org

2.4 конфигурация:

Require host example. org

Другие конфигурационные изменения

Некоторые маленькие корректировки могут быть необходимыми для особых случаев, описанных ниже.

  • MaxRequestsPerChild был переименован MaxConnectionsPerChild, это более точно отражает суть. Старое имя всё ещё поддерживается.
  • MaxClients был переименован в MaxRequestWorkers, это более точно отражает суть. Для асинхронных MPMs, как например событие, максимальное количество клиентов не является эквивалентом количества рабочих процессов. Старое имя всё ещё поддерживается.
  • Деректива DefaultType больше не имеет какого либо эффекта, разве что показывает предупреждение, если она используется с любой величиной, кроме none. Вам следует использовать другие конфигурационные настройки для замены в 2.4.
  • EnableSendfile сейчас по умолчанию установлена на Off.
  • FileETag по умолчанию сейчас «MTime Size» (без INode).
  • mod_log_config: ${cookie}C соответствует полному имени cookie. Ранее, любая подстрока соответствовала.
  • mod_dav_fs: Формат файла DavLockDB изменён для систем с дескрипторами. Старый файл DavLockDB должен быть удалён или обновлён.
  • KeepAlive принимает только значения On или Off. Раньше любые значения, отличные от «Off» или «0» были интерпретированы как «On».
  • Директивы AcceptMutex, LockFile, RewriteLock, SSLMutex, SSLStaplingMutex и WatchdogMutexPath были заменены единственной дерективой Mutex. В каждом отдельном случае следует определять, следует ли эти директивы просто удалить из файла настроек 2.2 или вместо них должна использоваться Mutex.
  • mod_cache: CacheIgnoreURLSessionIdentifiers сейчас сравнивает на точное совпадение, вместо частичного совпадения. Если ваша конфигурация использовала конкретную строку, например sessionid для определения совпадения в /someapplication/image.gif;jsessionid=123456789, то вы будете должны заменить sessionid на полную строку, т.е. jsessionid.
  • mod_ldap: LDAPTrustedClientCert сейчас является только последовательной покаталоговой настройкой. Если вы используете эту директорию, пересмотрите вашу конфигурацию, чтобы убедиться, что она представлена во всех необходимых папках.
  • mod_filter: FilterProvider синтакс изменился и сейчас используется логическое (булевое) выражение для определения применим ли фильтр.
  • mod_include:
    • выражение #if expr сейчас использует новый парсер. Старый синтакс может быть восстановлен директивой SSILegacyExprParser.
    • конфигурация директивы SSI* больше не приводит к тому, что все SSI* директивы в подкаталогах сбрасываются к их дефолтным значениям.
  • mod_charset_lite: Опция DebugLevel была удалена в пользу настройки в модуле LogLevel.
  • mod_ext_filter: Опция DebugLevel была удалена в пользу настройки в модуле LogLevel.
  • mod_ssl: основанные на CRL отмены проверок сейчас должны быть явно настроены в SSLCARevocationCheck.
  • mod_substitute: Максимальная длина строки теперь ограничена 1MB.
  • mod_reqtimeout: Если модуль загружен, теперь он будет устанавливать несколько таймаутов по умолчанию.

Разные изменения

  • mod_autoindex: теперь точно называет и отображает описание для файлов.xhtml, которые раньше игнорировались.
  • mod_ssl: дефолтный формат величин *_DN изменён. Старый формат может всё ещё использоваться с новым аргументом LegacyDNStringFormat в to SSLOptions. Протокол SSLv2 больше не поддерживается. SSLProxyCheckPeerCN и SSLProxyCheckPeerExpire сейчас по умолчанию установлены в On, что при прокси запросах к HTTPS хосту с плохими или устаревшими сертификатами будет приводить к ошибке 502 (Bad gateway).
  • htpasswd теперь использует MD5 хэш по умолчанию для всех платформ.
  • Деректива NameVirtualHost больше не имеет какого-либо эффекта, кроме отображения предупреждения. Любые комбинации адрес/пор появляющиеся во множественных виртуальных хостах безоговорочно трактуются как имя виртуального хоста.
  • mod_deflate сейчас пропускает сжатие, если известно, что размер добавляемых метаданных (заголовков) больше, чем размер сжимаемых данных.
  • Многоязычные документы ошибок из 2.2.x могут не работать, если они не приведены к новому синтаксу элементов mod_include’s #if expr= или если директива SSILegacyExprParser не включена для каталогов, содержащих документы ошибок.
  • Функциональность, обеспечиваемая mod_authn_alias в предыдущих версиях (например директивой AuthnProviderAlias) перемещена mod_authn_core.

Сторонние модули

Все модули должны быть перекомпилированы для 2.4 перед загрузкой.

Много сторонних модулей созданных для версии 2.2 будут работать без внесения дополнительных изменений с сервером Apache HTTP версии 2.4. Некоторые могут потребовать изменений, обратитесь к обзору обновлений в API .

Общие проблемы при обновлении

  • Ошибки запуска:
    • Invalid command ‘User’, perhaps misspelled or defined by a module not included in the server configuration – загрузите модуль mod_unixd
    • Invalid command ‘Require’, perhaps misspelled or defined by a module not included in the server configuration, or Invalid command ‘Order’, perhaps misspelled or defined by a module not included in the server configuration – загрузите модуль mod_access_compat, или обновите конфигурации в соответствии с синтаксисом директив авторизации версии 2.4.
    • Ignoring deprecated use of DefaultType in line NN of /path/to/httpd.conf — удалите DefaultType и заменить другими конфигурационными настройками.
  • Ошибки обработки запросов:
    • configuration error: couldn’t check user: /path – загрузите модуль mod_authn_core.

Для описания всех изменений обратитесь к странице Новые функции .

Данная статья является переводом Upgrading to 2.4 from 2.2 .

Следующим шагом, после настройки и тестирования сайта на локалхосте, является выбор качественного и дешёвого интернет хостинга. Я перебрал довольно много решений и нашёл очень хороший вариант - 100 рублей в месяц! За эти деньги даётся профессиональный хостинг, с отличным аптаймом, с бесплатным доменом второго уровня в подарок (!) , с 2 гигабайтами места на SSD диске, с неограниченным количеством баз данных, с возможностью подключать неограниченное количество новых доменов (платить придётся только за каждый новый домен - 139 рублей). Вообще, всего хорошего так много, что проще всего посмотреть это .

Кстати, а ведь как здорово иметь собственное доменное имя! Хотя бы для того, чтобы сделать для себя красивый почтовый ящик, вместо чего-нибудь вроде [email protected]. Вот можно найти свой собственный домен. Например, я получил бесплатно домен сайт, я могу делать почтовые ящики: admin@сайт, alex@сайт, al@сайт и так далее - количество ящиков ничем не ограничено!

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

Гарант является доверенным посредником между Участниками при проведении сделки.

Поставим PHP 5.1.2. Где его достать? Здрасте, естественно на PHP.net. Выбираем самое близкое к себе зеркало и качаем себе ZIP. Пока качает сделаем соответствующий каталог под всё это дело по адресу /webservices/php/5/ — это делается специально, что-бы (на всякий случай) мы в любой момент могли поставить другую версию PHP и между ними переключиться.

Итак, в каталог /webservices/php/5/ мы разархивируем все файлы. Ничего сложного. Все более мение нормальные люди, знающие английский язык читают install.txt, и следуя инструкциям для соответствующих версий операционной системы и HTTP сервера. Нам актуален Apache 2.0.x on Microsoft Windows. Там есть пометка, что возможно, свеженький Apache 2 с MPM не будет нормально работать с PHP 5. У меня работает, но если у вас будут проблемы, можете отрубить всю эту красоту при помощи директивы Win32DisableAcceptEx.

PHP 5 я предпочитаю ставить как модуль для Apache 2 — оно немного безопасней.

Согласно рекомендациям, мы добавим путь до нашей инсталляции PHP в системный PATH. Для Windows XP идём в Control Panel и запускаем System, в закладке Advanced выбираем Environment Variables. Там,в разделе System variables выбираем в режиме редакции системную переменную Path, добавляем туда /webservices/php/5/ (с нужным символом диска и нужными слешами). Осталась мелочь — перезапустить систему.

Теперь нам нужно выбрать конфигурацию для PHP. С собой PHP приносит 2 версии конфигурации php.ini-dist и php.ini-recommended. Создатели рекомендуют использовать php.ini-recommended — он сконфигурирован для безопастности и скорости работы. Очень советую пересмотреть его и комментарии в нём. Я же предпочитаю php.ini-dist, с мелкими изменениями. Оба конфигурационных файла очень хорошо документированы, и настойчиво рекомендую вам со всем этим делом ознакомиться. Во первый я его ложу в директорию /webservices/apache/Apache2/conf — я разделяю конфигурации связанные с модулем и остальными случаями.

Мелкие изменения в php.ini (в php.ini я использую "/" слеши — оно прекрасно понимает):
error_reporting с E_ALL & ~E_NOTICE на E_ALL — разрабатываете проекты что бы в таком режиме небыло никаких сообщений об ошибок.

include_path делаю так, что бы оно могло брать PEAR — include_path = “.;/webservices/php/5/PEAR/” (незабудьте исправить слеши и символ диска).

upload_tmp_dir надо указать директорию для временный файлов, которые закачивают пользователи. Там они будут лежать, пока вы их не обработаете с move_uploaded_file или unlink. Для всего этого сделаем каталог /tmp и укажем его для ключа upload_tmp_dir.

extension_dir указываю путь до каталога с модулями PHP “/webservices/php/5/ext/”.

В разделе указываем SMTP сервер провайдера для ключа SMTP и адрес своей электронной почты для ключа sendmail_from.

В разделе для session.save_path укажем туже директорию /tmp — нам этого хватит для разработки.

В известном нам httpd.conf добавим (вполне можем сделать это в кoнце файла) сточки:

LoadModule php5_module "/webservices/php/5/php5apache2.dll" — Подгружаем модуль

AddType application/x-httpd-php .php — улазываем что.php файлы обрабатывает PHP процессор
и

PHPIniDir "/webservices/apache/Apache2/conf" — указываем где лежит php.ini

Сделаем apache.exe -t и видим Syntax OK. Пробуем запустить наш сервер. В какой-либо из наших каталогов, доступных через HTTP протокол, ложим файл phpinfo.php с таким содержанием (скорее всего мы положим его в наш www.example.com или default виртуальный сервер/хост):

и видим всю информацию о PHP. Это чистый, только со встроенными модулями, PHP 5.

Но, для разработки нам нужно на много больше — подключим несколько модулей: php_mbstring, php_curl, php_exif, php_gd2, php_mysql, php_pgsql, php_sqlite, php_mysqli. Вот только, проверьте, есть ли такие DLL в директории /webservices/php/5/ext/, а если нет, скачайте Collection of PECL modules и разархивируйте их в директорию /webservices/php/5/ext/.
С версией PHP 5.1 сразу идёт и модуль PDO, и тем, кто любит или хочет им пользоваться или ознакомиться, может себе его легко включить, достаточно подключить: php_pdo и соответствующие к нему библиотеки (к примеру, php_pdo_mysql для поддержки MySQL). Я лично, делаю большую ставку на PDO в будущем. Рестартуем наш Apache и вновь смотрим на phpinfo.php — видим что нами выбранные модули уже загрузились.

Вот и всё — у нас стоит PHP как модуль Apache 2. Более подробно обо всём вы можете прочесть на сайте PHP.net, а также советую запомнить вот это прекрасное место.

Хорошо Плохо

06 мая 2012
Оценка 1 Оценка 2 Оценка 3 Оценка 4 Оценка 5

Страница 1 из 2

Это руководство описывает, как можно установить Apache2 с mod_fcgid и PHP5 на Ubuntu 11.10. mod_fcgid является совместимой альтернативой старшего mod_fastcgi. Это позволяет выполнять скрипты с разрешения их владельцев, а не пользователь Apache.

Я не даю никаких гарантий, что это будет работать у Вас!

Предварительные замечания

В этой статье я использую Ubuntu server 11.10 с именем хоста server1.example.com и IP адресом 192.168.0.100 . В этом учебнике я создаю 2 виртуальных хоста Apache, www.example1.com и www.example2.com , чтобы продемонстрировать использование mod_fcgid.

Убедитесь, что вы вошли в систему с правами администратора:

Install dash as /bin/sh? - No

В дополнение к этому, мы должны отключить AppArmor:

Если Apache2 уже был установлен с PHP5 в виде модуля Apache, отключить модуль PHP5 сейчас:

И откройте /etc/php5/cgi/php.ini :

  • nano /etc/php5/cgi/php.ini

Раскомментируйте строку cgi.fix_pathinfo = 1 :

[...] ; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP"s ; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok ; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting ; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting ; of zero causes PHP to behave as before. Default is 1. You should fix your scripts ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...]

Открыто /etc/apache2/mods-available/fcgid.conf ... ... и добавьте строку PHP_Fix_Pathinfo_Enable 1 (эта строка не должна идти в раздел, потому что тогда вы получите сообщение об ошибке: PHP_Fix_Pathinfo_Enable cannot occur within <VirtualHost> section ): Затем перезагрузите Apache:

Затем мы создаем корневой документ и сделаем их принадлежащими пользователям / группе web1 соответственно web2:

root@server1:~# /usr/lib/apache2/suexec -V -D AP_DOC_ROOT="/var/www" -D AP_GID_MIN=100 -D AP_HTTPD_USER="www-data" -D AP_LOG_EXEC="/var/log/apache2/suexec.log" -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin" -D AP_UID_MIN=100 -D AP_USERDIR_SUFFIX="public_html" root@server1:~#

Поэтому мы не можем назвать бинарный PHP (/usr/lib/cgi-bin/php ), непосредственно, поскольку он находится за пределами корня Suexec. Suexec не принимает символические ссылки, единственный способ решить проблему заключается в создании сценария для каждого веб-сайта в подкаталоге /var/www ; скриптом будет называть бинарный /usr/lib/cgi-bin/php . Скрипт должен принадлежать пользователю и группе каждого веб-сайта, поэтому нам нужен сценарий для каждого веб-сайта. Я собираюсь создать оболочку скриптов в поддиректории /var/www/php-fcgi-scripts , например, /var/www/php-fcgi-scripts/web1 и /var/www/php-fcgi-scripts/web2 .

  • mkdir -p /var/www/php-fcgi-scripts/web1
  • mkdir -p /var/www/php-fcgi-scripts/web2
  • nano /var/www/php-fcgi-scripts/web1/php-fcgi-starter
  • nano /var/www/php-fcgi-scripts/web2/php-fcgi-starter
#!/bin/sh PHPRC=/etc/php5/cgi/ export PHPRC export PHP_FCGI_MAX_REQUESTS=5000 export PHP_FCGI_CHILDREN=8 exec /usr/lib/cgi-bin/php

PHPRC строка содержит каталог, в котором находится файл php.ini (например, /etc/php5/cgi/ переводится /etc/php5/cgi/php.ini ). PHP_FCGI_MAX_REQUESTS максимальное количество запросов до остановки fcgid процесса и его нового запуска. PHP_FCGI_CHILDREN определяет количество children, PHP, который будут запущены.

php-fcgi-starter скрипты должены быть исполняемым, и они (и на их каталогов) должны принадлежать пользователю веб-сайта и группы:

ServerName www.example1.com ServerAlias example1.com ServerAdmin DocumentRoot / var/www/web1/web / SuexecUserGroup web1 web1 Options + ExecCGI AllowOverride All AddHandler fcgid-скрипт. PHP FCGIWrapper / var/www/php-fcgi-scripts/web1/php-fcgi-starter. PHP Заказ позволяет, отрицает Позвольте от всех # Журнала ошибок / var/log/apache2/error.log # CustomLog / var/log/apache2/access.log сочетании ServerSignature Off
  • a2ensite web1
  • nano /etc/apache2/sites-available/web2
ServerName www.example2.com ServerAlias example2.com ServerAdmin Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. DocumentRoot /var/www/web2/web/ SuexecUserGroup web2 web2 Options +ExecCGI AllowOverride All AddHandler fcgid-script .php FCGIWrapper /var/www/php-fcgi-scripts/web2/php-fcgi-starter .php Order allow,deny Allow from all # ErrorLog /var/log/apache2/error.log # CustomLog /var/log/apache2/access.log combined ServerSignature Off
  • a2ensite web2

Убедитесь, что Вы заполните правильные пути (и правильное пользователей и групп в SuexecUserGroup линия). Впоследствии перезагрузить Apache.

Начиная с этого года (с 1 января 2015 г.) все владельцы сайтов, работающих под управлением CMS Joomla! 2.5, столкнулись с большой проблемой - официально прекращена поддержка данной линейки! Это значит, что доступный на сегодня релиз Joomla 2.5.28 является последним и больше обновлений не будет. Это, в свою очередь, ничем не грозит, а с другой стороны - не будет обновлений касающихся безопасности системы. Поэтому на оффициальном сайте Joomla! и в панели у правления (если вы обновились к последней версии 2.5.28) есть информация, согласно которой вам рекомендуется пройти обновление (мигрировать) с Joomla! 2.5.28 на Joomla! 3.

(последний доступный релиз для обновления на сегодня) весьма не прост, если у вас большой веб-сайт, использующий огромное количество сторонних расширений. Если же у вас небольшой, использующий минимум, расширений (компонентов, модулей, плагинов...) веб-сайт, то тогда процесс миграции для вас не будет затруднительным. Более сложным процессом окажется процесс обновления сайтов работающих на Joomla 1.5 (имеется возможность обновления и для них).

Как пример такой миграции, с Joomla 2.5.28 на Joomla 3.3.6, послужит видео, где вы увидите пример обновления небольшого сайта с минимум установленных расширений. К тому же более подробно процесс миграции описан ниже.

Процесс миграции с Joomla 2.5 на Joomla 3.x

Если же вы решились пойти на этот шаг, тогда, первым делом, что вам нужно сделать , это:

  1. Обновиться до последней доступной версии в линейке Joomla 2.5, а это Joomla 2.5.28.
  2. Удостовериться в соответствии программного обеспечения вашего сервера (хостинга) минимальным требованиям для работы Joomla 3.x. Версия PHP должна быть не ниже 5.3.10 (рекомендуется 5.4 +), а баз данных (MySQL) 5.1 +.
  3. Создать рерервную копию вашего сайта (файлов и баз данных).
  4. Определиться со списком всех установленных сторонних расширений, которые вам необходимы для дальнейшей работы и те, которые вы готовы удалить.
    Сторонними расширениями считаются все расширения, в которых в столбце "автор" указано не "Joomla! Project", но есть и те которые имеют другого автора, но вы не сможете их удалить, поскольку они являются системными расширениями и защищены от удаления (стоит значок замка).
    Вам потребуется зайти в "Менеджер расширений" > "Обновление" и проверить, нажав на соответствующую кнопку, наличие новых версий для ваших установленных расширений и обновить их в случае такой возможности. Далее перейти на вкладку "Управление" и выбрать там тип "Пакет", поскольку, при удалении все связанные с этим пакетом дополнения (компоненты, модули, плагины) будут автоматически деинсталированы. Далее по очереди удалите все ненужные расширения выбирая другой "тип". С оставшимися (нужными для работы сайта) вам придется определиться будут ли они совместимы с Joomla 3. У некоторых из них вы увидите информационный значок возле их версии, который проинформирует вас о доступной на сегодня версии (если она отличается, тогда вам придется вручную скачивать и устанавливать новую версию, поскольку в по началу, во вкладке "Обновление" не было обновлений для этого расширения). С другими расширениями, которые не имеют такого "информационного значка", придется разбираться вручную, узнавая на сайте разработчика о новых доступных версиях.
    Имеются два варианта развития: 1) ваши расширения имеют пакет совместимый как с Joomla! 2.5 так и с Joomla! 3 - тогда вы смело можете обновлять это расширение; 2) ваши расширения имеют один пакет для Joomla! 2.5 и другой для Joomla! 3 - тогда вам нужно будет деинсталлировать их (расширения) и после обновления до Joomla 3 установить новый пакет (внимание! после удаления некоторых расширений вы можете потерять имеющиеся данные).
    Не забудьте также и про ваш шаблон ! Если у него разные пакеты, тогда вам нужно его удалить, назначив по-умолчанию другой, желательно, родной шаблон (как и в нашем случае на видео).
  5. После того как вы удалили все расширения не совместимые с Joomla 3 вам необходимо зайти в "Общие настройки" на вкладку "Сервер" и выставить там значение параметра "Сообщение об ошибках" на "Максимум".
  6. Теперь зайдите в "Менеджер плагинов" и отключите там плагин "Система - Запомнить меня".
  7. Перейдите в меню "Компоненты" > "Обновление Joomla!" и кликнув на "Настройки" измените сервер обновлений на "Дистрибутивы Joomla с краткосрочной поддержкой". Сразу после сохранения настроек у вас должно появится сообщение о доступном обновлении до версии 3.3.6. Установите его! После успешной установки очистите кэш.
  8. Далее перейдите в "Менеджер расширений" и выберите слева подменю "База данных". Нажмите кнопку исправить.
  9. Далее перейдите в подменю "Поиск". Нажмите кнопку найти и обновите доступные для обновления новые версии расширений.
  10. Включите обратно плагин "Система - Запомнить меня".
  11. Перейдите в "Менеджер материалов", кликните на "Настройки" и выберите вкладку "Форма редактирования", где необходимо включить параметр "Save History".
  12. Установите свои новые расширения, включая новый шаблон, если это необходимо.
  13. Для завершения процедуры миграции необходимо удалить старый языковой пакет и установить новый, соответствующий новой версии Joomla! 3.3.6.

Всё! Надеемся, что и ваш процесс прошел также удачно!

Разьяснения о процессе миграции на нашем видео

Процесс проходил в точности как описано выше. Были удалены не нужные (не использующиеся и не совместимые с Joomla 3) расширения: Socbuttons, Xmap (был скачан новый пакет и установлен после перехода на Joomla 3), а также два плагина Core Design с которыми было решено прекратить работать.

А также был удален (требовалось по инструкции разработчика) и установлен еще на Joomla 2.5 новый пакет для JComments, поскольку новая версия компонента была совместима как с Joomla 2.5 так и с Joomla 3.

Хотелось бы рассказать как я устанавливал apache2 c php5 и mysql, а так же phpmyadmin на Debian, Ubuntu и Linux Mint в своей статье «Установка Apache2 с PHP5 и MySQL + phpmyadmin для Debian/Ubuntu/Mint». У меня установлен Debian, работать будет так же на Ubuntu и Linux Mint.

Я использую my_server.example.net — это доменное имя с 192.168.16.66- это его айпишник. Они будут отличны от ваших, и их можно настроить под себя. А посмотреть можно вот так:

# vim /etc/hosts [...] 192.168.16.66 my_server.example.net [...]

Я буду запускать все команды с привилегиями суперюзера, поэтому убедитесь, что вы вошли в вашу систему как администратор (root):

Установка Mysql

Когда я начал писать эту статью, то последняя версия mysql была 5, сейчас установим:

# apt-get install mysql-server mysql-client

В ходе установки, попросят ввести пароль для MySQL (для полного доступа, для рута) — это пароль будет одинаков как для root@localhost, так и для root@my_server.example.net. Его нужно ввести 2 раза.

Еще полезные статьи по теме:
1. 2. 3.
4.
5.

Установка apache2

Apache2 содержится в репозитории Ubuntu, как пакет, по этому я могу установить следующим образом:

# apt-get install apache2

После того как завершится установка, нужно перейти в свой ​​браузер на http://ip_server_or-IP (у меня это http://my_server.example.net), и вы должны увидеть страницу приветствия Apache2 (Это работает!), на английском «It’s works!». По этому если вы это увидели, то сервер работает нормально.

Домашняя директория с apache-м, по умолчанию, находится в /var/www на Debian, и файл конфигурации лежит в /etc/apache2/apache2.conf. Дополнительные конфигурации хранятся в подкаталогах, в таких как /etc/apache2/mods-enabled (для модулей Apache), /etc/apache2/sites-enabled (для виртуальных хостов), и /etc/apache2/conf.d.

Установка PhP5

Мы можем установить пхп и модуль для работы вот так:

# apt-get install php5 libapache2-mod-php5

Перезапускаем веб сервер чтобы все что установили вступило в силу:

Для того чтобы убедится что все хорошо работает у нас, нужно создать файл в домашней директории апача (если вы не меняли то он находится по пути /var/www) и добавим php код который будет выводить полезную информацию о установленных приложения (php, apache, модули и тд):

# vim /var/www/php_info.php

Открываем браузер и переходим на этот файл:
http://your_ip/php_info.php

Вы должны увидеть некоторые данные на экране. Чтобы была поддержка MySQL в PHP,нужно установить php5-mysql пакет. Сейчас я установлю полезные модули, по этому, если нужны они вам, то устанавливайте (они не помешают), так же можно выбрать самое необходимое и не ставить все что я ставлю себе.

# apt-cache search php5

Выберите те, которые вам нужны, и установить их так:

# apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-suhosin

Я установлю все перечисленное, оно не помешает мне. В этой установке содержатся модули для работы с шифрованием + для работы с кешем (улучшение работы пхп) + поддержка sqlite и еще много чего. Я не буду описывать каждый из них, если уж очень нужно будет, то напишите и я добавлю описание каждого из них и вам станет понятно, но гугл еще работает =)

Теперь перезагрузите сервер:

# /etc/init.d/apache2 restart

XCache — модуль для кэширования и оптимизации промежуточного кода PHP. У него есть пару аналогов, таких как Eaccelerator и APC. Я рекомендую, чтобы хотя бы один из них был установлен у вас он должен ускорить работу ваших страниц которые написаны на PHP.

XCache можно установить следующим образом:

# apt-get install php5-xcache

Перезапускаем апач:

# /etc/init.d/apache2 restart

Чтобы посмотреть весь список установленных модулей, выполните:

# php -m

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

Установка phpmyadmin

Если нужно установить именно phpmyadmin для работы с вашими базами, то сейчас мы это сделаем:

# apt-get install phpmyadmin

Мастер установки спросит какой веб -сервер вы используете (Web server to reconfigure automatically ): выбираем apache2, есть так же еще lighttpd. На следующий вопрос «Configure database for phpmyadmin with dbconfig-common ?» — отвечаем No. Хотя можно нажать и Yes, тогда установщик спросит пароль для пользователя admin (нужен для входа в phpmyadmin).

Чтобы начать пользоваться phpmyadmin, нужно открыть в браузере:
http://yourIP_or_server/phpmyadmin/

Вводим в поле логин «root», пароль вводим такой как вы создали для mysql.

Настройка mysql

попозже будет(через пару дней)

Настройка apache2

Тут я буду рассказывать основные настройки веб-сервера апач, но по мере возможности. Я с каждым разом редактирую данную статью и добавляю что — то новое в описание.

Виртуальные хосты (Virtualhosts).

Хочу начать я свою настройку с создания и настройки Virtualhosts (виртуальных хостов). Есть много разных способов чтобы создать виртуальные хосты, но я бы посоветовал данный метод (поискав и перебрал много вариантов и литературы, я выбрал именно его).

По умолчанию, веб-сервер апач «слушает» все IP-адреса которые доступны для виртуального сервера. Это не есть хорошо, по этому нужно подредактировать и настроить его на прослушивание только определенного ИП-адреса. Даже если Вы имеете только один IP адрес!

Делаем изменение в файле ports.conf:

# vim /etc/apache2/ports.conf [...] NameVirtualHost 192.168.16.66:80 [...]

Измените данный ИП-адрес на свой!

Делаем изменение в файле default:

# vim /etc/apache2/sites-available/default

Теперь я создам 1 виртуальный хост в качестве примера:

# vim /etc/apache2/sites-available/test ServerAdmin [email protected] # введите свой емейл ServerName 192.168.16.66 # замените на свой IP ServerAlias www.192.168.16.66 # замените на свой ИП-адрес или доменное имя DocumentRoot /var/www/192.168.16.66/public_html/ # домашняя директория для данного домена или сайта ErrorLog /var/www/192.168.16.66/logs/error.log # файл для хранения ошибок CustomLog /var/www/192.168.16.66/logs/access.log combined # # папка для хранения ошибок

Создадим папки которых нет:

# mkdir -p /var/www/192.168.16.66/ # mkdir -p /var/www/192.168.16.66/public_html # mkdir -p /var/www/192.168.16.66/logs

После всех изменений, нужно подключить данный домен в apache:

# a2ensite test

И перезагрузить веб-сервер:

# /etc/init.d/apache2 reload

Можно отключить данный сайт (виртуальный хост test)следующей командой:

# a2dissite test

Чтобы проверить работает ли все нормально, я скопирую файл (php_info):

# cp /var/www/php_info.php /var/www/192.168.16.66/public_html/

Можно открыть браузер и перейти:
http://192.168.16.66/php_info.php

Настройка PHP5

Все изменения нужно проводить в конфигурационном файле php.ini, сейчас мы его немного поправим:

# vim /etc/php5/apache2/php.ini [...] max_execution_time = 30 memory_limit = 64M error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR display_errors = Off log_errors = On error_log = /var/log/php.log register_globals = Off [...]

Вот и все, данная тема «Установка Apache2 с PHP5 и MySQL + phpmyadmin для Debian/Ubuntu/Mint» полностью раскрыта, можно использовать наш установленный LAMP.



Загрузка...