Portál AbcLinuxu, 6. května 2025 07:35

Dotaz: Lze zprovoznit opcache na lighttpd? (php 7.2)

23.11.2018 14:51 MilanC | skóre: 16
Lze zprovoznit opcache na lighttpd? (php 7.2)
Přečteno: 313×
Odpovědět | Admin
Ahoj, od rána s tím neúspěšně bojujeme. Lze to vůbec rozchodit? Je potřeba nějaká podpora ze strany webserveru nebo je to jen věcí PHP? Používáme FPM. Jinak všechny hodnoty opcache.* se nám skrze php.ini daří měnit, krom té jediné opcache.enable.

V phpinfo() máme v Master On, ale v local vždy "off" a nedaří se nám to přesvědčit. Screenshot from 2018-11-23 12-58-35.png - Disk Google

Všichni to řeší většinou jen na apache/nginx. Nějaký nápad? Nebo je to slepá cesta? Díky.

Řešení dotazu:


Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

23.11.2018 14:54 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Odpovědět | | Sbalit | Link | Blokovat | Admin
https://drive.google.com/file/d/1b5rghk9TUZ2_z2ssP8rmXhZ3Pb6RUwHy/view
23.11.2018 19:39 Vantomas | skóre: 32 | Praha
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Odpovědět | | Sbalit | Link | Blokovat | Admin

Nevypíná si to sama aplikace někde přes ini_set?

 

https://stackoverflow.com/questions/19520744/what-is-the-difference-between-local-value-and-master-value

master is either the value compiled into PHP, or set via a main php.ini directive. e.g. The value that's in effect when PHP fires up, before it executes any of your code.

local is the value that's currently in effect at the moment you call phpinfo(). This local value is the END result of any overrides that have taken place via ini_set() calls, php_value directives in httpd.conf/.htaccess, etc...

e.g.

php.ini: foo=bar
httpd.conf: php_value foo baz
.htaccess: php_value foo qux
ini_set: ini_set('foo', 'kittens');

Given that, the master value is qux, and the local value is kittens.

