我们目前在使用NGINX安装TYPO3 9.5时遇到了一些问题。在TYPO3 9.5中,一些方法现已弃用,一些类已移至核心。但是,一些扩展仍然会实例化这些类并且它应该可以工作,因为存在某种映射,其中旧类只是扩展新类。在我们的例子中,当我们使用Apache运行我们的安装时,这样的事情会起作用。但是,当我们使用NGINX运行它时,会引发PHP阻塞错误。我们只是得到类似的东西Error : Class OLD_CLASSNAME not found.我们的目标环境使用Debian GNU/Linux 9 - PHP7.3,但我们也尝试使用Docker和来自webdevops ( https://github.com/webdevops/TYPO3-docker-boilerplate ) 的样板进行简单安装。我们比较了Apacahe和NGINX之间的php.ini文件,但我们没有找到问题的根源是哪个参数。在某些情况下,我们使用TYPO3 XClasses进行了变通,但在某些情况下它根本不起作用。我们尝试添加一个类似typo3.conf 的文件并尝试使用它但没有成功。使用最低级别的错误或禁用错误显示也不起作用。我们也尝试将我们的安装升级到TYPO3 10.x,但问题仍然存在。有没有人遇到过这种行为?对此问题的任何帮助将不胜感激。提前谢谢了。此致,解决方案和更正我们刚刚重新分析了我们的问题(在睡了一夜好觉之后),我们意识到我们错了,我们的问题不可能与Apache或NGINX相关。我们的解释是错误的。因此,我们重新检查了我们在各种环境中部署的包,并发现了自动加载程序文件中的差异。事实上, vendor/composer/autoload_files.php和vendor/composer/autoload_static.php中缺少以下行:'...' => __DIR__ . '/..' . '/helhum/console-autoload-include.php','...' => __DIR__ . '/..' . '/typo3/alias-loader-include.php','...' => __DIR__ . '/..' . '/typo3/autoload-include.php',因此,问题与自动加载生成有关,与环境无关。
1 回答
眼眸繁星
TA贡献1873条经验 获得超9个赞
Apache 和 Nginx 都不执行 PHP。但它们提供了一个环境。
可以使用 php 函数找到有关此环境的信息phpinfo()
。
因此,获取两个系统的输出以查看不同之处。
然后你可以尝试统一系统,就像你尝试像 Apache 安装一样配置 Nginx。
autoloader
请记住,TYPO3 有一个来自或手册的类列表Composer
。
如果这混淆了你的课程就找不到了。
- 1 回答
- 0 关注
- 90 浏览
添加回答
举报
0/150
提交
取消