[РЕШЕНО] PHP7 (Как поставить?)

Sabayon, Calculate, Funtoo, Exherbo

Модератор: /dev/random

Ответить
Аватара пользователя
devilr
Сообщения: 3665
ОС: Mandriva => Gentoo (~amd64)
Контактная информация:

[РЕШЕНО] PHP7

Сообщение devilr »

Есть машина с gentoo на борту. Требуется поднять на ней "сервер" с последним apache и php7 на борту. Не могу понять как.
Php5 в своем время ставил по wiki. Все было нормально. А вот где найти документацию по php7? По сети валяются отрывочные советы по настройке, причем в основном перемешанные с php5.
Если кто имел уже подобный опыт - отзовитесь пожалуйста!
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Эхо разума
Спасибо сказали:
Kopilov
Сообщения: 947
ОС: [K]Ubuntu, Debian

Re: [РЕШЕНО] PHP7

Сообщение Kopilov »

PHP7 уже есть в Portage. Возникли какие-то трудности?

Попробовал сейчас его поставить (система свежая) -- отличий в процессе установки от пятой верси не обнаружил. Процесс выглядит примерно так:
в portage/package.use дописываем "dev-lang/php apache2" (и другие необходимые модули PHP. При сборке на десктопе система попросит включить gd);
в portage/package.accept_keywords дописываем "www-servers/apache ~amd64", если действительно нужна последняя версия Apache;
пробуем поставить: emerge -av php:7.0
Будет предложено ещё отредактировать конфиги -- соглашаемся (Enter, dispatch-conf), ставим (emerge -av php:7.0 ещё раз).
После установки надо включить PHP в конфигах Apache: в файле /etc/conf.d/apache2 добавить " -D PHP" в переменную APACHE2_OPTS.
Далее, как любой демон: /etc/init.d/apache2 start; rc-update add apache2 default -- должно работать.
Спасибо сказали:
Аватара пользователя
devilr
Сообщения: 3665
ОС: Mandriva => Gentoo (~amd64)
Контактная информация:

Re: [РЕШЕНО] PHP7

Сообщение devilr »

В portage это есть уже давно. Ставится без проблем.
Это то как раз вполне работает. Непонятно, как настраивать всякие

Код: Выделить всё

<IfModule mod_php.c>
Если оставить так как есть, то php код просто не отрабатывается.
Проблема именно в полной настройки всего. Точнее в разнице между настройкой php5 и php7. Или я не там смотрю...
P.S. Допустим ранее (в php5) в APACHE2_OPTS ставили "-D PHP5" а теперь получается, что надо просто "-D PHP"? Хотя, если сопоставить, то вроде как должно быть "-D PHP7" Явно где то должна быть внятная документация по всему этому. Но я ее не вижу.
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Эхо разума
Спасибо сказали:
Аватара пользователя
devilr
Сообщения: 3665
ОС: Mandriva => Gentoo (~amd64)
Контактная информация:

Re: [РЕШЕНО] PHP7

Сообщение devilr »

Проблема решена! Как всегда дело в моей невнимательности.
Просто надо обращать внимание на deprecated функции. В какой-то момент они отключаются совсем (я про mysql_connect и иже с ними).
В моем случае решением было: в APACHE2_OPTS прописать "-D PHP" вместо "-D PHP5" и для сайта указание mysqli вместо mysql
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Эхо разума
Спасибо сказали:
Аватара пользователя
saikov
Сообщения: 183
ОС: Mageia

Re: [РЕШЕНО] PHP7

Сообщение saikov »

Сделал сегодня emerge -vuND world и система предложила обновить php5.6 на php7.0
1. Прописал в make.conf

Код: Выделить всё

PHP_TARGETS="php5-6 php7-0"
PHP_INI_VERSION="production"

Переключил

Код: Выделить всё

mail ~ # eselect php list cli
  [1]   php5.6
  [2]   php7.0 *


Меняю в APACHE2_OPTS "-D PHP5.6" на "-D PHP"

Перезапускаю Apache и в его логах вижу, что он работает до сих пор с php 5.6
[Mon Feb 20 20:16:05.016525 2017] [mpm_prefork:notice] [pid 1318] AH00163: Apache/2.4.25 (Unix) OpenSSL/1.0.2k PHP/5.6.30-pl0-gentoo mod_wsgi/4.5.7 Python/3.4 configured -- resuming normal operations
[Mon Feb 20 20:16:05.016622 2017] [core:notice] [pid 1318] AH00094: Command line: '/usr/sbin/apache2 -D PHP -D WSGI -D PROXY -D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -d /usr/lib64/apache2 -f /etc/apache2/httpd.conf'


Что не так? Сайты которые крутятся на сервере работают.
Спасибо сказали:
Аватара пользователя
saikov
Сообщения: 183
ОС: Mageia

Re: [РЕШЕНО] PHP7

Сообщение saikov »

Разобрался. Забыл переключить

Код: Выделить всё

eselect php set apache2 2


Но теперь не работает roundcube

Код: Выделить всё

[Mon Feb 20 20:47:43.936078 2017] [:error] [pid 4274] [client 172.16.0.39:51577] PHP Warning:  Declaration of rcmail::get_instance($env = '') should be compatible with rcube::get_instance($mode = 0, $env = '') in /var/www/localhost/htdocs/roundcube/program/include/rcmail.php on line 30, referer: https://mail.gb2bel.ru/?_task=mail&_mbox=INBOX

Спасибо сказали:
Аватара пользователя
ieleja
Сообщения: 307
ОС: Debian 9, macOS, Windows
Контактная информация:

Re: [РЕШЕНО] PHP7

Сообщение ieleja »

saikov писал(а):
20.02.2017 20:49
Но теперь не работает roundcube


версия?
ad infinitum
Спасибо сказали:
Ответить