按照檔案,我的新OPCache設定是這樣的:
opcache.preload_user=www-data
opcache.preload=/var/www/vhosts/.../httpdocs/.../var/cache/prod/App_KernelProdContainer.preload.php
opcache.memory_consumption=1024。
opcache.interned_strings_buffer=256
opcache.max_accelerated_files=20000
opcache.validate_timestamps=0。
默認情況下,在var/cache/prod檔案夾中,有一個名為srcApp_KernelProdContainer.preload.php的檔案。
在洗掉/cache檔案夾和重新啟動PHP-FPM后,App_KernelProdContainer.preload.php沒有被創建。
我是否應該將App_KernelProdContainer.preload.php重命名為srcApp_KernelProdContainer.preload.php或者我是否遺漏了其他東西?
uj5u.com熱心網友回復:
不,你不應該把這個檔案直接添加到你的PHP設定中,因為正如你所發現的,它使整個事情變得非常脆弱。你也不應該重命名它或其他東西,因為它是自動生成的。
Symfony在后面的版本中所做的是創建一個 "preload "檔案。
Symfony 4 flex配方包括這個.
。<?php
if (file_exists(dirname(__DIR__).'/var/cache/prod/srcApp_KernelProdContainer.preload.php'/span>) {
require dirname(__DIR__).'/var/cache/prod/srcApp_KernelProdContainer.preload.php'。
}
if (file_exists(dirname(__DIR__).'/var/cache/prod/App_KernelProdContainer.preload.php') {
require dirname(__DIR__).'/var/cache/prod/App_KernelProdContainer.preload.php';
}
在Symfony 5.1 上,你有一些東西像這樣的。
。注意,這個檔案所要求的是有條件地預裝腳本。這樣一來,如果它不存在,就不會直接殺死PHP解釋器。
如果你沒有預裝腳本,那么你就可以使用它。
如果你目前沒有這個檔案;你可以手動創建它,或者直接從配方中復制它。
將這個檔案添加到你的opcache.preload設定中php.ini,而不是直接生成預加載腳本。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/328355.html
標籤:
上一篇:使用他們的WebpackEncoreBundle,ReactJS能否在Symfony5.3中不使用節點運行?
下一篇:如何將一個記錄陣列排序為降序
