Днес реших да опитам какво е поведението на PHP 7.0.3, заменяйки PHP 5.6.18 върху този уеб сървър. На него се използват wordpress, piwik, owncloud, awstats, roundcube, cacti.
Не се наблюдаваха съществени проблеми, изключвайки отсъствието на често използваните extensions pecl-memcache, pecl-redis и php-mysql ( за щастие има php-mysqli което налага промяна на конфигурацията в някой от софтуерите – в моят случай roundcube ).
Процесът изискваше изпълнение на следната команда:
portmaster -o lang/php70 php56 повторено “n” пъти за всеки от инсталираните php56 extensions. На моменти се случва така че да трябва да се размени редът който сте си приготвили, за да може да се компилират нещата ( при мен подредбата изглежда така ).
За да се използва redis поради това че няма готов freebsd port се прави следното:
git clone -b php7 https://github.com/phpredis/phpredis.git
mv phpredis/ /etc/ && cd /etc/phpredis
phpize && ./configure && make && make install
cd /etc && rm -rf phpredis
echo ‘extension=redis.so’ >> /usr/local/etc/php/extensions.ini
проверява се дали модулът се е инсталиран с командата „php –ri redis” .
Mоже отново да се използва owncloud със следната конфигурация и възползвайки се от ускорението което му дава redis:
‘memcache.local’ => ‘\\OC\\Memcache\\Redis’,
‘filelocking.enabled’ => ‘true’,
‘memcache.distributed’ => ‘\\OC\\Memcache\\Redis’,
‘memcache.locking’ => ‘\\OC\\Memcache\\Redis’,
‘redis’ =>
array (
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0,
‘dbindex’ => 0,
),
За да накарате cacti да заработи отново направете следното:
cd /usr/local/share && mv cacti cacti.port && git clone https://github.com/Cacti/cacti.git
cp cacti.port/include/config.php cacti/include/ && chown -R www:www cacti