将 Prestashop 迁移到新服务器、缓存和 Apollo Pagebuilder
Migrating Prestashop to a new server, caching and Apollo Pagebuilder
目前我有点迷茫或者可能只是心理障碍
我的问题主题是 1.7.3.3 Prestashop 目前托管在共享主机上。由于性能低下和 TTFB 长,我目前正在将其移动到托管在 DigitalOcean 上的 VPS 运行 Plesk。
现在到了我有点迷茫的部分:我通过 WGET 复制了文件,转储了数据库并应用了正确的权限(据我所知)。 Shop 在新域下的新 Plesk-Host 上毫无问题地出现。
一旦我尝试启用 MySQL-缓存,我就可以使用 Apollo Pagebuilder 编辑页面,但不能再保存它们。至少这些变化不会出现在前台。如果我切换回文件缓存,更改会按预期传播,但后端的模块页面不再工作(例如错误 500,可以通过删除 /app/cache/prod 和 app/cache/dev 来修复)
所以,总结一下我的问题:如果我启用文件缓存,除模块页面之外的所有内容都有效,如果我启用 MySQL-缓存,除 Apollo Pagebuilder-propagation 之外的所有内容都有效。
我已经尝试过的:
我已经重新安装了 Apollo Pagebuilder,但这完全破坏了我的前台(意味着我必须从头开始重建所有内容,因为当前状态似乎没有被正确读取)。
导出、重新导入和 "update and fixed" Apollo,未成功:(
我唯一想到的解决办法就是向众神牺牲一些东西,但我宁愿不这样做。
环境:
Ubuntu 16.04 LTS; Plesk 玛瑙 17.8.11; Prestashop 1.7.3.3; PHP7.1.26
如果以前没有人遇到过这个问题,也许有人知道要删除什么以仅启用后台中的模块。我愿意将 MySQL 缓存视为不可用。
预先感谢您的帮助。
好的,我想我找到了答案。随着包含缓存的服务器被迁移,它也缓存了数据库连接。 (幸好在之前的DB上写不出来)
所以如果有人遇到同样的问题:
prestaroot/app/cache/prod/appProdProjectContainer.php 将连接字符串存储在 2 个位置。
Once in: protected function getDoctrine_Dbal_DefaultConnectionService() //** around line 670
在第 5000 行左右。最简单的方法是搜索您以前的连接凭据。
您还需要确保在 prestaroot/app/cache/prod/appParameters.php 中存在相同的有效凭据。
希望有一天它能对某人有所帮助。
目前我有点迷茫或者可能只是心理障碍
我的问题主题是 1.7.3.3 Prestashop 目前托管在共享主机上。由于性能低下和 TTFB 长,我目前正在将其移动到托管在 DigitalOcean 上的 VPS 运行 Plesk。
现在到了我有点迷茫的部分:我通过 WGET 复制了文件,转储了数据库并应用了正确的权限(据我所知)。 Shop 在新域下的新 Plesk-Host 上毫无问题地出现。
一旦我尝试启用 MySQL-缓存,我就可以使用 Apollo Pagebuilder 编辑页面,但不能再保存它们。至少这些变化不会出现在前台。如果我切换回文件缓存,更改会按预期传播,但后端的模块页面不再工作(例如错误 500,可以通过删除 /app/cache/prod 和 app/cache/dev 来修复)
所以,总结一下我的问题:如果我启用文件缓存,除模块页面之外的所有内容都有效,如果我启用 MySQL-缓存,除 Apollo Pagebuilder-propagation 之外的所有内容都有效。
我已经尝试过的:
我已经重新安装了 Apollo Pagebuilder,但这完全破坏了我的前台(意味着我必须从头开始重建所有内容,因为当前状态似乎没有被正确读取)。
导出、重新导入和 "update and fixed" Apollo,未成功:(
我唯一想到的解决办法就是向众神牺牲一些东西,但我宁愿不这样做。
环境:
Ubuntu 16.04 LTS; Plesk 玛瑙 17.8.11; Prestashop 1.7.3.3; PHP7.1.26
如果以前没有人遇到过这个问题,也许有人知道要删除什么以仅启用后台中的模块。我愿意将 MySQL 缓存视为不可用。
预先感谢您的帮助。
好的,我想我找到了答案。随着包含缓存的服务器被迁移,它也缓存了数据库连接。 (幸好在之前的DB上写不出来)
所以如果有人遇到同样的问题:
prestaroot/app/cache/prod/appProdProjectContainer.php 将连接字符串存储在 2 个位置。
Once in: protected function getDoctrine_Dbal_DefaultConnectionService() //** around line 670
在第 5000 行左右。最简单的方法是搜索您以前的连接凭据。
您还需要确保在 prestaroot/app/cache/prod/appParameters.php 中存在相同的有效凭据。
希望有一天它能对某人有所帮助。