NianSir 发布的文章 - NianSir's BLOG
首页
关于 | About US
文章协议
友情站点
搜 索
1
【Minecraft | 我的世界】PC存档转移到服务器存档教程
8,332 阅读
2
记一次七日杀(7Days to die)游戏服务器搭建及联机问题和解决方案
1,274 阅读
3
【陌辞论坛】送一批邀请码,带惊喜大礼
957 阅读
4
Steam低价CDK激活码?必须安利CDKEYPlus!
862 阅读
5
【免费主机】进行时数据 - 免费1G主机
856 阅读
生活杂谈
好物分享
技术探索
代码杂烩
学习笔记
登录
/
注册
搜 索
标签搜索
学习笔记
网络
CDN
免费
网络安防
Minecraft
Windows
服务器搭建
参赛
奖品
Python
实战
站点优化
PILOT
百乐
优质文具
OurlIMG
免费图床
公益项目
免费主机
NianSir
累计撰写
25
篇文章
累计收到
13
条评论
首页
栏目
生活杂谈
好物分享
技术探索
代码杂烩
学习笔记
页面
关于 | About US
文章协议
友情站点
用户登录
登录
注册
找到
25
篇与
相关的结果
2024-05-16
完美解决Typecho升级新版后无法在$item中直接获取文章/页面对应的permalink问题
前言 一转眼博客平稳运行就过去两年了,玩是玩的不少,文章没码几篇,最近就想着好好调整一下认真写点博客,顺便也好记录下一些学习过程中的心得,就把博客升级顺便换个主题。 本站使用的是开源博客程序Typecho,选择Typecho的理由很简单——开源、轻便、易扩展,几年前Typecho正式版1.1发布后官方就一直没有新消息了,还以为又一大开源项目就要隐退,没想到23年愚人节typecho官方社区突然发声——不是在开玩笑,我们回来了:Typecho1.2,接着官方社区又开始活跃起来了,距离最近的正式版发布就是1.2的修复版,在23年6月份发布,主要就是修复了一些高危漏洞,但开发版本已经更新到了1.3,本着尝鲜的原则NianSir也是很快的就更新到了最新版本(更新方法应该不用多说,找到这篇文章的同志们应该都是已经完成了更新) 什么?你说你还不会更新?行吧,那就简单说说:Typecho升级备份好数据;下载最新版Typecho压缩包,解压后重新打包 install.php、index.php、/var/整个文件夹、/admin/整个文件夹 ;到你的站点目录下解压这个新的压缩包覆盖替换这些内容(千万不要打包/usr/文件夹,一换一个不吱声); 完成这些工作后,重新访问后台(什么?你的后台进不去一堆PHP报错?新版本的PHP要求 ≥ 7.2,记得改好PHP版本再来),然后会有个提示确认更新Typecho的页面,选择确定更新后即可,如果你的站点启用了不支持高版本PHP的插件进入前台也是大概率一堆报错或者直接500错误,这个时候建议在后台全部禁用插件,主题换默认主题,然后再一个一个启用并观察前台是否报错,找出能用的插件,其他基本可以删掉了,其他问题常见的话网上也有很多大佬有给出解决方案,多找找就好。解决Joe修改版中的permalink无法获取 扯了这么多题外话,该言归正传了,我遇到的问题就是升级到Typecho开发版1.3之后因为要换高版本PHP,干脆就直接换成了PHP8.1,再搭配上Joe主题(在此之前我一直使用小灯泡设计的splity主题,也是很不错的,就是单调了点,再加上splity主题原作者也很久不咕咕了,干脆就换个新的花哨点的主题)的修改版本,因为Joe官方主题在22年就停更了,而且很多资源都是用外链方式引入,很多资源也炸了,后来热爱Joe的粉丝团体有大佬做了进一步的优化和修正,就出来了现在的Joe修改版1.2.1,作者也在Github开源了,大家喜欢的话也可以去支持一下:https://github.com/jd82k/Joe/独立页面的链接修复 但是在换上这个主题之后,我发现导航顶端的独立页面和侧边栏开启的随机文章推荐都出现了报错,问题都是Array中没有定义['permalink'],导致这两个地方a链接的href指向地址都无法获取,二话不说直接去看主题的源代码,根据第一个报错信息——独立页面的报错信息可以确定问题出在/usr/themes/Joe/module/header.php的第90行,通过查看这个文件的源代码可以看到第90行是这样的:<a class="item <?php echo $this->is('page', $item['slug']) ? 'active' : '' ?>" href="<?php echo $item['permalink'] ?>" title="<?php echo $item['title'] ?>"><?php echo $item['title'] ?></a> 我们发现其中的问题就出在href通过 <?php echo $item['permalink'] ?> 来获取,接下来我们使用print_r来打印一下 $item 的内容,发现item中并没有permalink这一项,但是能找到slug也就是URL中使用的缩略名,于是解决这个地方的问题就很简单,只需要我们手动构造permalink即可,于是我把href的内容修改为:<?php echo $this->options->siteUrl().$item['slug'].'.html' ?> 成功解决独立页面永久链接问题,这里其实在第一次修改的时候我发现href会默认补齐当前的路径地址,所以一开始我并没有添加 $this->options->siteUrl() 这一部分,后来测试的时候发现如果进入了站点子目录或者不在首页URL下这个生成的地址就会出错,于是去查阅Typecho开发文档发现有这么一个方法可以获取到站点链接。热门文章的链接修复 接下来就是解决第二个地方的报错了——PC侧边栏的随机文章推荐。同样根据报错信息可以知道问题出在/usr/themes/Joe/public目录下的 function.php ,这是个纯PHP函数文件,大概在297行左右,热门文章获取函数中,我们可以看到代码是这样实现的:/* 获取侧边栏作者随机文章 */ function getAsideAuthorNav() { if (\Helper::options()->JAside_Author_Nav && \Helper::options()->JAside_Author_Nav !== "off") { $limit = \Helper::options()->JAside_Author_Nav; $db = \Typecho_Db::get(); $prefix = $db->getPrefix(); $sql = "SELECT * FROM `contents` WHERE cid >= (SELECT floor( RAND() * ((SELECT MAX(cid) FROM `contents`)-(SELECT MIN(cid) FROM `contents`)) + (SELECT MIN(cid) FROM `contents`))) and type='post' and status='publish' and (password is NULL or password='') ORDER BY cid LIMIT $limit"; $result = $db->query($sql); if ($result instanceof \Traversable) { foreach ($result as $item) { $item = \Typecho_Widget::widget('Widget_Abstract_Contents')->push($item); $title = htmlspecialchars($item['title']); $permalink = $item['permalink']; echo "<li class='item'><a class='link' href='' title=''></a>...</li>"; } } } } 在这段代码中随机获取文章实际上是通过查询数据库返回对应的数据条目,同样使用print_r打印一下 $item 中的内容,同样是没有permalink键,打开数据库管理工具,查看一下数据表的内容和结构: 发现在文章数据表中能够直接使用的项只有cid、title、文章slug,并没有所属分类信息,再次检查其他数据表,最终在表relationships中找到了cid对应的mid: 同样在表metas中能够找到mid对应的类别slug: 因为我的永久链接样式在后台是这样设置的: 所以我的文章具体链接不能够仅仅只根据文章slug组合出链接,而是还需要在中间加入类别的slug,因此我们在这个方法中加入一个sql查询,根据文章cid查询出文章所在类别的slug,最后再组合:修改代码 $permalink = $item['permalink']; 为以下内容:$cid = $item['cid']; // 根据 cid 值查询对应的 mid 值 $mid = $db->fetchRow($db->select('mid')->from('table.relationships')->where('cid = ?', $cid)); // 根据 mid 值查询对应的类别 slug 值 $classSlug = $db->fetchRow($db->select('slug')->from('table.metas')->where('mid = ?', $mid['mid'])); // 构建完整的 URL $permalink = \Helper::options()->siteUrl.'/'.$classSlug['slug'].'/'.$item['slug'].'.html' ?? ''; 与之前修改独立页面地址的方法不同的是,在独立页面地址组合的时候我们使用的是 $this 来获取对应属性,但这是个纯PHP函数文件而非主题文件,没有产生 $this 对象,所以不能使用这个方法,在查看其他代码的时候发现可以使用 \Helper::options()->siteUrl; 实现在其他文件中获取,于是就使用这个方案了,保存代码刷新首页,在首页和子类页面中查看热门文章链接均正常,修复完成!修复“那年今天”模块 那年今天模块是Joe自带的模块,部分插件/其他模板也会加入这个模块,但代码实现原理可能不相同,所以如果不是Joe主题的这个模块还需要根据具体报错情况分析解决。 通过观察报错问题,可以发现这次出现了两个问题,一个是和上面一样的permalink无法获取,这里解决方案和第二个修复一样,还有一个问题就是时间日期获取失败,同样是在结构中无定义,问题出在文件/usr/themes/Joe/module/aside.php大概64行的位置if ($result instanceof Traversable) { foreach ($result as $item) { $item = Typecho_Widget::widget('Widget_Abstract_Contents')->push($item); $historyTodaylist[] = array( "title" => htmlspecialchars($item['title']), "permalink" => $item['permalink'], "date" => $item['year'] . ' ' . $item['month'] . '/' . $item['day'] ); } } 因为我们已经知道了在数据表中已经没有了直接的时间记录,而是 created 和 modified 字段,一般将created(发布时间)作为展示的时间,所以获取这个时间戳转换成标准的年月日格式再赋值给data即可:if ($result instanceof Traversable) { foreach ($result as $item) { $item = Typecho_Widget::widget('Widget_Abstract_Contents')->push($item); $cid = $item['cid']; // 根据 cid 值查询对应的 mid 值 $mid = $db->fetchRow($db->select('mid')->from('table.relationships')->where('cid = ?', $cid)); // 根据 mid 值查询对应的类别 slug 值 $classSlug = $db->fetchRow($db->select('slug')->from('table.metas')->where('mid = ?', $mid['mid'])); // 构建完整的 URL $permalink = $this->options->siteUrl.'/'.$classSlug['slug'].'/'.$item['slug'].'.html' ?? ''; $historyTodaylist[] = array( "title" => htmlspecialchars($item['title']), "permalink" => $permalink, "date" => date('Y-m-d', $item['created']) ); } }最后访问首页/其他页面观察侧边栏的“那年今天”模块,正常显示,修复完成!其他问题
2024年05月16日
106 阅读
0 评论
9 点赞
2024-05-14
通过Saas方式免费使用CNAME接入CloudFlare加速你的网站
1·前言: 好久没咕文章了,近来正好在研究海外服务器搭建的站点加速访问方案,虽然说当今各服务商大厂竞争激烈,国内CDN个人使用成本也是极低的,尤其是对于NianSir这样的小站长来说,几乎是可以白嫖的,但这有一个前提——那就是需要备案域名。 并不是说备案域名很麻烦,而是站点已经上线运营状态,再接入备案可能要耽搁一段时间,再者就是一些域名后缀也不支持备案,这样我们基本就可以不考虑国内CDN加速方案了,但海外/亚太加速方案成本较高,现在CloudFlare第三方代理平台也停止了纯CNAME接入域名的方式了(早期CloudFlare的代理商方案可以免费CNMAE接入域名,不需要改DNS服务器,但一两年前CloudFlare就取消这个策略了,但是以前已经接入的域名不受影响,还能继续用,只是不能新增了)。 目前NianSir大多数海外站点使用的加速方案是一家很不错的亚太CDN服务提供商——FarCDN,主要是价格很实惠,而且都是亚太节点加速,速度快、带宽也够,而且被攻击的流量不会计入套餐流量,如果各位站长朋友有需要可以留言给你发注册邀请码(违法站点/服务勿扰,谢谢),但海外路线还是选择CloudFlare毫无疑问,那么现在问题来了,我的新站不想用cloudflare的dns,但现在官方又不支持免费CNAME直接接入,难道这样就无解了吗?显然不是,CloudFlare格局不会这么小,对于免费用户如果想CNAME接入域名,CloudFlare提供了Saas,通过Saas可以免费实现CNAME接入,只不过需要一个“中转域名”,只需要将“中转域名”使用NS接入CloudFlare后设置Saas回源地址,再用想要CNAME接入的域名解析到这个“中转域名”上,就可以实现CNAME接入CloudFlare,理论可行,开始实践:2·准备工作:使用Saas免费CNAME方式接入CloudFlare需要使用到一下工具/材料:“中转域名”(使用NS接入):用于NS接入CloudFlare的域名,可以是一个不用的闲置域名,但是一定不能是待会要CNAME接入的域名,这个域名开启Saas服务后相当于是你的专属CNAME接入地址,建议注册一个便宜的域名,到期后可以低价续费/抛弃换新域名需要CNAME接入的域名:比如blog.niansir.com,这个域名待会可以直接CNAME接入CloudFlareCloudFlare账户:可以直接在官网操作,也可以在代理商面板操作外币卡/已绑卡的PayPal(CloudFlare已绑定支付方式的可以忽略):Saas功能需要绑定支付方式后开通使用,功能是免费的(免费100条SAAS主机记录,超过后才要付费0.1美元/条,对于我们普通玩家来说免费的足够用)没有外币卡推荐直接用PayPal绑定,不限地区,PayPal只要绑卡了就行,随便是外币卡还是银联卡,如果你的账户没有绑定过支付方式,待会可能要支付1美元用于验证支付方式,验证后会退还3·步骤:第一步——将“中转域名”通过NS接入CloudFlare先在CloudFlare添加你的“中转域名”,选择NS接入(DNS完全接入)进入你选择的“中转域名”注册商的管理平台,修改域名的DNS服务器到CloudFlare一般CloudFlare免费账户的DNS地址是下面两个:接入方式DNS服务器地址NSnia.ns.cloudflare.comNSburt.ns.cloudflare.com修改完后等待生效,生效后CloudFlare会发送一封通知邮件,接下来就可进入第二步了第二步——开启Saas服务并配置源站 如果你的CloudFlare没有开启过Saas,那就随便点击一个已经接入的域名管理页面,在导航栏"SSL/TLS -> 自定义主机名"(在部分代理面板直接在导航栏就能找到Saas),点击开启后即可使用,如果你的账户开启过CloudFlare Saas服务,则功能默认开启,无需再次启用 开启后进入Saas/自定义主机名页面,填写回退源(这个二级域名需要在CloudFlare解析到源站IP,并且开启代理,也就是启用CDN加速) 回退源一栏填写你的“中转域名”的一个二级域名,名称想怎么取随便,好记就行,待会CNAME接入的时候地址填的就是这个地址第三步——将域名CNAME接入CloudFlare填写完后添加自定义主机名(上面第二步那个按钮) 在主机名栏填写你需要CNAME接入的域名,其他保持默认即可,接下来设置页面会显示要求添加两条TXT记录,一条用于域名验证,一条用于SSL证书验证,在DNS服务商解析完毕 完成上面步骤后,到你需要CNAME接入的域名解析商管理平台,添加CNAME解析,目标地址就是刚刚设置的自定义主机名,接下来就可以体验CloudFlare CDN服务啦!4·结语 总的来说,通过CloudFlare Saas服务可以免费通过CNAME方式接入CloudFlare CDN,但缺点也是显而易见的,一个主域名回退源只能设置一个,也就是只能设置一个源服务器IP,对于不同服务器的站点则需要更多的“中转域名”帮助其接入服务,成本自然就会有所上升,再者就是如果“中转域名”续费价格较高,则还需每年更换“中转域名”,维护繁琐,但毕竟免费,那还要啥自行车,喜欢折腾的朋友可以试试。最后,感谢各位佬们阅读本文章,感谢各位朋友一直以来的支持,如果文章存在任何错误或不懂的地方,欢迎留言指正~(Tip:NianSir也有自己的公众号喔,微信搜索“NianSir年先生”或者搜索微信号niansirblog即可关注,感谢支持!)高阶教程预告:未来更新CloudFlare的高阶玩法——CloudFlare优选IP,实现最优的国内CloudFlare体验!感兴趣的朋友不要错过喔~
2024年05月14日
196 阅读
0 评论
6 点赞
2024-04-02
记一次七日杀(7Days to die)游戏服务器搭建及联机问题和解决方案
前言 近日一直苦恼于找几个好哥们一起happy,无奈电子ed根本不想碰瓦罗兰特CS2这类游戏,于是在Steam库中找找可玩性比较高又能联机,成本又比较低的游戏整个服务器来玩玩,于是——我就选择了七日杀(7 Days To Die)主要的理由如下: 可玩性高,生态好:支持MOD,可以扩展更多有趣玩法,且基础玩法也不赖,更新历史悠久,现在已经更新到了A21版本。 可联机:支持自己假设服务器拉好基友一起联机happy。 低价:史低只要19块,在CDKEYPlus购买无需等到大促日常也只需要18多一点,大学牲完全可以接受。(什么?你也想去买?地址丢这里了:https://www.cdkey.plus ) 话不多说直接开搞,先去看看有没有可以直接上手的面板服,去搜了一下,比较出名的就布丁服务器了,啥配置不清楚,只知道1个月100块入门直接把我劝退,这还开个集贸啊,倒也不是一个月一百付不起,而是自己搭建更有性价比[/手动滑稽]。 提前声明一下,这篇文章主要是对开服过程中遇到的坑点记录,不是完整的开服教程,需要完整的开服教程可以自行查阅其他优质博主的文章,当然如果没有解决你也可以留言我后期也出一篇。 开服探索-Linux篇 看了一下网上的文章,关于搭建七日杀服务器的教程大多直接让你登录Steam客户端下载服务端,这个方法确实简便,但是这样的方法只适合本机开服(so?那我干嘛不直接开房间联机呢?)所以直接ban掉这个方案,剩下的大多就是在云服务器开服或者Docker(实际上也是服务器咯),优先性能考虑,直接自信选择了Linux,用的4核16G的轻量,CPU是Intel铂金,直接安排上Cenos7.x,为了方便改文件等等一系列操作,还是先装上了个宝塔面板,捣鼓好了后也是直接安排上steamcmd,下载就没什么好说的了,七日杀服务端有16G左右,等个十几二十分钟服务端下载好了后也是兴冲冲的开始跑运行脚本了,结果直接报错,进程闪退,去查阅资料说什么七日杀服务器只支持Cenos8以上,虽然很不爽,但是还是乖乖的再重装Cenos8化了个把小时重试了一遍,结果好家伙直接一堆不支持和报错(Cenos8很多的库的停止支持了,装不上),退一步越想越气,干脆直接按照CSDN一博主分享的Ubuntu 22.x版本系统再花个把小时重新操作了一波,结果开服的时候还是GG了,这里贴一张运行开服脚本的图: 去检查了一下进程,仍然是没有启动成功,另外补充一下可能有些找到此篇文章的友友们是进来找Linux开服遇到的坑的,那就这里也顺便提一下我在Linux测试的时候安装steamcmd运行环境遇到的问题:大部分系统都需要手动安装,使用以下指令:# Ubuntu 或 Debian $ sudo apt-get update $ sudo apt-get upgrade # CentOS $ yum update -y $ yum upgrade -y(俺也不懂Linux,只知道经常要update,可能类似刷新吧,建议仔阅读steamcmd开发者文档,里面有更详细的指令和说明:developer.valvesoftware.com)然后就是安装环境依赖了# Ubuntu $ sudo apt-get install glibc.i686 libstdc++i686 -y # CentOS $ yum install glibc.i686 libstdc++i686 -y看上去就是游戏要使用的c++库了,按理说只要这一步安装成功了后面服务器启动就是正常的,但是很遗憾我的没有成功(可能我没注意其实我用这个指令的时候没有安装上)总之就是在Linux平台的折腾有三四遍最后都没成功,查阅了很多文章和帖子,发现对于这块的记录实在是太少了,然后就转战Windows Server系统了。 开服探索-Windows篇 经过头大的Linux折腾后,还是回到了熟悉的Windows,仍然是使用steamcmd客户端,匿名登陆服务器后直接下载七日杀服务端,下载好配置文件改好后直接运行,脚本提示服务器已运行,可以关闭脚本窗口了,但是检查进程时没有找到七日杀服务器,所以还是失败了,这应该是我最头大的时候了,此时已经折腾七日杀开服快两天了(要上课wu...)甚至一度准备放弃了直接房间联机或者淘宝找个低价一点的成品拿来用,但是我怎么能辜负这近乎两天的努力呢?咬咬牙,继续找解决方案,网上找到的博主基本都没有说明Windows使用steamcmd开服需要安装其他依赖库,最后还是在b站刷了几个视频才找到了关键点,是缺失C++库导致的,需要Microsoft Visual C++ 2015-2022这个库!!!(相关资源已经打包发在留言区了)安装好这个库后,服务端就可成功运行了,但是中途还会报很多黄色日志,其中会出现一些“CA”、“certificate”这样的词汇,这个就是电脑证书库缺少了几个亚马逊的CA证书导致的,我们只需要在电脑上安装一遍即可(打包发在了留言区)接下来服务器就可以看到舒心的满屏绿日志了。还有一个奇怪的问题,就是云服务商如果是设置了安全组(默认很多端口都不开放)的情况下,我们还要去开放全部端口(UDP),即便在配置文件设置了指定端口也不行,不知道为什么,如果有懂的大佬也欢迎指点一下,万分感谢!做好这些之后,你就可以喊上你的好基友一起加入happy了! 联机问题-EAC小蓝熊加载过慢/卡住 这个问题也是在联机时才发现的少数问题,几个哥们里只有一个哥们七日杀加载在EAC界面的时候速度奇慢无比,能卡住几十分钟才进去,而且进入服务器的时候还显示EAC未加载被踢出去(我的服务器开了EAC反作弊)好在这个问题早有成熟的解决方案,根本的直接手改host文件就没啥好说的了,维护太麻烦,这里直接使用一大佬写的工具:UsbEAm Hosts Editor官地方址:Dogfight360 – 羽翼城个人博客(资源文件也打包了一份在留言区)下载好解压后打开软件(管理员运行)选择EAC加速A/B后,点击延迟检测,检测完成后选中最上面的一个(延迟最低)后点击应用选中,操作完A、B后就可以关闭了 好了,主要的内容和坑基本也填完了,大致遇到的问题就这些,如果还有啥奇葩问题也欢迎留言吐槽,最后,感谢各位友友的支持!
2024年04月02日
1,274 阅读
1 评论
9 点赞
2023-12-22
Steam低价CDK激活码?必须安利CDKEYPlus!
相信喜欢打游戏的朋友们都听说过五花八门的游戏平台,其中最著名的应该就是Steam了,尽管近年来许多相似的游戏平台也不短涌入人们的视野中,但Steam游戏平台(常称为“蒸汽平台”)仍然是PCGamer界的“一方霸主”。与我们接触了解最多的国内游戏厂商不同,Steam内的大部分游戏都采用付费游玩机制,而国内的游戏厂商大多采用免费游玩+内购的形式开放给玩家们,这在一定程度上降低了玩游戏的门槛,但想要获得更强大更优良的装备就得付出几乎无上限的内购或者许多个日日夜夜的积累,而Steam平台发售的大部分游戏都是购买后“人人平等”,不存在“氪金”一说,因此付出的成本也是很有限的,甚至只需要支付购买游戏的费用。Steam能够吸引到广大Gamer的绝不仅仅是强大健全的游戏平台,更多的是创意工坊和社区文化,吸引着越来越多的人们加入。 作为入坑2年的Steam的Gamer、经典苦逼大学生,手头可支配给娱乐生活的“资金”并不宽裕,因此我也不得不精打细算,不到“大促”、“史低”字眼出现基本不会入手新游戏,这就导致只能等到节假日才能看看有没有值得入手的游戏,平日的话基本商店都不敢逛逛,库存也停留在那可怜的10+,好在功夫不负有心人,在寻找对比了各大游戏发售/经销商后,我找到了CDKEYPlus这家正版CDKEY代销商。 与Steam这样的发售商不同的是,CDEKYPlus不发行数字激活码,而是通过与开发者/发售商合作的形式批量以一些较低的价格采购正版的Steam游戏激活码,这样再以一些低廉的价格出售给我们,这样我们不仅仅购买到了正版的Steam游戏激活码,还是以一些很低廉的价格获取到的,浏览CDKEYPlus商城不难发现,尽管销售的游戏品类较少,但绝对是物超所值,有的游戏甚至是史低价的折上1折,并且关注CDKEYPlus的朋友应该都知道CDKEYPlus不仅不会在折扣结束后提高价格,而且还会经常放出一些优惠码,作为CDKEYPlus的新粉丝,NianSir也从CDKEYPlus购置了超过30款游戏,而这些花费不到100r!!! 是的,你没看错,CDKEYPlus基本只出售低价优质的好游戏(平均售价5r不到,大部分都是2~3r),为了感谢一直以来支持NianSir的朋友们,我们也与CDKEYPlus申请到了一批部署(Deployment)游戏的激活码,NianSir也游玩了一下,发现这款游戏确实很不错!还支持多人连接/匹配比赛! 废话不多说,直接上优惠码(在购买页面输入,提交后支付页面会自动抵扣): #部署游戏激活码 原价3.95r立减2.75r(实付1.20r)仅有10个数量有限 DP2324-Nian购买直达:https://www.cdkey.plus/buy/16最后祝大家新的一年越来越好喔~
2023年12月22日
862 阅读
0 评论
4 点赞
2023-05-23
【Windows系统激活】利用KMS服务器为你的Windows专业版激活
相信大家找到这篇文章的原因都一样,自己的电脑安装的是家庭版系统,家庭版系统在我们日常使用时会受到很多功能限制导致工作使用受影响,想升级获取一些受限功能,那么具体那些场景会受限呢? # Windows 家庭版和专业版的区别 首先,两者面向的用户不同,如果你是家庭用户,个人使用,Windows 10 家庭版就可以满足计算需求。如果你需要复杂的功能(如网络域或管理多台计算机(如小型办公室)上的组策略的功能),Windows 10 专业版具有这些高级功能,可使管理变得简单且集中。此外专业版还具有分配的访问权限、动态资源调配、Windows Update for Business、共享电脑配置等额外功能。 我们可以通过对比Windows 11 家庭版和专业版系统的部分功能/支持明显看出: 功能特性 Windows 11 家庭版 Windows 11 专业版 Hyper-V虚拟化 × 不支持 √ 完全支持 远程桌面 仅客户端 √ 完全支持 Windows信息保护(WIP) × 不支持 √ 完全支持 组策略 × 不支持 √ 完全支持 Windows Update for Business × 不支持 √ 完全支持 最大CPU / 内核数 支持 1 / 64 2 / 128 指派访问 × 不支持 √ 完全支持 移动设备管理(MDM) × 不支持 √ 完全支持 当然除此之外还有很多,具体感兴趣可以去查阅相关支持文档,此处不再赘述。 # 将Windows家庭版升级成Windows专业版 全新装机的话,直接U盘安装Windows专业版即可,但大多数情况下,我们的电脑已经安装了Windows家庭版并且已经使用了一段时间,如果这个时候重装系统数据怕丢失损坏,但是又需要使用Windows专业版的功能,这个时候也很简单,我们只需要找到对应版本的产品秘钥即可,如Windows 11 专业版的产品秘钥之一:TFP9Y-VCY3P-VVH3T-8XXCC-MF4YK(非Windows11用户直接去网上找自己想要的对应版本就行,有很多) 我们在“设置”->“更新和安全”->“更改产品秘钥”(不同版本可能步骤略有不同),输入你需要升级的产品秘钥,这里大概率出现报错,提示无效,我们只需要关闭网络再更改即可成功(如果还是不行请更换产品秘钥重试)。接下来就是升级操作,离线升级完成并重启后,我们就可以开启网络了,这个时候我们会发现系统提示未激活。 # KMS激活Windows 专业/其他高级版本系统 接下来就是最后一步了——激活系统(此处的kms激活方案不仅可以激活专业版,其他如专业工作站版企业版也可以),我们打开CMD命令提示符窗口(管理员运行),依次输入以下指令:①更改激活码(根据所需系统更改,此处为win10/11使用的激活码)KMS激活码列表:点击前往:slmgr.vbs /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX②设置KMS主机(此处使用kms.niansir.com主机演示):slmgr.vbs /skms kms.niansir.com③KMS激活:slmgr.vbs /ato④查询到期时间(验证):slmgr.vbs /xpr【注意】KMS激活方案仅90天期限,但会进行自动续期,因此只要KMS服务器正常工作,你的系统激活就是永久有效,当然,这里你可以选择一些更靠谱的KMS服务提供商(请注意本方案仅适合在国内使用,海外主机请不要尝试!!!)来保障你的无忧使用,当然KMS主机可以随时更改,发现失效后直接换个即可,不影响使用。 好了,本次的教程到这里就结束了,特别声明一点:该方法仅做学习分享,请不要将此方案用于商业用途,相关责任违者承担!当然,如果喜欢NianSir的文章也欢迎点点关注(博客底部有微信二维码),注入更多动力!
2023年05月23日
777 阅读
1 评论
3 点赞
2023-04-23
【Java算法】新除法,不使用%、/运算符输出商和余数
NianSir小站很久不水文章了,寻思最近学习Java,有很多比较有意思的算法题可以练练思维,就果断开始制定自己的刷题计划,同时也可以水一点文章发发博客就顺便用博客的Java专题记录一下子咯。 温馨提示:NianSir的代码Java水平可能很一般,如果有更好的建议欢迎各位dalao指点指点 下面就来分享一下今天带来的第一个Java算法题——“新除法” Java算法题A-01 - “新除法” 顾名思义,作为“新除法”,那肯定是与传统的除法不同,要求我们不使用‘%’、‘/’运算符进行商和余数的运算(所有数据均为整数类型),很明显这类算法的实现并不复杂,并不需要深度的Java知识也能够完成,那直接开整吧! #1 算法设计 对于传统的÷,假设a为除数,b为被除数,我们可以理解为a中最多包含b的n倍,剩余的a-nb即为余数,那么我们不妨直接使用循环结构对a-b进行循环操作,直至a-b不小于0为止,其中循环次数即为n,a-nb就是余数啦,我们可以在循环结构里加入一个计数器得到n的数值。 当然细心一点不难发现,这个逻辑是在a>b的情况下成立的,当a小于b时,b应该直接为余数,而不需要循环判断,所以我们只需要在设定好的循环结构外层加一个if判断即可,先进行判断,再进行循环,最后print输出结果即可。 #2 代码 a、b为除数与被除数,shang存储商、yu存储余数,Java代码如下package day1_4_22; import java.util.Scanner; public class XinChuFa1 { public static void main(String[] args) { // 新除法-算法题 给定两个整数不使用/、%进行计算取商和余数 /* * 作者:NianSir * 时间:2023-4-22 * */ int a,b,n1,n2,shang=0,yu,i=0; Scanner sc=new Scanner(System.in); System.out.println("请输入除数与被除数(整数):"); n1=a=sc.nextInt(); n2=b=sc.nextInt(); if(a-b<0) { shang=0;yu=a; System.out.println(a+"÷"+b+" = "+shang+"···"+yu); }else { for(i=0;n1-n2>=0;i++) { n1-=n2; } yu=n1;shang=i; System.out.println(a+"÷"+b+" = "+shang+"···"+yu); } } } #3 运行结果 当a大于b时: 当a小于b时: 如有更好的思路欢迎各位留言交流(^▽^)
2023年04月23日
618 阅读
0 评论
3 点赞
1
2
3
...
5