LINUX.ORG.RU
ФорумAdmin

centos php opcache install

 ,


0

1

есть centos6,8 и php5.6.26 но почему то не установлен zend opcache, phpinfo/php -m не отображают opcache
попытался установить такие варианты php-opcache, php56-opcache, php56w-opcache но yum не подсвечивает эти пакеты
в итоге нашел такой пакет php56-php-opcache.x86_64 поставил,ребутнул httpd но не помогло
подскажите что делать

Ответ на: комментарий от Deleted

да в /etc/php.ini добавил в конец код и перегрузил httpd
[opcache]
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.max_wasted_percentage=5
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.fast_shutdown=1

также добавлю что в директоррии /etc/php.d/ нету opcache

kommersant ★★
() автор топика
Ответ на: комментарий от Deleted

вот что получаю
yum install php-pecl-zendopcache.x86_64
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
* epel: mirror.cs.princeton.edu
* remi-safe: repo1.ash.innoscale.net
Resolving Dependencies
--> Running transaction check
---> Package php-pecl-zendopcache.x86_64 0:7.0.5-1.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-zendopcache-7.0.5-1.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-pecl-zendopcache-7.0.5-1.el6.x86_64
--> Processing Dependency: /usr/bin/pecl for package: php-pecl-zendopcache-7.0.5-1.el6.x86_64
--> Processing Dependency: /usr/bin/pecl for package: php-pecl-zendopcache-7.0.5-1.el6.x86_64
--> Running transaction check
---> Package php-pear.noarch 1:1.9.4-5.el6 will be installed
---> Package php-pecl-zendopcache.x86_64 0:7.0.5-1.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-zendopcache-7.0.5-1.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-pecl-zendopcache-7.0.5-1.el6.x86_64
--> Finished Dependency Resolution
Error: Package: php-pecl-zendopcache-7.0.5-1.el6.x86_64 (epel)
Requires: php(zend-abi) = 20090626
Installed: php-common-5.6.26-1.el6.remi.x86_64 (@remi-php56)
php(zend-abi) = 20131226-64
Available: php-common-5.3.3-47.el6.x86_64 (base)
php(zend-abi) = 20090626
Available: php-common-5.3.3-48.el6_8.x86_64 (updates)
php(zend-abi) = 20090626
Error: Package: php-pecl-zendopcache-7.0.5-1.el6.x86_64 (epel)
Requires: php(api) = 20090626
Installed: php-common-5.6.26-1.el6.remi.x86_64 (@remi-php56)
php(api) = 20131106-64
Available: php-common-5.3.3-47.el6.x86_64 (base)
php(api) = 20090626
Available: php-common-5.3.3-48.el6_8.x86_64 (updates)
php(api) = 20090626
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

kommersant ★★
() автор топика

Из какого репозитория установлен php 5.6.26 ? Киньте вывод

yum repolist
rpm -qa | grep php

И не слушайте господ, которые рекомендуют ставить что-то напрямую из pecl. Впоследствии сами огребете проблем. Из того, что я вижу, у вас неправильно подключены репозитории, в частности Remi.

trancefer ★★
()
Ответ на: комментарий от trancefer

yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* epel: mirror.cs.princeton.edu
* remi-safe: repo1.ash.innoscale.net
repo id repo name status
base CentOS-6 - Base 6.696
epel Extra Packages for Enterprise Linux 6 - x86_64 12.228
extras CentOS-6 - Extras 62
remi-safe Safe Remi's RPM repository for Enterprise Linux 6 - x86_64 978
updates CentOS-6 - Updates 603
repolist: 20.567



rpm -qa | grep php
php-cli-5.6.26-1.el6.remi.x86_64
php-xml-5.6.26-1.el6.remi.x86_64
php-mbstring-5.6.26-1.el6.remi.x86_64
php-gd-5.6.26-1.el6.remi.x86_64
php56-php-common-5.6.28-1.el6.remi.x86_64
php-pecl-jsonc-1.3.10-1.el6.remi.5.6.x86_64
php-pecl-zip-1.13.4-1.el6.remi.5.6.x86_64
php-devel-5.6.26-1.el6.remi.x86_64
php-pdo-5.6.26-1.el6.remi.x86_64
php-xmlrpc-5.6.26-1.el6.remi.x86_64
php-5.6.26-1.el6.remi.x86_64
php-intl-5.6.26-1.el6.remi.x86_64
php-imap-5.6.26-1.el6.remi.x86_64
php56-php-pecl-zip-1.13.5-1.el6.remi.x86_64
php56-php-pecl-jsonc-1.3.10-1.el6.remi.x86_64
php-pear-1.9.4-5.el6.noarch
php56-php-opcache-5.6.28-1.el6.remi.x86_64
php-common-5.6.26-1.el6.remi.x86_64
php-pecl-jsonc-devel-1.3.10-1.el6.remi.5.6.x86_64
php-mysqlnd-5.6.26-1.el6.remi.x86_64
php-mcrypt-5.6.26-1.el6.remi.x86_64
php56-runtime-2.1-5.el6.remi.x86_64

