Установка LAMP в Ubuntu 14.04LTS
LAMP в Ubuntu устанавливаем по любой из инструкций, имеющихся в сети. Например Установка и настройка веб-сервера LAMP для разработки на PHP
Для начала даем команду:
После изменений в конфигурации нужно делать рестарт апача
sudo service apache2 restart
Или
Do you want to restartApache, or do you want to gracefully reloadits configuration?
Everyone was answering the first question; you can do the second with
sudo apache2ctl graceful
or
sudo /etc/init.d/apache2 reload
Gracefully reloading is a bit faster, and there's no downtime. There's one caveat: if your apache config files contain an error, the server will silently exit without printing any error messages to the console.
to check which apache modules are enabled/installed?
/usr/sbin/httpd -M
To enable a module:
To disable a module:
sudo a2dismod module_name
Restart the server after enabling the module.
sudo /etc/init.d/apache2 restart
Установка php 5.2 вместе с имеющимся в текущей версии
Использовались советы из этих источников:
При компиляции php5.2 были ошибки, решение для некоторых (не обозначенных по ссылкам выше)
1) If you get lots of:
configure: error: Cannot find libXXX under /usr.
when you attempt to ./configure
PHP 5.2.x (and possibly earlier series as well), try appending:
--with-libdir=lib/x86_64-linux-gnu
This instructs the script to look for libraries under /usr/lib/x86_64-linux-gnu
instead of /usr/lib
. If this doesn’t work for you, try running:
$ sudo updatedb
$ locate 'libXXX' | grep 'so$'
Which should output the directory where the binary libXXX
(e.g., libmysqlclient
) is installed.
If you also see this at the linking stage:
ext/openssl/xp_ssl.c: undefined reference to `SSLv2_server_method'
You would want to patch your 5.2.17 source with debianpatchesdisableSSLv2foropenssl100.patch.
Еще одна инструкция с описанием ошибок и методов их исправления, на русском.
После установки php нужно активировать моды actions, mod_rewrite
sudo a2enmod cgi fastcgi actions
mod_rewrite
Сначала скомпилировал без --enable-mbstring, не заработал vtiger. Пришлось перекомпилировать при помощи команды
Далее make и make install
Настройка виртуальных серверов
Активируем дополнительные модули
Для работы некоторых сайтов нужно иметь дополнительные модули, которые и доустанавливаем. Например, для vtiger нужно следующее
- Apache 2.1+
- MySQL 5.1+ (default storage engine = InnoDB)
- PHP 5.2+, 5.3
- php-imap
- php-curl
- php-xml
- max_memory (min. 256MB)
- max_execution_time (min. 60 seconds)
- error_reporting (E_ALL & ~E_NOTICE & ~E_DEPRECATED)
1. php модули можно устанавливать через apt-get install, а можно и при помощи synaptic
После установки нужно активировать добавленные модули, для этого добавить в php.ini строчки
extension=imap.so
extension=zip.so
extension=timezonedb.so
Заодно правим php.ini в соответствии с требованиями выше.
После правки sudo /etc/init.d/apache2 restart
На этом мучения по установке сервера не закончились. Оказалось, что vtiger 5.4 не работает на php 5.5, а vtiger 6.1 - на php 5.2. Чтобы получить нормальную русификацию vtiger 5.4 перешел на salesplatform.ru 5.4. Все удачно обновилось на старом сервере под ubuntu 12.04 и php 5.3.
инструкция по компиляции php 5.3 здесь. Все установилось без проблем. Но как его прикрутить к серверу для вызова через fastcgi я так и не разобрался. Так что пока осталось 2 версии - 5.2.17 и 5.5.29. Практически все сайты которые у меня есть, на последней версии не работают. Пользуюсь подключением модуля php5.2 в файле конфигурации сайта.
Установка vtiger v.6.1
Та еще песня. Миграцию с версии 5,4 на версию 6,0 мне произвести не удалось. Зависал процесс на последней стадии установки (с бегающим бегунком). Кстати, с официального сайта патч этот убрали.
Удалось только с танцами с бубном установить чистую версию v.6.1. После курения форума vtiger выяснилось, что требования к памяти и таймаутам, рекомендуемые в руководстве, совершенно недостаточные.
Пришлось установить следующие параметры в php.ini
max_execution_time = 3600
max_input_time = -1
memory_limit = 500M
После довольно длительного ожидания вывелась страница с конфигурацией vtiger. Бинго!
Что теперь делать с этой версией не знаю. Salesplatform 5.4 вроде работает нормально. Патча по миграции на их сайте пока нет.
Менеджеры версий php
Пока мучился с компиляцией различных версий php, наткнулся на вот такие интересные вещи, как менеджеры версий php
http://phpbrew.github.io/phpbrew/
https://github.com/CHH/phpenv
https://github.com/wilmoore/php-version
PhpBrew. Менеджер версий PHP. (+ установка и использование в Ubuntu 13.10)
Репозиторий версий php
add-apt-repository ppa:ondrej/php
У меня на линукс-минт не заработал - пишет что не поддерживается версия. Везде на этот ppa ссылаются, метод копируют все один и тот же.
Этот ppa не поддерживает многие версии ubuntu
У меня linux mint 18
HTTP Error 403: Forbidden
Не удаётся добавить PPA: «'Данный PPA не поддерживает bionic'».