首页
关于我们
友链链接
壁纸下载
更多
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
IP定位
Search
1
[Win DD包] wes7-x86-cn-精简,安装后仅占用1.55G存储空间
25,925 阅读
2
v2rayN基础使用教程、配置说明、添加订阅、路由选择
18,199 阅读
3
鸿蒙Next也能科学上网?Clash Meta for harmorny next os
11,460 阅读
4
纯血鸿蒙系统如何安装电报、推特、Tiktok和油管APP
8,678 阅读
5
保姆级教程!甲骨文ARM DD成Debian10并升级内核成5.10
6,486 阅读
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
MV频道
登录
Search
标签搜索
vps
typecho
linux
bench
mysql
cloudflare
nginx
lnmp
ssl
empirecms
openwrt
google
centos
docker
qbittorrent
telegram
n1
301
free
serverstat
V+变量
累计撰写
301
篇文章
累计收到
255
条评论
首页
栏目
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
MV频道
页面
关于我们
友链链接
壁纸下载
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
IP定位
搜索到
105
篇与
的结果
2025-01-25
Typecho调用摘要内容限定内容截取字符数的常规方法
如果老站长应该是知道的,Typecho当初开发出来就是因为看到WordPress臃肿不便捷,所以在一些功能上都很多相似的。比如在我们常规使用的首页和分类摘要内容上,如果我们不用分隔符More隔开,这样首页会出现整篇内容,体验确实很差。于是我们会手工设置摘要来解决问题,但是有些时候如果我们忘记设置又得重新编辑。所以,我们可以在设置模板的时候直接将摘要闲置字数实现,这里老蒋可以将Typecho可能有遇到的Typecho调用摘要的方法记录下来。第一、使用摘要内容有些网友希望摘要内容是自定义的,所以直接可以就调用摘要,后台我们编辑文章的时候手动设置摘要。<?php $this->excerpt(); ?>这个替换模板中的内容展示部分。第二、设置摘要字数<?php $this->excerpt(100, '...'); ?>如果我们没有设置摘要,会自动截取内容上面的部分。这样我们可以限制调出的字数。第三、正则控制摘要内容字数<?php if(preg_match('/<!--more-->/',$this->content)||mb_strlen($this->content, 'utf-8') < 270) { $this->content('阅读全文...'); } else { $c=mb_substr($this->content, 0, 270, 'utf-8'); if(preg_match('/<pre>/',$c)) { echo $c,'</code></pre>','...';; } else { echo $c.'...'; } echo '</br><p class="more"><a href="',$this->permalink(),'" title="',$this->title(),'">阅读全文...</a></p>'; } ?>这里我们可以控制字数,超过的话直接截取,但是如果上面有图片也会在摘要显示。<?php if(preg_match('/<!--more-->/',$this->content)||mb_strlen($this->content, 'utf-8') < 270) { $this->content('阅读全文...'); } else { $c=mb_substr($this->content, 0, 270, 'utf-8'); $c=preg_replace("/<[img|IMG].*?src=[\'\"](.*?(?:[\.gif|\.jpg|\.jpeg|\.png|\.tiff|\.bmp]))[\'|\"].*?[\/]?>/","",$c); if(preg_match('/<pre>/',$c)) { echo $c,'</code></pre>','...';; } else { echo $c.'...'; } echo '</br><p class="more"><a href="',$this->permalink(),'" title="',$this->title(),'">阅读全文...</a></p>'; } ?>如果我们在摘要中不显示图片,则需要过滤掉。可以用这个。这样,我们可以选择自己合适的方法调用摘要。
2025年01月25日
165 阅读
0 评论
0 点赞
2025-01-25
Typecho Joe主题美化记录
这个主题固然是好,但我就是喜欢折腾这篇用于记录美化记录,改的多了难免会忘大家也可参考关闭前台登陆/注册这个操作只是让用户无法登陆/注册,对管理站点没影响修改路径:/usr/themes/Joe/public/headr.php删除登陆后台在域名后面+/admin就可以进入禁用F12修改路径:/usr/themes/Joe/public/footer.php在最后面加上代码即可function fuckyou(){ window.close(); //关闭当前窗口(防抽) window.location="about:blank"; //将当前窗口跳转置空白页 } function click(e) { if (document.all) { if (event.button==2||event.button==3) { alert("禁止拿代码"); oncontextmenu='return false'; } } if (document.layers) { if (e.which == 3) { oncontextmenu='return false'; } } } if (document.layers) { fuckyou(); document.captureEvents(Event.MOUSEDOWN); } document.onmousedown=click; document.oncontextmenu = new Function("return false;") document.onkeydown =document.onkeyup = document.onkeypress=function(){ if(window.event.keyCode == 123) { fuckyou(); window.event.returnValue=false; return(false); } }添加版权信息效果就是在站内复制文文字后,会默认在复制内容中加入版权信息修改路径:/usr/themes/Joe/public/footer.php在最后面添加即可document.body.addEventListener('copy', function (e) { if (window.getSelection().toString() && window.getSelection().toString().length > 42) { setClipboardText(e); notie({ type: 'info', text: '商业转载请联系作者获得授权,非商业转载请注明出处,谢谢合作。', autoHide: true }) } }); function setClipboardText(event) { var clipboardData = event.clipboardData || window.clipboardData; if (clipboardData) { event.preventDefault(); var htmlData = '' + '著作权归作者所有。<br>' + '本站所有文章使用CC BY-NC-SA 4.0许可协议,转载请注明出处。<br>' + '作者:老K博客<br>' + '来源:' + window.location.href + '<br>' + '链接:https://laokbk.cn/<br><br>' + window.getSelection().toString(); var textData = '' + '著作权归作者所有。\n' + '本站所有文章使用CC BY-NC-SA 4.0许可协议,授权转载请注明出处。\n' + '作者:老K博客\n' + '来源:' + window.location.href + '\n' + '链接:https://laokbk.cn/\n\n' + window.getSelection().toString(); clipboardData.setData('text/html', htmlData); clipboardData.setData('text/plain',textData); } }注意把信息修改成自己的修改颜色及透明度在主题设置的自定义css处填写body { --theme: #ff6800; --background: rgba(255,255,255,0.85) }theme:主题颜色,可随意修改颜色参照表:http://tool.txav.cn/rgb_colorrgba最后面的0.85即为透明度,修改值0-1,0则全透1则不透。若只想单改透明度 则填写内容为body { --background: rgba(255,255,255,0.8) }透明值同样修改最后面的0.8底部按钮美化先复制下面的代码,在主题的全局设置,粘贴到自定义底部栏左、右侧内容里,把内容改一下 友情链接 | Powered 站点地图
2025年01月25日
224 阅读
0 评论
0 点赞
2025-01-22
群晖已完全破译SN,发布算号器
目前SN计算已经可以完全自定义了,也就是凭空生成正确规范的SN,不需要已知正确SN但是sn能否在官网验证通过,需要两个条件,一sn本身符合规范(通过计算获取的SN一定是规范的),二官方数据库录入了该snBB值加1就代表前面有1000个sn了,你要是改到99那就是前面有99000个sn你会发现大量连续的号被同一个邮箱注册,这些基本是被号贩子注册了,所以大家尽量不要公开自己的号像这个段,理论上可以容纳999999个,但是这个要看当时出厂规模,不是所有的号都会进入数据库的,而是生产了多少台就登记多少sn:1750PDN179400 mac:0011323B0CC31750属于早期的机器可以看出当初这个段的序列号就生产了200台,所以当输入201台的序列号就会提示无效作者: xcyupeng: ↑ 1750PDN001600 0011323B0B5F 1750PDN002700 0011323B0B61 1750PDN003800 0011323B0B63 1750PDN004900 0011323B0B65 1750PDN005000 0011323B0B67 1750PDN006100 0011323B0B69 1750PDN007200 0011323B0B6B 1750PDN008300 0011323B0B6D 1750PDN009400 0011323B0B6F 1750PDN010500 0011323B0B71 1750PDN011600 0011323B0B73 1750PDN012700 0011323B0B75 1750PDN013800 0011323B0B77 1750PDN014900 0011323B0B79 1750PDN015000 0011323B0B7B 1750PDN016100 0011323B0B7D 1750PDN017500 0011323B0B7F 以下#值开始循环个数为17个 1750PDN018600 0011323B0B81 1750PDN019700 0011323B0B83 1750PDN020800 0011323B0B85 1750PDN021900 0011323B0B87 1750PDN022000 0011323B0B89 1750PDN023100 0011323B0B8B 1750PDN024200 0011323B0B8D 1750PDN025300 0011323B0B8F 1750PDN026400 0011323B0B91 1750PDN027500 0011323B0B93 1750PDN028600 0011323B0B95 1750PDN029700 0011323B0B97 1750PDN030800 0011323B0B99 1750PDN031900 0011323B0B9B 1750PDN032000 0011323B0B9D 1750PDN033100 0011323B0B9F 1750PDN034500 0011323B0BA1 1750PDN035600 0011323B0BA3 1750PDN036700 0011323B0BA5 1750PDN037800 0011323B0BA7 1750PDN038900 0011323B0BA9 1750PDN039000 0011323B0BAB 1750PDN040100 0011323B0BAD 1750PDN041200 0011323B0BAF 1750PDN042300 0011323B0BB1 1750PDN043400 0011323B0BB3 1750PDN044500 0011323B0BB5 1750PDN045600 0011323B0BB7 1750PDN046700 0011323B0BB9 1750PDN047800 0011323B0BBB 1750PDN048900 0011323B0BBD 1750PDN049000 0011323B0BBF 1750PDN050100 0011323B0BC1 1750PDN051500 0011323B0BC3 1750PDN052600 0011323B0BC5 1750PDN053700 0011323B0BC7 1750PDN054800 0011323B0BC9 1750PDN055900 0011323B0BCB 1750PDN056000 0011323B0BCD 1750PDN057100 0011323B0BCF 1750PDN058200 0011323B0BD1 1750PDN059300 0011323B0BD3 1750PDN060400 0011323B0BD5 1750PDN061500 0011323B0BD7 1750PDN062600 0011323B0BD9 1750PDN063700 0011323B0BDB 1750PDN064800 0011323B0BDD 1750PDN065900 0011323B0BDF 1750PDN066000 0011323B0BE1 1750PDN067100 0011323B0BE3 1750PDN068500 0011323B0BE5 1750PDN069600 0011323B0BE7 1750PDN070700 0011323B0BE9 1750PDN071800 0011323B0BEB 1750PDN072900 0011323B0BED 1750PDN073000 0011323B0BEF 1750PDN074100 0011323B0BF1 1750PDN075200 0011323B0BF3 1750PDN076300 0011323B0BF5 1750PDN077400 0011323B0BF7 1750PDN078500 0011323B0BF9 1750PDN079600 0011323B0BFB 1750PDN080700 0011323B0BFD 1750PDN081800 0011323B0BFF 1750PDN082900 0011323B0C01 1750PDN083000 0011323B0C03 1750PDN084100 0011323B0C05 1750PDN085500 0011323B0C07 1750PDN086600 0011323B0C09 1750PDN087700 0011323B0C0B 1750PDN088800 0011323B0C0D 1750PDN089900 0011323B0C0F 1750PDN090000 0011323B0C11 1750PDN091100 0011323B0C13 1750PDN092200 0011323B0C15 1750PDN093300 0011323B0C17 1750PDN094400 0011323B0C19 1750PDN095500 0011323B0C1B 1750PDN096600 0011323B0C1D 1750PDN097700 0011323B0C1F 1750PDN098800 0011323B0C21 1750PDN099900 0011323B0C23 1750PDN100000 0011323B0C25 1750PDN101100 0011323B0C27 1750PDN102500 0011323B0C29 1750PDN103600 0011323B0C2B 1750PDN104700 0011323B0C2D 1750PDN105800 0011323B0C2F 1750PDN106900 0011323B0C31 1750PDN107000 0011323B0C33 1750PDN108100 0011323B0C35 1750PDN109200 0011323B0C37 1750PDN110300 0011323B0C39 1750PDN111400 0011323B0C3B 1750PDN112500 0011323B0C3D 1750PDN113600 0011323B0C3F 1750PDN114700 0011323B0C41 1750PDN115800 0011323B0C43 1750PDN116900 0011323B0C45 1750PDN117000 0011323B0C47 1750PDN118100 0011323B0C49 1750PDN119500 0011323B0C4B 1750PDN120600 0011323B0C4D 1750PDN121700 0011323B0C4F 1750PDN122800 0011323B0C51 1750PDN123900 0011323B0C53 1750PDN124000 0011323B0C55 1750PDN125100 0011323B0C57 1750PDN126200 0011323B0C59 1750PDN127300 0011323B0C5B 1750PDN128400 0011323B0C5D 1750PDN129500 0011323B0C5F 1750PDN130600 0011323B0C61 1750PDN131700 0011323B0C63 1750PDN132800 0011323B0C65 1750PDN133900 0011323B0C67 1750PDN134000 0011323B0C69 1750PDN135100 0011323B0C6B 1750PDN136500 0011323B0C6D 1750PDN137600 0011323B0C6F 1750PDN138700 0011323B0C71 1750PDN139800 0011323B0C73 1750PDN140900 0011323B0C75 1750PDN141000 0011323B0C77 1750PDN142100 0011323B0C79 1750PDN143200 0011323B0C7B 1750PDN144300 0011323B0C7D 1750PDN145400 0011323B0C7F 1750PDN146500 0011323B0C81 1750PDN147600 0011323B0C83 1750PDN148700 0011323B0C85 1750PDN149800 0011323B0C87 1750PDN150900 0011323B0C89 1750PDN151000 0011323B0C8B 1750PDN152100 0011323B0C8D 1750PDN153500 0011323B0C8F 1750PDN154600 0011323B0C91 1750PDN155700 0011323B0C93 1750PDN156800 0011323B0C95 1750PDN157900 0011323B0C97 1750PDN158000 0011323B0C99 1750PDN159100 0011323B0C9B 1750PDN160200 0011323B0C9D 1750PDN161300 0011323B0C9F 1750PDN162400 0011323B0CA1 1750PDN163500 0011323B0CA3 1750PDN164600 0011323B0CA5 1750PDN165700 0011323B0CA7 1750PDN166800 0011323B0CA9 1750PDN167900 0011323B0CAB 1750PDN168000 0011323B0CAD 1750PDN169100 0011323B0CAF 1750PDN170500 0011323B0CB1 1750PDN171600 0011323B0CB3 1750PDN172700 0011323B0CB5 1750PDN173800 0011323B0CB7 1750PDN174900 0011323B0CB9 1750PDN175000 0011323B0CBB 1750PDN176100 0011323B0CBD 1750PDN177200 0011323B0CBF 1750PDN178300 0011323B0CC1 1750PDN179400 0011323B0CC3 1750PDN180500 0011323B0CC5 1750PDN181600 0011323B0CC7 1750PDN182700 0011323B0CC9 1750PDN183800 0011323B0CCB 1750PDN184900 0011323B0CCD 1750PDN185000 0011323B0CCF 1750PDN186100 0011323B0CD1 1750PDN187500 0011323B0CD3 1750PDN188600 0011323B0CD5 1750PDN189700 0011323B0CD7 1750PDN190800 0011323B0CD9 1750PDN191900 0011323B0CDB 1750PDN192000 0011323B0CDD 1750PDN193100 0011323B0CDF 1750PDN194200 0011323B0CE1 1750PDN195300 0011323B0CE3 1750PDN196400 0011323B0CE5 1750PDN197500 0011323B0CE7 1750PDN198600 0011323B0CE9 1750PDN199700 0011323B0CEB 1750PDN200800 0011323B0CEDCCY0PDNAAA#BBCC为下面公式中mod CC (猜测八九不离十)Y0估计为批次号,Y值为1-9,可以是A,B,C,计算的时候用0,1,2代替PDN代表918机型AAA三位十进制数代表第AAA个号一位数代表由CC个数组成的循环数组BB两位十进制数每当AAA到999的时候BB进1,这个数值不要太大一般控制在15以内,比如1750PDN999800之后就是1750PDN000901https://www.openos.org/threads/sn.4469/
2025年01月22日
327 阅读
0 评论
0 点赞
2025-01-19
Apache .htaccess 301重定向规则大全,赶紧收藏吧
本文适用于Apache或基于Apache的第三方Web Server软件如LiteSpeed等,需要支持.htaccess文件的环境。Nginx下的301见Nginx常用的301重定向规则1单文件的重定向适用于网站结构调整,而又完成URL权重的传递。同域名下将example.com/oldfile.htm重定向至 example.com/newfile.htmRedirect 301 /oldfile.htm /newfile.htm2将文件重定向至不同域名下,如 example.com/oldfile.htm 重定向至 example.net/newfile.htm:Redirect 301 /oldfile.htm example.net/newfile.htm给站点换域名适用于给站点更换域名,比如站点弃用域名example.com,打算启用新域名example.net ,这时候我们需要做301重定向让搜索引擎知道我们启用了新域名来完成整站权重的转移。在站点根目录.htaccess文件中添加以下规则:RewriteEngine on RewriteCond %{HTTP_HOST} ^example.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.example.com [NC] RewriteRule ^(.*)$ http://example.net/$1 [L,R=301,NC] full domain 301 redirect强制使用www访问强制使用www来访问,将example.com重定向至www.example.com了解点SEO的朋友都知道搜索引擎喜欢URL唯一化,如 example.com 和 www.example.com 访问内容完全一样的时候比较妥善的做法是统一URL,我们知道网站访客对页面内容有足够兴趣的时候他们可能会在互联网上传播你的内容,如果两个域名未做统一标准化URL处理的的时候会出现这种情形:访客A分享了内容 example.com/1.html,访客B分享了内容 www.example.com/1.html,这样一来显然对SEO非常不友好的。如何解决?建立统一地标准URL,你如果想全部使用 www.example.com作为主域的话可以在.htaccess文件中添加以下规则来强制example.com重定向至带有www的域名访问:RewriteEngine on RewriteCond %{HTTP_HOST} ^example.com [NC] RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC] force www 301 redirect强制不使用www访问强制删除www来访问,将www.example.com重定向至example.com该功能和上一段完全相反,其实移除www访问让域名变得更简短倒也是一种不错的选择:使得域名更简短,特别在手机上如果手工访问站点的话会方便得多。规则如下RewriteEngine on RewriteCond %{HTTP_HOST} ^www.example.com [NC] RewriteRule ^(.*)$ http://example.com/$1 [L,R=301,NC] force non www 301 redirect更换文件扩展名适用于文件后缀名的更换,如example.com/file.php 替换为 example.com/file.htmRewriteEngine On RewriteCond %{REQUEST_URI} .php$ RewriteRule ^(.*).php$ /$1.htm [R=301,L] file extension 301 redirect强制https访问适用于开启了ssl的站点,需要统一使用https访问RewriteEngine on RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}强制http访问处于某种原因如证书到期了又不想续了,需要关闭ssl将URL由https重定向至httpRewriteEngine On RewriteCond %{HTTPS} on RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}
2025年01月19日
224 阅读
5 评论
0 点赞
2025-01-19
Nginx常用的301重定向规则
仅适用于Nginx, Apache请移步: Apache .htaccess 301重定向规则大全,赶紧收藏吧注意: 所有代码作用范围都在server配置区域中:server { #Rewrite Rules }不带www重定向带有wwwif ($http_host !~ "^www.towait.com$") { rewrite ^(.*) http://www.towait.com$1 permanent; }或if ($host !~* ^www\.) { rewrite ^(.*)$ $scheme://www.$host$1 permanent; }带有www重定向不带wwwif ($http_host !~ "^towait.com$") { rewrite ^(.*) http://towait.com$1 permanent; }域名a.com重定向b.comif ($http_host ~ "^a.com$") { rewrite ^(.*) http://b.com$1 permanent; }强制HTTPS访问1在服务端配置SSL的情况if ($scheme != "https") { return 301 https://$host$request_uri; }2在CDN端配置SSL证书的情况if ($http_x_forwarded_proto = "http") { return 301 https://$server_name$request_uri; }
2025年01月19日
172 阅读
1 评论
0 点赞
2025-01-19
解决Nginx中强制跳转HTTPS访问出现的太多重定向错误
因为可以白嫖HTTPS服务,所以目前很多项目都部署在cloudflare的CDN中,此前都用的自己服务端的SSL证书,今天在cloudflare申请了一年的免费证书,在做URL统一化的时候(强制www和https访问)发现重定向次数过多的错误(redirected you too many times),这是由于我未在服务端配置SSL证书,也就是说cloudflare以HTTP回源,所以服务器接收到的信息就是HTTP请求,但是受强制HTTPS访问规则影响,服务端又给它重定向到HTTPS,又回到了CDN那边,结果CDN又产生HTTP回源请求,这就形成了一个闭环,听上去有点绕,总之访问页面就这么来回无限循环了。此前在服务端配置了SSL并强制用HTTPS访问的nginx规则是if ($scheme != "https") { return 301 https://$host$request_uri; }现在如果我们未在服务端配置SSL使用CDN端的SSL证书并启用HTTPS访问的正确写法是if ($http_x_forwarded_proto = "http") { return 301 https://$server_name$request_uri; }
2025年01月19日
449 阅读
0 评论
0 点赞
2025-01-18
Typecho允许多个域名绑定同一个网站
Typecho默认只认后台设置的域名,通过域名访问网站主题资源都是从设置的域名进行加载的,此时如果你绑定了其他域名,使用其他域名访问网站,资源也是从网站设置的域名进行加载的,这个就属于跨越加载,而浏览器部分资源不允许跨域加载。举个常见的例子,比如你网站后台设置的域名为qq.com,但同时你又给网站绑定了www.qq.com,那么使用www.qq.com的域名进行访问,网页加载的资源实际上还是从qq.com加载的,而qq.com和www.qq.com其实是算是不同的域名。这种情况一般都是推荐www.qq.com设置301重定向到qq.com,一般服务器面板啥的都有相关设置,设置一下就好。但如果你想两个域名同时都可以访问,不想弄301重定向的话,可以在网站根目录下修改config.inc.php文件,在里面添加下面这行代码即可。define('__TYPECHO_DYNAMIC_SITE_URL__',true);不过还是推荐301重定向的方案,程序默认关闭的东西肯定有一定道理的,比如seo考量(比如a,b,c三个域名绑定一个网站,搜索引擎如果看到啦这种会不会判断为抄袭,觉得其中两个域名抄了另一个域名,不过感觉qq.com和www.qq.com这种有无www的应该没啥影响,其他的情况就不好说了),安全考量等等。
2025年01月18日
165 阅读
0 评论
0 点赞
2025-01-16
lnmp自动备份网站文件和数据库并上传到Onedrive
1 备份的意义为什么要自动备份网站文件和数据库且还要自动上传到云盘?都说数据无价!这么做的主要原因是云厂商可能会把我们的账号封禁,连同这个账号下的全部VPS直接销毁!还有VPS所在机房、数据中心火灾等灾难也可能导致我们的服务器上的数据消失在灿烂的焰火中。刚好,我有个稍稍有点悲伤的故事你稍稍了解一下,具体点的吐槽发布在论坛里,点此访问。我其中一个网站用的是甲骨文云(Oracle cloud)付费账户的VPS。尽管是付费用户,我依旧用的他们家可免费使用的服务器,确实是那个网站已经足够使用。甲骨文封禁账号早有耳闻,这个事情发生属实意料之中。却没想到这么粗暴,直接封号删机,连数据转移的机会都不给。还好,网站内容不多,我直接从谷歌的缓存页面将内容恢复了过来。lnmp备份网站文件和数据库上传到谷歌云盘温馨提示:各位站长、博主.. 记得做好数据备份。虽然我们个人不能做到大厂的容灾备份,但起码也算更稳妥了一分!如果还担心谷歌账号被封了咋办?那就再找找办法自动传回到自己的本地硬盘上吧!或者定时从服务器、谷歌云盘上下载备份数据到本地。2 lnmp自动备份网站上传到云盘的步骤站长WordPress建站用的是lnmp一键安装包,这个程序中自带了备份脚本。我们只需修改脚本的部分参数,安装gdrive与谷歌云端硬盘授权,并配置好自动上传脚本即可。3 修改备份脚本参数修改/root/lnmp2.1/tools/backup.sh 备份脚本的几个参数。清注意:如果升级了lnmp一键安装包,此文件应需要再次修改。Backup_Home="/home/backup/" # 此为备份文件存放目录 MySQL_Dump="/usr/local/mysql/bin/mysqldump" # mysqldump路径,如果是mariadb,替换/usr/local/mysql为/usr/local/mariadb ######~Set Directory you want to backup~###### Backup_Dir=("/home/wwwroot/vvars.com" "/home/wwwroot/5var.com") # 要备份的目录,目录用双引号括起来,多个目录空格隔开 ######~Set MySQL Database you want to backup~###### Backup_Database=("lnmp" "vvars-com") # 要备份的数据库,目录用双引号括起来,多个目录空格隔开 ######~Set MySQL UserName and password~###### MYSQL_UserName='root' # MySQL root账号 MYSQL_PassWord='yourrootpassword' # MySQL root密码 ######~Enable Ftp Backup~###### Enable_FTP=1 # 是否启用ftp备份。0 启用;1 不启用 # 0: enable; 1: disable ######~Set FTP Information~###### ftp账号信息 FTP_Host='1.2.3.4' FTP_Username='vvars.com' FTP_Password='yourftppassword' FTP_Dir="backup" # ftp服务器上存放备份的目录 #Values Setting END! 默认备份文件保存3天,可以修改backup.sh里的-3day为你指定的天数。4 挂载onedrive为本地硬盘可以参考本站之前的文章 通过rclone挂载onedrive每天定时同步VPS数据5 设置自动上传OneDrive和123pan脚本1) 编辑lnmp的备份脚本vim /root/lnmp2.1/tools/backup.sh在backup.sh基础上增加如下的两句命令即可rclone copy --ignore-existing /home/backup/ /home/onedrive/www/backup #备份到onedrive网盘 rclone copy --ignore-existing /home/backup/ /home/123pan/www/backup #备份到123云盘保存,其中路径等内容自行修改。注意:rclone sync是同步,即本地目录有删除文件的话,远程网盘中的文件也会删除。而rclone copy –ignore-existing则是只增不减,各有各的优势,你可以根据自己的需要来选择。2) 试运行一次网站备份自动上传脚本。chmod +x /root/lnmp2.1/tools/backup.sh /bin/bash /root/lnmp2.1/tools/backup.sh出现Backup website files …,表示脚本执行成功。6 设置定时备份任务1)接下来执行crontab -e在最后一行添加0 2 * * 2 /bin/bash /root/lnmp2.1/tools/backup.sh其中/root/backupload.sh是脚本的完整路径,你可以根据自己的喜好修改。保存成功后,服务器每周二的凌晨2点,系统会自动备份服务器网站文件和数据库并上传到OneDrive和123pan。2)计划任务添加完毕后,执行此命令重启计划任务服务;systemctl restart cron #或 service cron restart
2025年01月16日
311 阅读
0 评论
0 点赞
2025-01-15
通过rclone挂载onedrive每天定时同步VPS数据
1. 准备工作在教程开始之前,首先要做一些准备工作,主要有三点。首先就是注册一个OneDrive网盘账号,如果你已经有了可以忽略这点。其次是可以利用lnmp添加OneDrive作为备份文章备份文件。最后是一句话带你认识Rclone这个软件,Rclone是个非常强大的云存储文件管理命令行程序。2. 安装RcloneRclone安装非常简单,远程登录VPS服务器后,只需执行一条命令:curl https://rclone.org/install.sh | sudo bash安装成功后的提示如下。rclone v1.56.0 has successfully installed. Now run "rclone config" for setup. Check https://rclone.org/docs/ for more details.需要再安装一下需要的包apt install fuse3 -y3. OneDrive授权这一步是在本地电脑Windows系统操作,进入Rclone下载页面,点击下载Windows版本的Rclone软件,选择Intel/AMD-64Bit即可。如果是32位操作系统,那么选择32Bit的。下载后将全部文件解压到D:\rclone文件夹,打开CMD命令窗口,依次输入下面两条命令。cd /d d:\rclone rclone authorize "onedrive"第二条命令输入完回车后会自动打开浏览器,登录你的OneDrive账号,点击“是”按钮同意授权。成功后返回到CMD命令窗口就能看到长串授权码,即花括号以及里面的内容。将授权码复制下来保存备用,有效期1个小时。Paste the following into your remote machine ---> {"access_token":"EwCAA8l6BAAUwihrrCrmQ4wuIJX5mbj7rQla6TUAAS7oJFl1pmRc4whIlOj5am6oPQ+zf1kOcygsi5JHL2IgXh55prjh3r6P/fSZr8K9UJ58Pksh1YTJkzL/kHywyZnEvM8kDr55B1J//SXLJ1sGNsNR9vH0Rmz9xMrnl6GFrF8z+UQxi+GL3L3MpBN3NenacA0+pmVXKk8hghj64a8xxEFhlc+b0LJCp4yMg+96548752OPQwLZEPikbJ1zB5Wm5IUzuq03zNKa5lOicGET0l8zWW+itYg2Ca+mCS9DRm5e8NcPL5yiLZmRIm4vCI3pIQGKxEKghQG2lLmjMnWJj8BMotxH9Px2/XWs2TJ3BdLbuX2EjdYy8MNoBbaYXafe3uHx!UpdOwFHCiKnJqYomn*8cCFNP7RM1W8DMzXNBAlgTnuaRo6v7xjxFX3xIrXWonyCk*l1Z7glOXEmRS","expiry":"2021-09-16T15:47:47.8171297+08:00"} <---End paste4. 配置Rclone和安装相同,Rclone配置也只需要一条命令。不同的是后续操作比较繁琐,需要有耐心哈。在配置过程中如果输错字母,可以按Ctrl+Backspace删除。我们首先在VPS远程登录窗口输入下面命令:rclone config新建远程网盘连接,输入字母n回车。No remotes found - make a new one n) New remote s) Set configuration password q) Quit config n/s/q> n给远程网盘起个名字,因为我是RackNerd服务器备份到OneDrive网盘,输入名称onedrivename> onedrive接着会出现一系列网盘名字列表,我输入26选择OneDrive网盘。需要注意的是这个序号以后可能会有变动,填写的时候再次确认下。Storage> 36Client ID无需设置,直接回车使用默认的。OAuth Client Id Leave blank normally. Enter a string value. Press Enter for the default (""). client_id>Client Secret也不用填写,回车使用默认值。OAuth Client Secret Leave blank normally. Enter a string value. Press Enter for the default (""). client_secret>选择OneDrive网盘服务器的区域,我用的是国际版输入1,如果你用的是世纪互联,那就输入4Choose national cloud region for OneDrive. Choose a number from below, or type in your own value 1 / Microsoft Cloud Global \ "global" 2 / Microsoft Cloud for US Government \ "us" 3 / Microsoft Cloud Germany \ "de" 4 / Azure and Office 365 operated by 21Vianet in China \ "cn" region> 1不需要设置高级配置,输入n后回车Edit advanced config? (y/n) y) Yes n) No (default) y/n> n因为我们是远程连接VPS主机,不能自动配置,填写n回车。Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes (default) n) No y/n> n这时候将第二步获取的OneDrive授权码粘贴到config_token>后面,回车。Enter a string value. Press Enter for the default (""). config_token>选择OneDrive网盘,输入1Choose a number from below, or type in an existing value 1 / OneDrive Personal or Business \ "onedrive" 2 / Root Sharepoint site \ "sharepoint" 3 / Sharepoint site name or URL (e.g. mysite or https://contoso.sharepoint.com/sites/mysite) \ "url" 4 / Search for a Sharepoint site \ "search" 5 / Type in driveID (advanced) \ "driveid" config_type> 1Rclone找到一个OneDrive盘,输入y确定回车。Drive OK? Found drive "root" of type "personal" URL: https://onedrive.live.com/?cid=a40d32de9 y) Yes (default) n) No y/n> y确认OneDrive网盘的所有信息,输入y回车。[rn2od] type = onedrive token = {"access_token":"EwBoA8l6BAAU6k7qJd7*3wELXHy... drive_id = a40d32de9 drive_type = personal -------------------- y) Yes this is OK (default) e) Edit this remote d) Delete this remote y/e/d> y配置完成后Rclone显示远程网盘列表,至此配置结束,输入q退出。Current remotes: Name Type ==== ==== onedrive onedrive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q> q经过上面的设置后,我们就成功地将Rclone连接挂载到OneDrive网盘啦。5. 编写同步脚本这个脚本也不算麻烦,首先输入下方命令新建同步脚本。vi rclone.sh按Insert键进入编辑模式,粘贴以下三条内容。#!/bin/bash rclone sync /www/backup/database onedrive:bak/database rclone sync /www/backup/site onedrive:bak/site然后按Esc键退出编辑模式,输入:wq保存并退出。脚本首行是注释,上面的脚本只包含两条命令,第二行是将/www/backup/database目录及里面的数据库备份文件,同步到OneDrive的bak/database文件夹里。第三行是同步网站备份文件。接着为新建的脚本增加执行权限。chmod +x rclone.sh6. 设置定时任务脚本编写成功后,需要设置定时任务来运行脚本,才能完成自动备份。在设置之前,首先将VPS服务器的时区设置为东八区,与我们的作息相同。如果你是国内的VPS或云服务器通常不需要设置。cp /usr/share/zoneinfo/Asia/Chongqing /etc/localtime输入y确定。接下来我们设置定时任务,输入下方命令。crontab -e按Insert键进入编辑模式,在尾部添加一行即可。35 1 * * * /root/rclone.sh >> /root/rclone.log 2>&1这行内容的意思是,每天凌晨1点35分,运行rclone.sh脚本,将网站和数据库备份文件同步到OneDrive网盘。然后等到第二天,登录OneDrive盘就能看到备份文件已经同步过来了。7. 将OneDrive挂载到本地(可选)创建需要挂载的文件夹mkdir /onedrive后台运行挂载命令1 挂载onedrive到home/onedriverclone mount onedrive: /home/onedrive --allow-other --allow-non-empty --vfs-cache-mode writes --daemon2 挂载123pan到home/123panrclone mount 123pan: /home/123pan --allow-other --allow-non-empty --vfs-cache-mode writes --daemon挂载成功后输入df -h会显示挂载信息root@v2202411242922300191:/home# df -h Filesystem Size Used Avail Use% Mounted on udev 3.9G 0 3.9G 0% /dev tmpfs 791M 656K 791M 1% /run /dev/vda3 503G 81G 402G 17% / tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock 123pan: 1.0P 0 1.0P 0% /home/123pan onedrive: 1.1T 922M 1.1T 1% /home/onedrive8 卸载挂载fusermount -u /home/123pan
2025年01月15日
405 阅读
1 评论
0 点赞
2025-01-13
帝国CMS如何避免重复发布文章标题,避免重复收录!
帝国cms发布文章的时候,或者你采集文章的时候,如果不注意,很容易发布重复文章,或者采集重复文章,形成重复收录,重复收录的页面过多,百度会判断你为作弊行为,进行K掉页面,或者降权,就如下图,不经意间,会产生很多重复收录,这个时候怎么办那?针对这个问题的解决方法如下:1,进入后台,点击栏目–》管理栏目!2,针对每一个栏目,点击修改(可以逐个修改)!3,选项设置–》勾选标题重复检测!通过以上三步的设置,你在栏目中复制重复的标题,系统就会提示你“重复标题,无法发布”就算采集文章,也是无法发布的,是不是非常的简单那?赶快去操作下吧,把每一个栏目都进行设置下,避免重复标题的产生,SEO就是细节工作,逐渐的优化网站,让网站达到更好的用户体验和完善,好了,今天就讲解到这里。
2025年01月13日
216 阅读
0 评论
0 点赞
1
...
3
4
5
...
11