что с этим делать?

kommersant ★★
() автор топика
Ответ на: комментарий от trancefer

pecl update запретили? У него там просто трэш с репозиториями и yum search opcache ему, как я вижу, не помог. В сторонних репах опкеш может быть и не собран даже.

Deleted
()
Ответ на: комментарий от kommersant

php56-php-opcache-5.6.28-1.el6.remi.x86_64

Установлен. Теперь разбирайся какой конфиг ты правил. Посмотри путь в phpinfo до своего конфига и поправь его.

Deleted
()
Ответ на: комментарий от Deleted

Loaded Configuration File /etc/php.ini
в конец добавил
[opcache]
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.max_wasted_percentage=5
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.fast_shutdown=1

httpd restart не помогает

kommersant ★★
() автор топика
Ответ на: комментарий от Deleted

не получается
systemctl restart php-fpm systemctl: command not found
пробовал еще так
service php-fpm restart php-fpm: unrecognized service
service php5-fpm restart
php5-fpm: unrecognized service
service php56-fpm restart
php56-fpm: unrecognized service

kommersant ★★
() автор топика
Ответ на: комментарий от Deleted

Упс

ну да, ну да. при рекомендованном тобою способе установки через ж оно конечно же само собою попадёт в /etc/rc.d/init.d . да.

novitchok ★★★★★
()
Ответ на: комментарий от novitchok

я рекомендовал ему ставить php-fpm?

Deleted
()
Ответ на: комментарий от kommersant

попытался поставить xcache
yum install php-xcache.x86_64
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
* epel: mirror.cs.princeton.edu
* remi-safe: repo1.ash.innoscale.net
Resolving Dependencies
--> Running transaction check
---> Package php-xcache.x86_64 0:3.0.4-1.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-xcache-3.0.4-1.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-xcache-3.0.4-1.el6.x86_64
--> Finished Dependency Resolution
Error: Package: php-xcache-3.0.4-1.el6.x86_64 (epel)
Requires: php(api) = 20090626
Installed: php-common-5.6.26-1.el6.remi.x86_64 (@remi-php56)
php(api) = 20131106-64
Available: php-common-5.3.3-47.el6.x86_64 (base)
php(api) = 20090626
Available: php-common-5.3.3-48.el6_8.x86_64 (updates)
php(api) = 20090626
Error: Package: php-xcache-3.0.4-1.el6.x86_64 (epel)
Requires: php(zend-abi) = 20090626
Installed: php-common-5.6.26-1.el6.remi.x86_64 (@remi-php56)
php(zend-abi) = 20131226-64
Available: php-common-5.3.3-47.el6.x86_64 (base)
php(zend-abi) = 20090626
Available: php-common-5.3.3-48.el6_8.x86_64 (updates)
php(zend-abi) = 20090626
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

kommersant ★★
() автор топика
Ответ на: комментарий от kommersant

В Remi пакеты имеющие префикс php56- устанавливаются в /opt из репозитория remi. Судя по вашим сообщениям это не то, что вам нужно. Соответсвенно:

  • удаляйте все пакеты с префиксом php56-
  • отключайте репозиторий remi и включайте remi-safe и remi-php56
  • yum clean metadata

После этого у вас появится пакет php-opcache:

yum info php-opcache
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.yandex.ru
 * centosplus: mirror.yandex.ru
 * contrib: mirror.yandex.ru
 * elrepo: mirror.imt-systems.com
 * epel: mirror.yandex.ru
 * extras: mirror.yandex.ru
 * openvz-kernel-rhel6: mirror.yandex.ru
 * openvz-utils: mirror.yandex.ru
 * remi-php56: mirror.h1host.ru
 * remi-safe: mirror.h1host.ru
 * updates: mirror.yandex.ru
Available Packages
Name        : php-opcache
Arch        : x86_64
Version     : 5.6.28
Release     : 1.el6.remi
Size        : 124 k
Repo        : remi-php56
Summary     : The Zend OPcache
URL         : http://www.php.net/
License     : PHP
Description : The Zend OPcache provides faster PHP execution through opcode caching and
            : optimization. It improves PHP performance by storing precompiled script
            : bytecode in the shared memory. This eliminates the stages of reading code from
            : the disk and compiling it on future access. In addition, it applies a few
            : bytecode optimization patterns that make code execution faster.

trancefer ★★
()
Ответ на: комментарий от Deleted

Трэш с репозиториями решается на раз-два при понимании что к чему. opcache в remi есть.

trancefer ★★
()
Ответ на: комментарий от trancefer

Для этого и просил phpinfo

Трэш решается когда понимаешь что делаешь. В противном случае все бывает весело. А может просто путь прописать к расширению?

Deleted
()
Ответ на: комментарий от Deleted

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

trancefer ★★
()
Ответ на: комментарий от trancefer

yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/metalink | 12 kB 00:00
* epel: mirror.cs.princeton.edu
* remi-safe: repo1.ash.innoscale.net
base | 3.7 kB 00:00
extras | 3.4 kB 00:00
remi-safe | 2.9 kB 00:00
remi-safe/primary_db | 423 kB 00:00
updates | 3.4 kB 00:00
repo id repo name status
base CentOS-6 - Base 6.696
epel Extra Packages for Enterprise Linux 6 - x86_64 12.228
extras CentOS-6 - Extras 62
remi-safe Safe Remi's RPM repository for Enterprise Linux 6 - x86_64 982
updates CentOS-6 - Updates 603
repolist: 20.571

remi не вижу,вижу remi-safe
получается нужно подключить репозиторий remi-php56 ?

kommersant ★★
() автор топика
Ответ на: комментарий от trancefer

залез в файл /etc/yum.repos.d/remi.repo
[remi-php55]
name=Remi's PHP 5.5 RPM repository for Enterprise Linux 6 - $basearch
#baseurl=http://rpms.remirepo.net/enterprise/6/php55/$basearch/
mirrorlist=http://rpms.remirepo.net/enterprise/6/php55/mirror
# NOTICE: common dependencies are in «remi-safe»
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

[remi-php56]
name=Remi's PHP 5.6 RPM repository for Enterprise Linux 6 - $basearch
#baseurl=http://rpms.remirepo.net/enterprise/6/php56/$basearch/
mirrorlist=http://rpms.remirepo.net/enterprise/6/php56/mirror
# NOTICE: common dependencies are in «remi-safe»
#enabled=0
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

затем запустил команду yum install php-opcache.x86_64
и выдало кучу зависимостей
Dependencies Resolved

=================================================================================================================================================================================================
Package Arch Version Repository Size
=================================================================================================================================================================================================
Installing:
php-opcache x86_64 5.6.28-1.el6.remi remi-php56 124 k
Updating for dependencies:
php x86_64 5.6.28-1.el6.remi remi-php56 2.7 M
php-cli x86_64 5.6.28-1.el6.remi remi-php56 4.0 M
php-common x86_64 5.6.28-1.el6.remi remi-php56 1.1 M
php-devel x86_64 5.6.28-1.el6.remi remi-php56 1.2 M
php-gd x86_64 5.6.28-1.el6.remi remi-php56 78 k
php-imap x86_64 5.6.28-1.el6.remi remi-php56 77 k
php-intl x86_64 5.6.28-1.el6.remi remi-php56 210 k
php-mbstring x86_64 5.6.28-1.el6.remi remi-php56 968 k
php-mcrypt x86_64 5.6.28-1.el6.remi remi-php56 49 k
php-mysqlnd x86_64 5.6.28-1.el6.remi remi-php56 276 k
php-pdo x86_64 5.6.28-1.el6.remi remi-php56 118 k
php-xml x86_64 5.6.28-1.el6.remi remi-php56 220 k
php-xmlrpc x86_64 5.6.28-1.el6.remi remi-php56 68 k

Transaction Summary
=================================================================================================================================================================================================
Install 1 Package(s)
Upgrade 13 Package(s)

Total download size: 11 M

непонятно почему оно не видит текущие пакеты

kommersant ★★
() автор топика
Ответ на: комментарий от kommersant

В общем тут выше тебе предложили снести все php56 и поставить заново. Я же прописал бы на твоем месте полный путь до файла opcache.so - сервак не твой, пусть хозяин и разбирается.

Deleted
()
Ответ на: комментарий от kommersant

Не видит, потому что часть установлена в /opt. Для того чтобы «увидел» необходимо либо все пакеты ставить с префиксом php56, тогда они пропишуться в /opt. Либо ставить без префикса, и тогда они затрут/обновят версию PHP 5.3 которая поставляется с CentOS.

trancefer ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.