首页
VIP观影
美女套图
留言板
好友导航
推荐
影视在线
IDC销售
常用工具
高清壁纸
娱乐直播
Search
1
关于【套图】贡献者说明
6,610 阅读
2
利用CSS改变图片显示风格的方法 filter
3,709 阅读
3
女神朴信惠(๑′ᴗ‵๑)I Lᵒᵛᵉᵧₒᵤ❤
3,043 阅读
4
WJSSK_myfriend 我的好友(导航插件) 相关说明
1,641 阅读
5
随机小姐姐跳舞视频(6362个),源码分享
1,337 阅读
随笔
技术源码
Typecho
php
Vue
微信
资源分享
Happy 分享
好看的电影
好看的电视剧
登录
/
注册
Search
标签搜索
php
IDC
智简魔方
财务系统
主题
vue
Easypanel
centos
typecho
mqtt
宝塔bt
typecho插件
函数
云服务器
Kangle
docker
JavaScript
mosquitto
mosquitto-cluster
mosquitto-auth-plug
登录
Or
注册
累计撰写
128
篇文章
累计收到
415
条评论
首页
栏目
随笔
技术源码
Typecho
php
Vue
微信
资源分享
Happy 分享
好看的电影
好看的电视剧
页面
VIP观影
美女套图
留言板
好友导航
推荐
影视在线
IDC销售
常用工具
高清壁纸
娱乐直播
搜索到
73
篇与
技术源码
的结果
2022-09-14
WSS0517 香港美国优质特价免备案云服务器
新搞了个魔方财务idc销售,收集全网优质特价的云服务器。有需要的可以看一看哈,都是特价,我自己也在用。{callout color="#f0ad4e"}如果您也是主机服务商,如果你的也便宜,可以联系我哦。{/callout}
2022年09月14日
73 阅读
0 评论
0 点赞
2022-09-05
使用宝塔如何进行简易的CC防御
很多人都使用了宝塔搭建网站,但是很多的人经常遭遇攻击,遇到攻击的时候,不知道如何进行防御。下面通过简单的设置,基本可以抵御一些较为小量级的防御。判断是否是CC如何判断是不是被CC?一般被CC呢,宝塔上面显示负载跟CPU都会爆表100%的然后在服务器执行Linux命令:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'返回结果示例: LAST_ACK 5 SYN_RECV 30 ESTABLISHED 1597 FIN_WAIT1 51 FIN_WAIT2 504 TIME_WAIT 1057随便一个大于200一个,再考虑是不是CC,如果都小于200,然后CPU 100%,你还是升级配置吧。设置CC防护如果真被CC了,按照下面进行以下教程需要NGINX组件的1.在宝塔商店下载免费防火墙,安装好2.将对应的站点进行设置,也可以进行设置,不过每个站点被攻击的站点不一样,这里就根据单个站点进行介绍一般将CC防御跟CDN勾选好,CDN勾选了就算用了CDN也可以双层保护,不至于拦截了CDN状态是启用状态,然后进行站点的设置3.一般CC规则,设置5秒内允许防御20次这样,这是经过测试比较适合,如果遇到攻击的时候可以调到5秒10次这样的级别这样就大功告成了,基本可以防御一些简单的CC了
2022年09月05日
121 阅读
0 评论
0 点赞
2022-09-01
php 获取链接URL的顶级域名
有的时候做接口权限的时候需要判断来源是否有效,就可以用到这个函数/** * 获取顶级域名 * * @param string $url 域名 HOST,如:www.wjssk.cn ,www.baidu.com * @return string 顶级域名 如:wjssk.cn ,baidu.com */ function url_root($url=""){ $url = $url ? $url : $_SERVER["HTTP_HOST"]; $dual_host = array('aaa.pro','ac.cn','ac.kr','ac.mu','aca.pro','acct.pro','ae.org','ah.cn','ar.com','avocat.pro','bar.pro','biz.ki','biz.pl','bj.cn','br.com','busan.kr','chungbuk.kr','chungnam.kr','club.tw','cn.com','co.ag','co.am','co.at','co.bz','co.cm','co.com','co.gg','co.gl','co.gy','co.il','co.im','co.in','co.je','co.kr','co.lc','co.mg','co.ms','co.mu','co.nl','co.nz','co.uk','co.ve','co.za','com.af','com.ag','com.am','com.ar','com.au','com.br','com.bz','com.cm','com.cn','com.co','com.de','com.ec','com.es','com.gl','com.gr','com.gy','com.hn','com.ht','com.im','com.ki','com.lc','com.lv','com.mg','com.ms','com.mu','com.mx','com.nf','com.pe','com.ph','com.pk','com.pl','com.ps','com.pt','com.ro','com.ru','com.sb','com.sc','com.se','com.sg','com.so','com.tw','com.vc','com.ve','cpa.pro','cq.cn','daegu.kr','daejeon.kr','de.com','ebiz.tw','edu.cn','edu.gl','eng.pro','es.kr','eu.com','fin.ec','firm.in','fj.cn','game.tw','gangwon.kr','gb.com','gb.net','gd.cn','gen.in','go.kr','gov.cn','gr.com','gs.cn','gwangju.kr','gx.cn','gyeongbuk.kr','gyeonggi.kr','gyeongnam.kr','gz.cn','ha.cn','hb.cn','he.cn','hi.cn','hk.cn','hl.cn','hn.cn','hs.kr','hu.com','hu.net','idv.tw','in.net','incheon.kr','ind.in','info.ec','info.ht','info.ki','info.nf','info.pl','info.ve','jeju.kr','jeonbuk.kr','jeonnam.kr','jl.cn','jp.net','jpn.com','js.cn','jur.pro','jx.cn','kg.kr','kiwi.nz','kr.com','law.pro','ln.cn','me.uk','med.ec','med.pro','mex.com','mo.cn','ms.kr','ne.kr','net.af','net.ag','net.am','net.br','net.bz','net.cm','net.cn','net.co','net.ec','net.gg','net.gl','net.gr','net.gy','net.hn','net.ht','net.im','net.in','net.je','net.ki','net.lc','net.lv','net.mg','net.mu','net.my','net.nf','net.nz','net.ph','net.pk','net.pl','net.ps','net.ru','net.sb','net.sc','net.so','net.vc','net.ve','nm.cn','no.com','nom.ag','nom.co','nom.es','nom.ro','nx.cn','or.at','or.jp','or.kr','or.mu','org.af','org.ag','org.am','org.bz','org.cn','org.es','org.gg','org.gl','org.gr','org.hn','org.ht','org.il','org.im','org.in','org.je','org.ki','org.lc','org.lv','org.mg','org.ms','org.mu','org.my','org.nz','org.pk','org.pl','org.ps','org.ro','org.ru','org.sb','org.sc','org.so','org.uk','org.vc','org.ve','pe.kr','pro.ec','qc.com','qh.cn','radio.am','radio.fm','re.kr','recht.pro','ru.com','sa.com','sc.cn','sc.kr','sd.cn','se.com','senet','seoul.kr','sh.cn','sn.cn','sx.cn','tj.cn','tw.cn','uk.com','uk.net','ulsan.kr','us.com','us.org','uy.com','web.ve','xj.cn','xz.cn','yn.cn','za.com','zj.cn'); $url_arr = explode(".", $url); if (count($url_arr) <= 2) { $host = $url; } else { $last = array_pop($url_arr); $last_1 = array_pop($url_arr); $last_2 = array_pop($url_arr); $host = $last_1.'.'.$last; if (in_array($host, $dual_host)) { $host = $last_2.'.'.$last_1.'.'.$last; } } return $host; }
2022年09月01日
68 阅读
0 评论
0 点赞
2022-08-31
php7.2没问题但php7.4报错:Trying to access array offset on value of type null
一、说明报错原因:访问类型为 null 的值的 数组下标7.2中是没问题的,7.4中对语法规范性更为严谨二、原因原文:Trying to use values of type null, bool, int, float or resource as an array (such as $null["key"]) will now generate a notice.翻译:尝试将 null,bool,int,float 或 resource 类型的值用作数组 ( 例如 $null["key"] ) 会产生一个通知。传送门: https://www.php.net/manual/en/migration74.incompatible.php ,截图如下:三、解决# php7.4错误代码 $b = NULL; $a = $b['key'] ? $b['key'] : 0; # 修改后正确代码 $b = NULL; $a = isset($b['key']) && !empty($b['key']) ? $b : 0;
2022年08月31日
102 阅读
0 评论
0 点赞
2022-08-19
Cloudflare支持的 HTTP端口及HTTPS端口
Cloudflare 可代理通过下列 HTTP/HTTPS 端口的流量。如果您的流量位于不同的端口上,则可将其作为只使用DNS的记录添加到您的 Cloudflare DNS 页面。Cloudflare支持的 HTTP 端口为::80 :8080 :8880 :2052 :2082 :2086 :2095Cloudflare 支持的 HTTPS 端口为::443 :2053 :2083 :2087 :2096 :8443
2022年08月19日
84 阅读
0 评论
0 点赞
2022-08-19
(失败了)记录一下红米AC2100路由器开始ssh和配置电脑网络唤醒
不知道能不能成功,先记一下,等回到家开始操作。 小米、红米 AC2100 一键开启 SSH,可自定义安装各种插件 小米路由器如何实现成功外网WOL唤醒开启SSH红框部分的内容替换下面两段代码种<STOK>部分http://192.168.32.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B下面一段种有两个admin,可以替换为其他的,这个是ssh的密码。用户名默认为root。http://192.168.32.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B两段代码替换成自己的链接后,在浏览器上先登录自己的路由器后台,然后在浏览器中运行。然会结果都是:{"code":0}就成功了,然后打开你的SSH链接软件网络唤醒主机
2022年08月19日
242 阅读
0 评论
0 点赞
2022-08-11
HTML <script> 标签的 defer 属性
定义和用法defer 属性是布尔属性。如果已设置,它规定在页面完成解析时执行脚本。注释:defer 属性仅适用于外部脚本(仅应在 src 属性存在时使用)。注释:有几种可以执行外部脚本的方法:如果设置 async:脚本与页面的其余部分异步执行(脚本将在页面继续解析时执行)如果不设置 async 且设置 defer:当页面完成解析时执行脚本如果 async 或 defer 都不存在:在浏览器继续解析页面之前立即获取并执行脚本详细说明 defer 属性规定是否对脚本执行进行延迟,直到页面加载为止。有的 javascript 脚本 document.write 方法来创建当前的文档内容,其他脚本就不一定是了。如果您的脚本不会改变文档的内容,可将 defer 属性加入到 <script> 标签中,以便加快处理文档的速度。因为浏览器知道它将能够安全地读取文档的剩余部分而不用执行脚本,它将推迟对脚本的解释,直到文档已经显示给用户为止。{mtitle title="总结上面的废话就是"/}{message type="info" content="defer属性表示脚本在执行的时候不会改变页面的结构,也就是说脚本会被延迟到整个页面都解析运行完毕后再运行。"/}
2022年08月11日
41 阅读
0 评论
0 点赞
2022-08-11
php保留两位小数的几种方法介绍
1.不进位的情况比如3.149569取小数点后两位,最后两位不能四舍五入。结果:3.14。 可以使用 floor 函数 该函数是舍去取整。例如,floor(4.66456) 结果:4 。floor(9.1254) 结果9 。因此,去小数点后两位,需要先乘以100,然后舍去取整,再除以100,即:$a = floor(3.149569*100)/100;{message type="warning" content="这时浮点计算会出现一个bug,通过php的无类型特性来解决这个问题,先strval转成字符串,再自动识别类型。下面计算百分比已经使用上strval()函数了"/}计算百分比$successRate = floor(strval((2/3)*10000))/10000*100; $result = $successRate.'%';2.四舍五入的情况round 函数 float round ( float val [, int precision])此函数可以实现四舍五入,但是如果是不带小数位数的,处理后也不带小数数位echo round(5.228,2); // 5.23 echo round(5.224,2); // 5.22 echo round(5,2); // 5返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。sprintf 函数 实现四舍五入,并且如果是不带小数位数的,会自动用指定的字符(指定的0)补至指定的小数位数echo sprintf("%01.2f", 5.228); // 5.23 echo sprintf("%01.2f", 5.224); // 5.22 echo sprintf("%01.2f", 5); // 5.00number_format 函数 如果是不带小数位数的,会自动用0补至指定的小数位数echo number_format(5.228,2); // 5.23 echo number_format(5.224,2); // 5.22 echo number_format(5,2); // 5.00php进一法取整echo ceil(4.4); // 5 echo ceil(4.6); // 5php舍去法取整echo floor(4.4); // 4 echo floor(4.6); // 4
2022年08月11日
60 阅读
0 评论
0 点赞
2022-08-02
申请Telegram机器人 | 推送通知
一、前言利用Telegram机器人推送通知,需要在环境变量填入正确的TG_BOT_TOKEN以及TG_USER_ID,以下教程简明阐述如何获取Token以及UserID二、获取步骤1、首先在Telegram上搜索BotFather机器人。需要注意的是,搜索结果中选择ID为@BotFather的,见下图二2、点击BotFather后,在对话框下方点击开始与BotFather对话,此时BotFather会列出来所有代码命令。3、我们点击选择或者手动输入/newbot,创建一个自己的机器人。4、接下来和BotFather对话,输入机器人的昵称、Username即可。{mtitle title="下图示例"/}MyTestBot :是给自己的机器人起一个昵称FhyTestBot_bot:给自己机器人起一个Username,必须以bot结尾,但是提示该名字已存在了,让我换一个。fhybot_bot:是最终给机器人起的Username。成功后会看到最后一串BotFather发来的信息,其中红框内的就是我们需要的Token,格式为:一串纯数字+冒号+一串字母和数字的字符。5、接下来搜索你刚创建的机器人Username,并开启与他的对话,随便发送一条信息激活机器人。(这步经常被忽略,切记!)6、继续搜索,输入getuserIDbot,并点击开始按钮进入对话,此时getuserIDbot会发送给你一串数字,就是后面会用到的UserID7、至此通过Telegram机器人给自己推送通知功能所需要的Token和Use人ID都已经有了!
2022年08月02日
330 阅读
1 评论
1 点赞
2022-07-27
js按条件生成随机json:randomjson实现方法
前端开发中,在做前后端分离的时候,经常需要手写json数据,有3个问题特别揪心:数据是写死的,不能按一定的条件随机生成长度不一,内容不一的数据写数组的时候,如果有很多条,需要一条一条地写,费时费力mock图片特别困难randomjson用来根据模型随机生成json,mock json数据的时候特别有用github地址: https://github.com/finance-sh/randomjsonrandomjson根据条件生成json对应的随机json如何使用安装npm install randomjson用法// 安装 npm install randomjson // 用法 // 引用包 var randomjson = require('randomjson'); // 模型 var modelJson = { "code": "00", "numberCode": "<@[10000,20000]>", "msg": "<@chinese{12,50}>", "msg2": "<@string{2,3}>", "logo": "<@image{100,100}>", "result": { "pList<@{1,3}>":[ { "indexToString": "<@index><@>", "index": "<@index>", "id": "<@[1-5]>", "price": "<@float>", "name": "公司名称<@index>", "person": "李文武<@index>", "address": "北京市海淀区西三旗", "mobile": "1<@number{10}>", "tel": "<@number{4}>-<@number{8}>", "list": [ { "auditKey": 1, "auditValue": "<@[0,1,2]>" }, { "auditKey": 2, "auditValue": "<@[0,1,2]>" } ] } ] } } // 根据模型生成json var myJson = randomjson(modelJson); 根据上边模型生成的json可能是这样: { "code": "00", "numberCode": 10000, "msg": "加义为边平压你治提用根治问求只或程干立农资特", "msg2": "dv", "logo": "https://dummyimage.com/100x100", "result": { "pList": [ { "indexToString": "1", "index": 1, "id": 2, "price": 93.78, "name": "公司名称1", "person": "李文武1", "address": "北京市海淀区西三旗", "mobile": "17929438781", "tel": "1148-56055642", "list": [ { "auditKey": 1, "auditValue": 0 }, { "auditKey": 2, "auditValue": 1 } ] }, { "indexToString": "2", "index": 2, "id": 5, "price": 29.49, "name": "公司名称2", "person": "李文武2", "address": "北京市海淀区西三旗", "mobile": "17826945504", "tel": "7298-46226026", "list": [ { "auditKey": 1, "auditValue": 0 }, { "auditKey": 2, "auditValue": 0 } ] } ] } }词法以<@开始,以>结束,中间内容是randomjson的词法模型定义数据类型<@number>: number类型<@string>: string类型<@null>: null<@boolean>: boolean类型<@chinese>: 中文字符串<@float{number1,number2}>: 浮点数 number1代表整数位数,number2代表小数位数,默认都为2<@image{width,height}>: 生成图片 width为生成图片宽度,height为生成图片高度,默认为400,400<@index>: 元素在数组中的位置,从1开始量词{minNumber, maxNumber}: minNumber到maxNumber个{minNumber,}: 最少minNumber{number}: number个如果是float,minNumber, maxNumber表示整数部分和小数部分的位数如果是imgae,minNumber, maxNumber表示图片宽度高度随机生成其中之一你可以使用“|” 分离多个选项,随机值是其中之一,值为字符串数字范围[1,2,3] 表示1,2,3中的一个,值为数字[1-90] 表示1到90中的一个int值,值为数字数字转字符串在number类型后加空的占位符 "indexToString": "<@index><@>"量词定义注意点值为非数组时,长度在value字符串里,例如:"ret": "<@number{4}>"值为数组时,长度在key里,例如: "p11<@{2,5}>": [{ "p8": "12312", "p9": ["<@string{4,7}>"], "p10": "<@string>" }]
2022年07月27日
36 阅读
0 评论
0 点赞
2022-07-12
转 CSS视差滚动 心动了,记录一下
今天看到一个css背景图片的视差滚动效果,超好看,记录一下,以后一定会用到!来之bilibili 鹿角です up主的 【CSS视差滚动 你会了咩】{bilibili bvid="BV1Yt4y127Ds" page=""/}预览地址: https://miiiku.xyz/shichagundong/index-js.html 源码地址: https://github.com/miiiku/miiiku.github.io/blob/master/shichagundong/index-js.html<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Long+Cang&display=swap" rel="stylesheet"> <title>Document</title> <style> * { margin: 0; padding: 0; } body { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; } .section-item { width: 100vw; height: 45vh; position: relative; display: flex; overflow: hidden; } .section-item__block { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: 120%; background-repeat: no-repeat; background-position: center 0; transform: translate3d(0, 0, 0); will-change: background-position; } .section-item__block::before { position: absolute; top: 0; left: 0; content: ''; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.35); transition: background-color 0.3s ease; } .section-item:hover .section-item__block::before { background-color: rgba(0, 0, 0, 0.2); } .section-item__text { position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; font-family: 'Long Cang', cursive; color: #F1F1F1; } .section-item__text .text-title { font-size: 24px; font-weight: bolder; margin-bottom: 20px; } .section-item:nth-child(1n) .section-item__block { background-image: url('./images/1.jpg'); } .section-item:nth-child(2n) .section-item__block { background-image: url('./images/2.jpg'); } .section-item:nth-child(3n) .section-item__block { background-image: url('./images/3.jpg'); } .section-item:nth-child(4n) .section-item__block { background-image: url('./images/4.jpg'); } .section-item:nth-child(5n) .section-item__block { background-image: url('./images/5.jpg'); } .section-item:nth-child(6n) .section-item__block { background-image: url('./images/6.jpg'); } </style> </head> <body> <section class="section-item"> <div class="section-item__block" data-index="1"></div> <div class="section-item__text"> <div class="text-title">「四月是你的谎言」</div> <div class="text-desc">我在盛开的樱花下遇见你,从此命运不再属于自己。</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="2"></div> <div class="section-item__text"> <div class="text-title">「言叶之庭」</div> <div class="text-desc">每晚临睡前 每天睁开眼的瞬间 不知不觉 我都在祈盼雨天 祈盼雨天 祈盼和那个人 再次相会</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="3"></div> <div class="section-item__text"> <div class="text-title">「你的名字」</div> <div class="text-desc">黄昏,不是白昼亦不是夜晚,是我努力却看不清你的脸。</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="4"></div> <div class="section-item__text"> <div class="text-title">「天气之子」</div> <div class="text-desc">天气真的是很不可思议,光只是天空的模样就让人感动不已。</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="5"></div> <div class="section-item__text"> <div class="text-title">「K-ON!」</div> <div class="text-desc">重要的,珍惜的,一直在身边,一旦成为理所当然,就难以发现</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="6"></div> <div class="section-item__text"> <div class="text-title">「CLANNAD」</div> <div class="text-desc">我也很没用,但是两个人一起的话,就会变得很坚强。</div> </div> </section> <script> const wh = window.innerHeight const sectionBlock = Array.from(document.querySelectorAll('.section-item__block')) window.addEventListener('scroll', function () { sectionBlock.forEach(el => { const { bottom, top, height } = el.getBoundingClientRect() if (bottom <= 0 || top >= wh) return const y = document.documentElement.scrollTop * 0.28 el.style.backgroundPosition = `center -${y}px` }) }) </script> </body> </html>{mtitle title="如果你也觉得好看"/}{mtitle title="麻烦给Up主去点个赞吧"/}
2022年07月12日
130 阅读
0 评论
0 点赞
2022-07-05
Typecho 统计文章总数、分类总数、评论总数、页面总数
<?php Typecho_Widget::widget('Widget_Stat')->to($stat); ?> <li>文章总数:<?php $stat->publishedPostsNum() ?>篇</li> <li>分类总数:<?php $stat->categoriesNum() ?>个</li> <li>评论总数:<?php $stat->publishedCommentsNum() ?>条</li> <li>页面总数:<?php $stat->publishedPagesNum() ?>个</li>
2022年07月05日
52 阅读
0 评论
0 点赞
1
2
3
4
...
7