Eu estou usando salt
a provisão meus servidores, e eu apenas tentei fazer o upgrade para php 7 e, apesar de tudo é instalar corretamente, sempre que eu executar php -v
ou executar qualquer php qualquer coisa que jogar isso na cabeça de qualquer saída: Cannot load Zend OPcache - it was already loaded
. Se eu desinstalar, se eu vir isso,Failed loading /usr/lib64/php/modules/opcache.so: /usr/lib64/php/modules/opcache.so: cannot open shared object file: No such file or directory
Aqui está a saída completa de php-v
com e sem o php-opcache
instalado.
Com
Cannot load Zend OPcache - it was already loaded
PHP 7.0.1 (cli) (built: Dec 16 2015 15:31:55) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
with Xdebug v2.4.0RC3, Copyright (c) 2002-2015, by Derick Rethans
Com fora
Failed loading /usr/lib64/php/modules/opcache.so: /usr/lib64/php/modules/opcache.so: cannot open shared object file: No such file or directory
PHP 7.0.1 (cli) (built: Dec 16 2015 15:31:55) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
with Xdebug v2.4.0RC3, Copyright (c) 2002-2015, by Derick Rethans
Eu instalo com isso (no arquivo de estado salt)
remi-php70-repo:
pkgrepo.managed:
- humanname: Remi PHP 7 Repository
- baseurl: http://rpms.famillecollet.com/enterprise/$releasever/php70/$basearch/
- gpgcheck: 0
- require_in:
- pkg: php-fpm
php-fpm:
pkg.latest:
- pkgs:
- php-fpm
php-opcache:
pkg.latest:
- pkgs:
- php-opcache
E eu sei que ele está instalando a partir do repositório 7.0 com base em um yum install php-opcache
e depois umphp -v
saída terminal
[root@mage2appblock vagrant]# yum install php-opcache
Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile
epel/metalink | 14 kB 00:00
* base: mirror.spro.net
* epel: mirrors.cat.pdx.edu
* extras: mirror.keystealth.org
* updates: mirror-centos.hostingswift.com
base | 3.7 kB 00:00
centos-plus-repo | 3.4 kB 00:00
epel | 4.3 kB 00:00
epel/primary_db 35% [============- ] 0.0 B/s | 2.1 MB --:-- ETA epel/primary_db | 5.7 MB 00:00
extras | 2.9 kB 00:00
mysql56-community-repo | 2.5 kB 00:00
remi-php70-repo | 2.9 kB 00:00
remi-rep | 2.9 kB 00:00
remi-rep/primary_db 7% [== ] 0.0 B/s | 97 kB --:-- ETA remi-rep/primary_db 37% [============= ] 655 kB/s | 510 kB 00:01 ETA remi-rep/primary_db | 1.3 MB 00:00
repo-saltstack-el6 | 2.9 kB 00:00
updates | 3.4 kB 00:00
Resolving Dependencies
--> Running transaction check
---> Package php-opcache.x86_64 0:7.0.1-1.el6.remi will be installed
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================
Package Arch Version Repository Size
========================================================================================================================
Installing:
php-opcache x86_64 7.0.1-1.el6.remi remi-php70-repo 135 k
Transaction Summary
========================================================================================================================
Install 1 Package(s)
Total download size: 135 k
Installed size: 378 k
Is this ok [y/N]: y
Downloading Packages:
php-opcache-7.0.1-1.el6.remi.x86_64.rpm 18% [======- ] 0.0 B/s | 25 kB --:-- ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm 31% [=========== ] 27 kB/s | 43 kB 00:03 ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm 38% [=============- ] 28 kB/s | 52 kB 00:02 ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm 48% [================- ] 29 kB/s | 65 kB 00:02 ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm 55% [===================- ] 29 kB/s | 75 kB 00:02 ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm 69% [======================== ] 31 kB/s | 94 kB 00:01 ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm 90% [===============================- ] 35 kB/s | 122 kB 00:00 ETA php-opcache-7.0.1-1.el6.remi.x86_64.rpm | 135 kB 00:02
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : php-opcache-7.0.1-1.el6.remi.x86_64 1/1
Verifying : php-opcache-7.0.1-1.el6.remi.x86_64 1/1
Installed:
php-opcache.x86_64 0:7.0.1-1.el6.remi
Complete!
[root@mage2appblock vagrant]# php -v
Cannot load Zend OPcache - it was already loaded
PHP 7.0.1 (cli) (built: Dec 16 2015 15:31:55) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
with Xdebug v2.4.0RC3, Copyright (c) 2002-2015, by Derick Rethans
Não consegui encontrar nada relacionado a isso. Alguma idéia seria ótima.
Observações que podem ser úteis:- Este é um
vagrant
servidor carregando o CentOS 6.5 - O provisionamento é fornecido via
salt
- a instalação está limpa quando
salt
é executada
Atualizações
Então, eu tentei instalar o Zen Opcache pensando que ele era compatível com o php 7, não é. Estou tentando examinar o que está carregando ou se há algum problema com o arquivo opcache.ini que eu provisiono. Talvez haja algumas novas configurações com o php5 passando para o php 7 nessa área.
ls -la /etc/php/7.0/cli/conf.d
e, com certeza, havia dois links simbólicos opcache lá:10-opcache.ini
e20-opcache.ini
. Dos dois20-opcache.ini
tinham o carimbo de data / hora mais antigo, então eu apaguei o link simbólico (sudo rm /etc/php/7.0/cli/conf.d/20-opcache.ini
) e tudo está bem agora. Obrigado!