liujia 发布的文章

导入数据后Magento报错 - Invalid backend model specified: catalog/product_attribute_backend_startdate_specialprice

现象:安装旧版magento1.7程序后导入之前导出的mysql数据库文件,访问产品页提示 Invalid backend model specified: catalog/product_attribute_backend_startdate_specialprice

尝试:

1.SELECT backend_model FROM eav_attribute WHERE attribute_code = 'special_from_date'; # 执行数据库查询

2.catalog/product_attribute_backend_startdate_specialprice # 如果返回结果是这个

3.UPDATE eav_attribute SET backend_model = 'catalog/product_attribute_backend_startdate' WHERE attribute_code = 'special_from_date'; # 更新到 catalog/product_attribute_backend_startdate

参考:https://magento.stackexchange.com/questions/54271/invalid-backend-model-specified-catalog-product-attribute-backend-startdate-spe

为从网页复制的域名列表设置子域名

需求:从网页复制到域名列表,需要设置1.aa.com, 2.aa.com,3.aa.com的子域名。

尝试:可以使用while的条件执行语句来操作,如:

sed 's/  //g' do2.txt | while read -r line; do for chi in $(seq 1 3); do echo -e "$chi.$line"; done done

参考:

为IP地址列表打乱排序 - shuf - sed - sort

需求:一个有超过10个的IP地址的文本文件,需要打乱IP地址原有的排序。

尝试:

在Linux系统里,较方便的命令是 shuf。如果在Windows里没有这个命令,但有如 mobaXterm 的 Cygwin 和 Busybox 环境,可用sed、sort和cat命令来组合使用,达到类似的效果。如:

cat ip.txt | while read -r line; do echo "$RANDOM:$line"; done | sort -t: -k1 -n | sed 's/^[0-9]*://' > n.txt

参考:

magento - 磁盘用满 - /tmp/analytics - Advanced Reporting

现象:magento2的站点,在几天后,站点访问不了,提示磁盘用满。检查后,发现 /tmp/analytics 目录下的文件占了绝大多数。

尝试:按照 magento2 的更新记录,将文件 vendor/magento/framework/Archive/Tar.php 约第262行的内容替换,

array_shift($dirFiles);
/* remove  './'*/
array_shift($dirFiles);
/* remove  '../'*/

替换为:

$dirFiles = array_diff($dirFiles, ['..', '.']);

magento-advanced-reporting-disk-full.png

参考:https://magento.stackexchange.com/questions/243746/disk-space-issue-with-advanced-reporting-after-update-from-2-2-3-to-2-2-6

nextcloud 上传10GB文件后,提示组块时出错 502 - nginx 超时限制设置

现象:nextcloud 需要上传超过10GB的文件,但上传完成后“组块时出错 502”。nginx 的web错误信息里有如:

recv() failed (104: Connection reset by peer) while reading response header from upstream request: "MOVE /remote.php/dav/uploads/name/web-file-upload-nnnn/.file" HTTP/1.1, upstream: fastcgi://unix:/tmp/php-cgi-72.sock

nextcloud-big-file-502-1.png

查看 php-fpm.log 的日志,如:

WARNING: [pool www] child nnnn, script '/www/wwwroot/nextcloud/remote.php'(request: "MOVE /remote.php") execution timed out (104.723765 sec). Terminating.
WARNING: [pool www] child nnnn exited on signal 15 (SIGTERM) after 13101.403079 seconds from start

nextcloud-big-file-502-2.png

估计是 php-fpm 的进程在约100秒后超时,被强制退出,然后重新创建进程了。

解决:在“宝塔”面板的php7.2管理配置窗口中,将“超时限制”(request_terminate_timeout)的时间上调,如从默认100秒的,上调到17200。

nextcloud-big-file-502-4.png

参考: