Interface de programmation (API) - Erreur 500 en prod avec Symfony sur hébergement Web Cloud (opcache.restrict_api)
... / Erreur 500 en prod avec S...
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
Frage

Erreur 500 en prod avec Symfony sur hébergement Web Cloud (opcache.restrict_api)

Von
CNK
Erstellungsdatum 2025-07-23 08:18:47 in Interface de programmation (API)

Bonjour,
J'ai un petit souci sur mon instance OVH Web Cloud. J'ai deux sites sur la même instance : 
- Un vieux site en PHP 7.4 qui fonctionne très bien dans {home}/www/gestion 
- Une nouvelle app Symfony (7.2 / PHP 8.3) dans {home}/www/gm 
qui renvoie tout le temps une erreur 500
 
Voici l'erreur:
[2025-04-18T18:04:27.954380+02:00] php.DEBUG: Warning: Zend OPcache API is restricted by "restrict_api" configuration directive {"exception":{"Symfony\\Component\\ErrorHandler\\Exception\\SilencedErrorContext":{"severity":2,"file":"{home}/www/gm/vendor/symfony/error-handler/DebugClassLoader.php","line":300,"trace":[{"file":"{home}/www/gm/vendor/symfony/debug-bundle/DebugBundle.php","line":35,"function":"loadClass","class":"Symfony\\Component\\ErrorHandler\\DebugClassLoader","type":"->"}],"count":1}}} [] 
 
En mode dev (APP_ENV=dev) tout fonctionne, mais dès que je bascule en prod (APP_ENV=prod), toutes les pages provoquent cette erreur. J'ai creusé un peu : apparemment Symfony essaie d'utiliser OPcache quand il est en prod, mais les serveurs OVH ont opcache.restrict_api de set dans le php.ini, et {home}/www/gm ne fait évidemment pas partie des paths autorisés, donc dès que Symfony essaie d'utiliser des appels à opcache, il se fait jeter. Avec APP_ENV=dev, je pense que Symfony ne fait pas cet appel aux fonctions opcache, et donc tout fonctionne, mais je ne peux pas laisser Symfony en mode dev sur mon site de production...
 
J'ai voulu ajouter le path du projet symfony à opcache.restrict_api, mais je n'ai pas les droits d'écriture sur ces fichiers.
Existe-t-il des contournements pour résoudre ce problème sans passer sur des serveurs dédiés ou des VPS ?
 
Merci d'avance.
 
 


1 Antwort ( Latest reply on 2025-07-23 12:56:07 Von
janus57
)

Bonjour,

 

avez-vous regarder si c'est pas possible de désactiver ce comportement dans le framework ?

 

Sinon non en mutualisé vous n'avez pas la main sur ce genre de configurations.

 

Cordialement, janus57