老阳记事是老阳插件博客的个人随笔栏目,分享Z-Blog建站教程、服务器优化、AI工具使用心得及生活点滴,探索实用技巧,解决建站难题。

修改增加WP上传文件类型上传失败的问题

WP默认配置支持一些常用文件类型,但是有一些默认没有设置的文件类型就不能上传,而我们可以配置允许上传我们需要上传的文件类型。

我就测试上传ZB插件包.zba,PHP上传files获取.zba的文件类型就是 application/octet-stream,

然后WP主题或者插件加入

add_filter('upload_mimes', 'custom_upload_mimes');
function custom_upload_mimes($existing_mimes=array()) {
	// 添加支持上传的文件类型
	$existing_mimes['zba']='application/octet-stream';
	return $existing_mimes;
}

再上传.zbp还是上传失败提示:抱歉,您无权上传此文件类型。

然后去检查WP源码发现,如果你的PHP开启了fileinfo扩展,就是会重新读取临时文件$file的文件类型

		$finfo     = finfo_open( FILEINFO_MIME_TYPE );
		$real_mime = finfo_file( $finfo, $file );
		finfo_close( $finfo );

然后这个.zba文件类型居然是:application/xml,知道了真实文件类型就好解决问题了,把上面的代码改下,就能正常上传这个.zba文件了。

add_filter('upload_mimes', 'custom_upload_mimes');
function custom_upload_mimes($existing_mimes=array()) {
	// 添加支持上传的文件类型
	$existing_mimes['zba']='application/xml';
	return $existing_mimes;
}

image.png

测试发现如果PHP不支持fileinfo的话,这个配置就很简单了,$existing_mimes['zba']='1'; 只要设置正确的文件后缀,而文件类型随意设置都能够正常上传。


网上程序下载使用需谨慎,程序有后门文件小白最容易被坑

今天在某站长论坛,看到一个坛友发帖说分享一个价值5000元的程序(说别人卖5000元的),说加群后晚上10点在群里免费提供给大家下载,我想这么值钱的程序我也要个看看,然后就是加群等待,还好很准时十点过群主就上传程序压缩包到群文件里,下载后先是直接扫毒工具扫一扫,扫一扫重要问题就立即知道了,原来真的是有问题。

image.png

然后在群里给大家说了一下,坛友居然说:你觉得这是后门你就不要用。可能他也是不知道的,这个就不讨论了。

image.png

这个文件功能很明显,可以任意写入文件,直接写入php脚本真的是做什么都可以。

image.png

然后这个index.php就的内容就是str 传入的源码了。

有点奇怪这个文件在整套程序里是不关联的,也是不需要的,也让人很容易看到,真是的专坑小白,整套程序肯定还有其它坑,暂时没有时间看,也不会打算使用这样的程序,以后再说吧。

zblogphp 后台开发者模式不能应用打包插件的排查

因为本地测试使用的是宝塔面板,在本地应用打包插件出现错误,无法生成应用插件包。

image.png

然后检查发现这个错误提示 is_dir(): open_basedir restriction in effect.


在zb_system/function/lib/app.php文件中,发现应用打包Pack()函数处理ignore_files禁止打包的数组文件上出现权限错误,ignore_files这些在/zb_users/plugin/STACentre/目录不存在文件的is_dir()出现限制错误,禁止打包文件是不是直接unset直接处理掉或者过滤跳过处理。


image.png


image.png



然后暂时解决方法是在宝塔面板的网站设置-》网站目录-》不打勾:防跨站攻击(open_basedir)就暂时解决这个应用打包错误的问题。

image.png

51LA统计的优站计划活动规则又改了

原来预估激励收益是显示预估积分,现在直接显示预估金额,看看我的预估收益每周2.4元,算算100/2.4=41.6周,41.6*7=291天,这样算算差不多要一年才能攒够100元,希望一年后这个优站计划活动还活着。

image.png



image.png

“优站计划”的活动规则将在 2022.05.13 进行调整,现就变化点进行公告,请知悉主要变化点:

 

1、原积分余额将统一按照 100: 1 的比例转换为现金余额(单位:元)。

调整后:例如:若积分账户内已有 10000 积分,则在调整后将显示为 100 元。

2、活动规则以及说明将进行调整。

调整后:网站收益的档位计算比例与调整前无变化,仅调整将“积分”按 100:1 的比例调整为“元”,调整后不影响收益的价值。

3、活动时间进行调整。

调整后:活动时间由本公告发布起至 2024年5月10日,后续活动时间是否延长视情况再定。

 

感谢您对 51LA 活动的关注,后续还将推出更多用户回馈活动,敬请期待!



使用LNMP一键安装包,SSL双证书安装记录

SSL/TLS安全评估报告检测,检测SSL证书是否存在个别客户端访问兼容的情况

https://myssl.com/zb.lyphp.com:443

image.png

已放弃Let’s Encrypt证书会出现太多不稳定的兼容问题,选择ZeroSSL证书更稳定兼容性更好。

因为我的是使用LNMP一键安装包,并且默认使用了zerossl的RSA证书,现在只需要再安装zerossl的ECC证书

image.png

#生成zerossl的ECC证书,终端直接输入以下命令

/usr/local/acme.sh/acme.sh -f --server zerossl --issue -d zb.lyphp.com --keylength ec-256 -w /home/wwwroot/zb.lyphp.com

等待几分钟后就自动成功生成zerossl的ECC证书了


在/usr/local/nginx/conf/ssl/目录就多了一个zb.lyphp.com_ecc文件夹

然后nginx网站配置目录/usr/local/nginx/conf/vhost的zb.lyphp.com.conf网站server配置信息里,找到原来配置的证书文件信息的后面加上2行ECC证书文件链接。

        ssl_certificate /usr/local/nginx/conf/ssl/zb.lyphp.com_ecc/fullchain.cer;
        ssl_certificate_key /usr/local/nginx/conf/ssl/zb.lyphp.com_ecc/lyplugin.com.key;

然后保存,重新加载网站配置服务:lnmp reload

ECC+RSA双证书就配置完成了


image.png

image.png