23.11.2018 19:43 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
To nás napadlo, ale zkoušeli jsme čistou php stránku, žádný .htaccess aj. Asi to zkusím v čistém virtuálu. Jen mě zajímalo ,jestli to vůbec někomu funguje.
Max avatar 23.11.2018 19:48 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Je to věcí jen php a s lighttpd by to mělo fungovat. Co máš v tom php.ini? Nemáš na konci php.ini odkaz na include nějakých cfg a v nich to pak nemáš vypnutý = přepíše se hodnota v php.ini?
Zjisti si, kde všude figuruje opcache
grep opcache -lir /etc/
Zdar Max
Měl jsem sen ... :(
23.11.2018 20:10 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
grep opcache -lir /etc/
/etc/php/7.2/cli/php.ini
/etc/php/7.2/fpm/php.ini
/etc/php/7.2/mods-available/opcache.ini
/etc/apparmor.d/abstractions/php5
23.11.2018 19:50 Vantomas | skóre: 32 | Praha
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Ano, já provozuji php-fpm s lighttpd a opcache mám normálně povolené a funkční. Celé mi to běží na Debianu a s oživením nebyl žádný problém, jen změny v konfiguráku.

Jakou tam máš distribuci? Neběží tam třeba něco s Selinuxem a php-fpm prostě nemá práva zápisu do /tmp? I v takovém případě si dokážu představit, že pak bude výstup phpinfo() vypadat takto...
23.11.2018 19:59 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Ahoj, je to Ubuntu 16.04

php.ini pro FPM https://pastebin.com/Rqz8VFkB

pak je ale ještě config v

cat /etc/php/7.2/fpm/conf.d/10-opcache.ini
; configuration for php opcache module
; priority=10
zend_extension=opcache.so
23.11.2018 20:02 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Jinak v logu php ani lighttpd nic zvláštního.
dpkg -l | grep php
dpkg-query: warning: parsing file '/var/lib/dpkg/status' near line 6780 package 'storcli':
 missing maintainer
ii  php-common                          2:68+ubuntu16.04.1+deb.sury.org+1          all          Common files for PHP packages
ii  php7.2                              7.2.12-1+ubuntu16.04.1+deb.sury.org+1      all          server-side, HTML-embedded scripting language (metapackage)
ii  php7.2-bcmath                       7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        Bcmath module for PHP
ii  php7.2-cli                          7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        command-line interpreter for the PHP scripting language
ii  php7.2-common                       7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        documentation, examples and common module for PHP
ii  php7.2-curl                         7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        CURL module for PHP
ii  php7.2-fpm                          7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        server-side, HTML-embedded scripting language (FPM-CGI binary)
ii  php7.2-gd                           7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        GD module for PHP
ii  php7.2-intl                         7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        Internationalisation module for PHP
ii  php7.2-json                         7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        JSON module for PHP
ii  php7.2-ldap                         7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        LDAP module for PHP
ii  php7.2-mbstring                     7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        MBSTRING module for PHP
ii  php7.2-mysql                        7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        MySQL module for PHP
ii  php7.2-opcache                      7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        Zend OpCache module for PHP
ii  php7.2-readline                     7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        readline module for PHP
ii  php7.2-soap                         7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        SOAP module for PHP
ii  php7.2-xml                          7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        DOM, SimpleXML, WDDX, XML, and XSL module for PHP
ii  php7.2-zip                          7.2.12-1+ubuntu16.04.1+deb.sury.org+1      amd64        Zip module for PHP
24.11.2018 12:45 Vantomas | skóre: 32 | Praha
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Konfigurace vypadá normálně, i co jsem zkoušel Googlovat jak to je u Ubuntu, tak žádné zapeklitosti v tom nejsou.

Co třeba ten log /var/log/lighttpd/opcache? Vytvoří se tento soubor a má správná oprávnění, aby do něj mohl fpm proces zapisovat? Co když necháš konfiguraci v php.ini co nejvíc defaultní a jen nastavíš opcache.enable = 1?
24.11.2018 14:07 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Ahoj, soubor opcache ve /var/log/ vůbec není.
Max avatar 24.11.2018 12:56 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
A jak tedy vypadá ta konfigurace? Hoď sem :
grep -i opcache /etc/php/7.2/fpm/php.ini
Zdar Max
Měl jsem sen ... :(
24.11.2018 14:21 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Ahoj, konfigurák se používá správný. Jak jsem asi psal, ostatní změny se nám v phpinfo() projevují...
# grep -i opcache /etc/php/7.2/fpm/php.ini
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=1
; Determines if Zend OPCache is enabled for the CLI version of PHP
opcache.enable_cli=1
; The OPcache shared memory storage size.
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
; The maximum number of keys (scripts) in the OPcache hash table.
;opcache.max_accelerated_files=10000
;opcache.max_wasted_percentage=5
; When this directive is enabled, the OPcache appends the current working
;opcache.use_cwd=1
; When disabled, you must reset the OPcache manually or restart the
;opcache.validate_timestamps=1
;opcache.revalidate_freq=2
;opcache.revalidate_path=0
;opcache.save_comments=1
;opcache.enable_file_override=0
; A bitmask, where each bit enables or disables the appropriate OPcache
;opcache.optimization_level=0xffffffff
;opcache.inherited_hack=1
;opcache.dups_fix=0
; The location of the OPcache blacklist file (wildcards allowed).
; Each OPcache blacklist file is a text file that holds the names of files
;opcache.blacklist_filename=
;opcache.max_file_size=0
;opcache.consistency_checks=0
;opcache.force_restart_timeout=180
; OPcache error_log file name. Empty string assumes "stderr".
opcache.error_log=/var/log/lighttpd/opcache
; All OPcache errors go to the Web server log.
opcache.log_verbosity_level=2
;opcache.preferred_memory_model=
;opcache.protect_memory=0
; Allows calling OPcache API functions only from PHP scripts which path is
;opcache.restrict_api=
;opcache.mmap_base=
;opcache.file_cache=
;opcache.file_cache_only=0
;opcache.file_cache_consistency_checks=1
; Implies opcache.file_cache_only=1 for a certain process that failed to
;opcache.file_cache_fallback=1
;opcache.huge_code_pages=1
;opcache.validate_permission=0
;opcache.validate_root=0
;opcache.opt_debug_level=0
23.11.2018 20:01 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Odpovědět | | Sbalit | Link | Blokovat | Admin
lighttpd -v
lighttpd/1.4.35 (ssl) - a light and fast webserver
Build-Date: Apr 18 2016 15:36:10
Max avatar 24.11.2018 12:59 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Odpovědět | | Sbalit | Link | Blokovat | Admin
A mám ještě jednu věc, jseš si jistý, že upravuješ správný php.ini, tj, že :
Zdar Max
Měl jsem sen ... :(
24.11.2018 14:34 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Ahoj ano.

Jinak včera jsem zkoušel nainstalovat lighttpd na ubuntu 18, a tam se kuli nějakému dependency problému ani nenainstaluje. Takže zvažujeme přechod na nginx.
25.11.2018 21:11 MilanC | skóre: 16
Rozbalit Rozbalit vše Re: Lze zprovoznit opcache na lighttpd? (php 7.2)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak vyřešeno.

Kolega našel v projektu nějaký user.ini soubor, který přepisuje ty globals.
opcache.enable = 0
xdebug.remote_enable = on
xdebug.remote_autostart = off
xdebug.idekey = PHPSTORM
xdebug.remote_connect_back = 1
xdebug.remote_host = localhost
xdebug.extended_info = 1
Díky všem.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.