站长常用的十款免费软件:Web服务器 本地DNS等
这是部落第一次对免费软件的文章进行总结,近些年来部落一直坚持着评选出优秀的免费空间和免费域名,但是对于软件类的文章由于之前定位不准确,导致很多文章像流水账一样,没有什么可反复使用的价值,真正能够“拿得出手”的软件也就没有几个。
但是实际上,我们在建站的过程中是离不开一些优秀的免费软件的。例如在Windows上搭建PHP和ASP的Web服务器环境,或者在不提供在线压缩和Web FTP的虚拟主机上实现上传文件和解压缩功能,利用VPS主机我们还能自己搭建VPS和RSS阅读器。
所以本篇文章就来认真梳理一下大家有可能在建站的过程中需要用的软件,虽然说同类软件可供替代,但是优秀的软件会让你操作更便捷,功能上更强大,细节之处体现人文关怀。
站长常用的十款优秀免费软件:Web服务器 RSS阅读器 图片压缩 本地DNS
一、Web服务器环境套件
1、现在建站的Web环境多数都是基本LNMP或者LAMP来构建的,即Linux+Apache(Nginx)+Mysql/MariaDB+Perl/PHP/Python,可选的组件是PHPMyAdmin、Zend Optimizer、eAccelerator、ionCube、PureFTPd、VsFTPd等等。
2、虚拟主机是主机商已经提前为我们配置好的Web环境空间,VPS主机需要自己来搭建Web服务器,多数是提供免费的Linux系统,Windows系统的VPS售价比较贵。而且在实际的应用过程中,我们一般都是用Windows系统来测试程序,所以在Windows本地上搭建出来Web环境就十分重要的。
3、上面十款Web服务器软件就可以帮助你快速在自己的Windows电脑上搭建出来ASP、PHP运行环境,方便你在本地进行网站测试和程序调试。如果你是想在Linux主机上搭建出来Web环境,作为开源免费的优势,现在网络有非常多的优秀的基本Linux的Web环境安装包,你需要做的就是执行几段代码就完成了。
4、当然,当今互联网硬件发展变化很快,传统的路由器、电视、空调、冰箱等都是搭载了Andriod的“东风”,各种“智能”如雨后春笋般地出现,现在搭建Web服务器也完全没有必要局限于PC了。
二、网站服务器压力测试
1、搭建好了网站后,为了能够准确地得知当前服务器的配置能承受住多大的用户访问量和数据库查询量,我们需要用一定的工具来模拟一定数量的用户访问网站服务器的情景,从而根据需要来优化程序或者升级服务器配置。
2、Linux平台的话,Web压力测试工具比较多,常用的就是Apache Bench、Webbench、http_load了,他们可以创建很多的并发访问线程,模拟多个访问者同时对某一URL进行访问,可用于测试ASP,PHP,JAVA,CGI等服务器压力。
3、Windows平台的话,Web压力测试工具比较少,不过Pylot却是Windows平台上不可多得的Web压力测试软件,Pylot会发起并发请求(HTTP Requests),检验服务器响应,以及带有相关指标的报表。配合上numpy、matplotlib就可以自动绘制图表,形象地展示服务器压力测试全过程。
4、除了压力测试外,购买了VPS主机的朋友最想知道的恐怕就是查一查自己的VPS的性能到底如何了,看看花的钱是不是真的值。权威的VPS性能工具就是UnixBench了。Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。
三、VPS服务器性能监测
1、又是一款使用VPS服务器要用的工具。网站宕机,除了机房网络本身的问题外,还与我们的VPS主机的CPU莫名其妙地达到100%,内存被耗尽,带宽被跑满等有关系。及时地掌握这些数据的变化,能够在最短的时间内做出应对之策,避免更大的损失发生。
2、对VPS服务器的性能进行监测,可以直接在服务器安装性能监测软件:Munin。Munin不需要PHP、MysqL,没有Web操作界面,更节省服务器资源,同时Munin又具备了自动采集数据并绘出图像出来,简单、方便、快捷。另外,Munin可以监测其它的VPS主机,即用一台当作Munin的服务器端,其它全部安装Munin的客户端即可。
3、除利用自身安装的软件来收集相关的服务器性能数据外,我们还可以利用第三方的网站性能监控服务,随时随地在线查看VPS服务器的性能。NodeQuery是一个依靠于第三方服务的监控程序,它的优势在于依靠NodeQuery服务器来对VPS主机进行各项数据监控,同时用户可以直接在网页中查看到各项数据统计报表。
4、除了上面介绍的服务器性能监测工具,这里还有一个十分有用的服务器安全软件:Tripwire。Tripwire是一个开源的功能强大的服务器文件完整性监测系统,利用各个文件的数字签名前后之间的对比 ,从而得出系统中的文件是否被人篡改过。服务器被黑了,用Tripwire查一查便知道问题出在哪里了。
四、在线解压缩代码工具
1、在线解压缩一般在虚拟主机管理系统和VPS服务器控制面板中都会提供,不过对于某些限制比较多的免费空间或者一些比较“老旧”的免费空间来说,可能就没有在线解压缩的功能,这时候我们就需要自己给主机空间上传程序代码 ,来实现在线解压缩了。
2、这里介绍的脚本集中收录的一共有三款脚本:phpzip,一个无名的脚本和博主自己写的压缩脚本。它们各有千秋,当然也不是每一个对所有的服务器都支持的,所以需要大家去尝试总结。当然,如果试过了这里所有的脚本都没法实现的话,那么你得考虑换一个空间了。 注意:添加主机空间在线解压缩需要PHP函数支持。
五、在线FTP文件管理器
1、在线的Web文件管理器非常地多,尤其是以PHP在线文件管理器最多,但是真正能够满足我们的文件管理需求同时也容易安装和使用的Web文件管理器不是很多。有时我们可能需要利用在线Web管理器向主机空间上传程序文件。
2、Net2FTP是很多免费空间常见的Web FTP程序,只要有浏览器,不必装任何客户端就可以随时进行文件的上传和下载服务。Pydio,前身是AjaXplorer ,基于Web技术,有着Ajax、漂亮的UI,有类似本地资源管理器的操作习惯,支持多种访问方式。
3、eXtplorer一直是sourceforge空间上的一个开源项目,基于PHP与ExtJS开发的文件管理器,你可以用它浏览服务器上的文件与目录。编辑,复制,移动,删除文件。KodExplorer具备了完备的文件管理功能,浏览器端享受本地化的体验,强大的在线文件编辑器,对中文支持良好。
六、反向绑定域名程序
1、反向绑定域名,即反向Dai理,即将域名B绑定到域名A上,用户只要访问B就等同于进入A,内容都是由A提供,它有点像建立了一个A的镜像。什么时候要用到反向绑定域名?服务器集群和网站负载均衡时,把用户访问请求发送不同的服务器上。
2、反向绑定域名现在应用非常地广泛,它可以让用户访问到某些平常不能连接到的网站,也可以让将某些不让绑定域名的空间强制绑定上我们的域名。而且现在配置一个反向绑定域名的服务器也不是很复杂,最简单的莫过于直接在主机空间上安装7ghost程序。
3、如果自己有VPS主机的话,那么可以利用Nginx来实现更复杂的反向绑定域名、服务器负载均衡、用户访问控制等功能了。
七、优秀的图片压缩软件
1、图片压缩是指在保证图片质量的前提下,对图片的体积大小进行一定的缩减。虽然说现在国内各地的网速有了一定的提高,但是我们不得不承认如果用户在5秒钟内还没有看到打开的网页中显示的图片,肯定会毫不犹豫地关掉浏览器。
2、压缩图片体积,除了可以加快图片加载的速度外,还有利于网站的访问,避免因大量的图片显示不全而拖慢的网页的打开速度。图片压缩除了要能够最大限度地保证图片的质量外,还需要能够方便我们批量处理图片的功能,这样可以大大加快我们工作的效率。
八、自建RSS阅读器
1、RSS阅读器,在前几年是一个非常流行且有着众多优秀的第三方免费RSS阅读服务的应用,但是进行2014年后,随着移动互联的兴起,RSS阅读器纷纷被认为是不赚钱的“生意”,要么是被关闭,要么就是RSS服务器没有人维护,经常出现各种故障。
2、无论互联网如何发展,就部落自己而言,RSS阅读器依然是每天获取新闻信息和博客文章的最好工具之一。有人说RSS已死?!但是自从Google Reader关闭后,RSS服务不但没有被彻底“掐死”,反而激起了更多的免费的RSS阅读服务的出现。
3、如果站长们有能力和条件,不妨自己搭建一个RSS阅读服务器,这样一是不用再受其它的RSS阅读服务的各种限制(免费的RSS阅读服务在功能上与付费的RSS会有所区别),二是可以随时随地查看自己的RSS订阅的文章,而且不用担心因RSS关闭而导致数据丢失。
九、程序测试用虚拟机
1、想要安装一个博客程序在自己的电脑上,但是又怕程序安装后破坏自己电脑上的其他软件程序,又或者担心用博客程序测试过程对电脑系统造成一些损害,导致系统不稳定。解决此类问题,最好的办法就是使用虚拟机,即在你的电脑上再安装一个可以模拟另一台全新的电脑的软件,例如安装系统、安装软件、测试网站博客程序等等。
2、虚拟机在最近几年又有了新的用途:即变身为Andriod模拟器,不仅启动速度快,而且基本上是模拟了Andriod的生产环境,方便开发者们做测试应用。目前市面上主流的虚拟机就是VirtualBox和VMWare了。VMWare是付费产品,功能上非常强,它还可以用来搭建VPS,是当前流行的服务器虚拟平台软件。
十、VPS搭建专用“服务器”
1、只要是搞网站的,应该没有人不会不知道专用“服务器”,而且随着网络技术的发展,专用“服务器”不仅技术和形式上发展了重大的变化,而且在用户群也默默地发生了变化。以前可能是电脑上网时需要用到,现在是手机、路由器、服务器等都可能要用到。
2、专用“服务器”目前来说有两种安装方式:一种是在VPS主机上安装,一种是在GAE等空间上安装。简单一点就是安装基本的服务即可使用,复杂一点的可能要实现账号管理、流量控制、用户访问等功能要求,不过好在“热心”好友非常多,这样的应用安装只需要几段代码即可。
3、另外,有些时候我们可能还需要辅助自建DNS来解决网站访问的问题,例如反DNS劫持、加快解析速度、屏蔽广告、控制内网DNS、强制域名跳转到特定IP上等。
站长常用的十款优秀免费软件小结
1、上面十款软件都是部落自己在建站过程中经常要用到的,例如在网站上线初期经常要对网站的主题和程序代码进行测试,这时直接在本地搭建Web环境来测试就非常理想了,不过后期因为手头有不少的VPS主机,测试主题等都直接在VPS搞定了。
2、有些小工具往往能解决我们的烦,例如没有提供在线FTP和在线解压缩的空间,自己上传一段代码上去就可以解决了。有些日常工作中使用的频率高一些,例如图片压缩,一次性批量压缩图片的软件这时候就能够大大加快工作效率,减轻工作负担了。
3、软件的使用价值取决于我们的需求值,有些软件随着版本的更新,功能一再“完善”,却不知软件已经越来越臃肿了。而有些软件,不求“全”,但求“精”,功能上不多,但是版本更新中不断“深挖”,不仅让软件越来越强,也让软件无可替代。
本文来自免费资源部落。
SEO研究协会网,SEO行业第一门户,最权威的SEO技术研究和学习平台。我是总编田云,微信号:tianyun475328968有问题可以微信私聊我。
AI视野:通义千问发布Qwen1.5;背景分割开源模型RMBG v1.4来了
欢迎来到【AI视野】栏目!这里是你每天探索人工智能世界的指南,每天我们为你呈现AI领域的热点内容,聚焦开发者,助你洞悉技术趋势、了解创新AI产品应用。
AI应用
通义千问团队发布Qwen1.5聊天模型性能大幅提升
【AiBase提要】
⭐ 模型多样性: 提供6个不同规模的模型,满足各种需求
⭐ 生态系统融入: 与主流框架合并,简化开发流程
⭐ 卓越性能: 聊天模型性能显著提升,基准测试表现优秀
体验地址:https://modelscope.cn/studios/qwen/Qwen1.5-72B-Chat-Demo/summary
remove bg最强平替?新背景分割开源模型RMBG v1.4来了
【AiBase提要:】
RMBG v1.4效果出色,受到好评
经过专业数据集训练,适用于商业用例
有望成为行业翘楚,提供更好体验
模型下载地址:https://top.aibase.com/tool/rmbg-v1-4
苹果文字编辑图像项目MGIE可以试玩了
【AiBase提要】
局部特写的图片处理效果较好
环境稍微复杂一些的图像瑕疵明显
禁止对人像进行任何形式的修改
试玩地址:https://huggingface.co/spaces/tsujuifu/ml-mgie
腾讯发布视频生成模型DynamiCrafter高分辨率文件
【AiBase提要:】
⭐腾讯发布了视频生成模型DynamiCrafter的高分辨率文件。
⭐该版本的模型比SVD的动态幅度更大,在稳定性方面表现良好。
⭐DynamiCrafter可根据文本提示将静态图像转换为动态视频。
项目页:https://top.aibase.com/tool/dynamicrafter
试玩地址:https://huggingface.co/spaces/Doubiiu/DynamiCrafter
生成式AI公司Galileo推出检索增强生成工具
【AiBase提要:】
⚙️ RAG系统添加领域特定上下文提供领域特定结果
Galileo工具嵌入用户工作流提供可见性和快速评估
企业可信赖AI解决方案的开发利器
谷歌推出ASPIRE框架 让大模型具备自我判断意识
【AiBase提要:】
⭐️ 基于自我评估的选择性预测
⭐️ 任务定向微调、答案采样、自我评估学习
⭐️ ASPIRE框架在多个数据集上表现良好
论文地址:https://aclanthology.org/2023.findings-emnlp.345.pdf
OpenAI对ChatGPT、API生成的图片,嵌入C2PA元数据
【AiBase提要:】
⭐️ 图片嵌入C2PA元数据,防止非法使用
⭐️ C2PA标准允许跟踪和验证数字内容
⭐️ 针对AI生成图片提升辨识度
识别AI图片网站:https://contentcredentials.org/verify
AI新鲜事
AI工具哪家强?ChatGPT位居榜首,每月用户数超过Netflix
【AiBase提要:】
⭐️ ChatGPT以16.7亿用户数稳居榜首
⭐️ Grammarly AI、Character.AI等工具也表现优异
⭐️ 大型科技公司在生成式AI行业垄断引起关注
Meta承诺在Facebook和Instagram上标注AI生成的图像
【AiBase提要:】
⭐ Meta承诺标注AI生成的内容
⭐ 与行业合作伙伴制定技术标准
⭐ 举措被认为是对虚假内容问题的回应
OnlyFake提供15美元AI工具包制作
【AiBase提要:】
⚠️ OnlyFake提供AI工具包制作逼真
⚠️ 伪造文件绕过加密货币交易所KYC验证
⚠️ 专家呼吁加强网络安全措施
推荐一个IT老鸟肝了2月有余的免费开源WPF企业级开发框架
一个新学WPF的IT老鸟,肝了2个月做了这么一个WPF企业级开发框架,站长clone学习,觉得甚是不错。这是一个使用了Prism搭建的插件式框架,封装了DataGrid的使用,使整个框架子模块简单易学、易扩展,特别是作者还写了一个系列博客教程,值得点赞。
下面是作者博文系列首篇:WPF企业级开发框架搭建指南(启示录),2020从入门到放弃
这个系列的文章旨在记录工作中使用WPF开发新的医疗项目中,有感于必须统一掉一些规范上的事情,并且提高团队开发效率,遂折腾了这么一个半吊子的框架,这个标题WPF企业级开发框架搭建指南,2020从入门到放弃可能会唬住一些人,但看到这些零碎文字的朋友就凑合着看吧,如果能帮助到你,那也荣幸了。
WPF技术是一个很不错的技术,但一直没有上手过正式的项目,趁在做这个医疗项目时,遂搭建一个WPF开发框架,目的是为了统一WPF开发并提高开发效率;我对WPF技术算是零基础,现学现卖,用这些不成体系的文字予以记录一些想法和实践。
文章目录
WPF企业级开发框架搭建系列文章导航
- WPF企业级开发框架搭建指南(启示录)
- JHRS开发框架之基础类库
- JHRS开发框架之第三方框架选型
- JHRS开发框架之WPF调用Web API封装
- JHRS开发框架之客户端入口项目
- JHRS开发框架之各子系统如何整合
- JHRS开发框架之怎样设计合理的ViewModel基类
- JHRS开发框架之公用组件用户控件的封装
- JHRS开发框架之建议遵循的一些建目录文件原则
- JHRS开发框架之WPF数据验证
- JHRS开发框架之ViewModel相互传参和弹框回传参的解决办法
- JHRS开发框架之踩坑记(终章)
WPF管理系统开发框架设计图
在正式开始WPF开发框架搭建之前,做了一些技术选型和在群里面咨询了下对WPF技术比较了解的群友,当中就属dotnet9.com的站长经常被笔者叨扰。先来说说我期望中的开发框架要实现哪些功能。
在开始搭建之前呢,还是晾一下最终的架构图吧。
上图就是折腾出来的一个框架,图不美观的话,大伙也就凑合着看吧。下图是解决方案:
因为项目是使用WPF来开发的,自然基于【MVVM】的理念搭建了这么一个快速开发框架,适用于开发【传统类型的管理系统】,并通过调用web api的方式来完成所有的业务操作,在WPF的Page,窗体(Window),用户控件的后置代码,几乎不会有任何的业务代码,除了一些控制界面行为的功能。
在搭建这个框架时,是基于最新的 【 .net 5】用的技术版本是比较新的,演示代码中,wpf也是使用 .net 5。
使用技术说明
- 技术平台:.Net 5.0
- 技术框架:WPF + Prism+ AspectInjector + Refit
- IoC组件:Prism自带Prism.Unity
- 数据序列化:Newtonsoft.Json,可替换
- 日志记录:系统自带
解决方案详解
解决方案从上到下依次为:
JHRS.Core(客户端业务核心)
在JHRS.Core这个库里面,各个目录功能说明如下:
- Aop:实现了一个点击按钮显示转圈圈效果的类,一般用于加载数据,点击按钮从服务器获取数据让用户等候片刻。
- Apis:保存着代码生成工具【JHRS.GenerateAPI】自动生成的接口,该工具可以在线解析swagger生成供调用的接口,参见这里(使用该工具需要设置swagger地址,另外有bug的话,自己修改下就可以了)。
- Controls:定义了WPF界面使用的公用控件(保存在Controls目录),如通用表格(DataGrid),下拉框等,凡公用的控件,都可以保存在此目录。
- Enums:公用的枚举,各个模块可以引用。
- Events:事件类,Prism自带事件总线,相应的事件类在这个目录创建,具体应用参见这里。
- Extensions:扩展类
- Identity:身份认证,即登录系统后,从服务器端获取到的身份认证会话信息(用户,token等)。
- Models:各个模块的DTO对象,一般是根据swagger解析出各个接口的实体对象(输入,输出DTO)。
- Modules:模块的辅助类。
- ViewModels:这个目录里面定义了ViewModel的基类,处理各个功能Page业务的ViewModel类,需要从这里继承对应的类,如管理页面继承BaseManagePageViewModel,而新增编辑页面继承BaseDialogPageViewModel类等。并且在基类里面定义了公共方法,如消息提示框,消息弹框,打开模态窗口等,效果见下方所示。
JHRS.Shell(WPF客户端入口程序)
JHRS.Shell是WPF客户端项目的入口程序,并且定义了整个系统公用的消息提示框,模态窗口风格,主窗口等;登录的入口也是在这里定义的,登录系统后,可以自行实现权限功能加只加载对应的子模块(子系统);在程序启动时,会自动做一些初始化操作,扫描程序集自动注入相关功能,具体实现参见这里。
消息提示框
消息弹框
确认消息框
模态窗口
遮罩层效果(蒙层效果或Loading效果)
遮罩层效果一般用于点击按钮,加载数据时使用,即调用接口到数据呈现中间有一个等待的过程,就可以显示出来,因此在框架中通过AOP方式封装了这么一个效果,调用时在相关的地方标记一个特性即可。先来看看效果。
该效果是直接从CSDN抠过来的,然后整到到代码里面去的,纯演示目的。
参考链接:https://blog.csdn.net/lhx527099095/article/details/8005095
modules解决方案文件夹
在modules这个解决方案文件夹里面的是各个子模块,也就是各个子系统,例如【JHRS.OutpatientSystem】是WPF项目的子系统之一(门诊模块);在各子系统中,最外层拥有一个Module的类(OutpatientSystemModule),需要实现IModule接口供Prism自动扫描注册到容器里面。
在子模块中,目录的组织原则如下。
目录组织原则
|—– JHRS.OutpatientSystem 命名规则:【JHRS】点【模块名称】
|—– Controls 表示当前模块的控件库存放目录
| |——- Manager 子目录
| |——- SysManager 子目录
| |——–其它子目录
|—— Extensions 当前模块扩展类
|—— Model 当前模块实体,如查询条件实体
|—— ViewModels 【固定命名,不能改动】
| |——ScheduManager 各管理功能目录
| |——–XXXXViewModel.cs 每个功能页面的ViewModel类
| |——–其它ViewModel.cs 其它页面的ViewModel
|——-Views 【WPF页面,固定命名】
| |—— ScheduManager 功能目录
| |——XXXXXXX.xaml WPF页面
| |——XXXXXXX.xaml WPF页面
| |——-SysManager 功能目录
|——- OutpatientSystemModule 命名:模块名称+Module
在每一个子系统中,最外层的一个模块类,名称规则为:【模块名称+Module】,编写这个类是为了使用Prism加载这个模块。
JHRS(基础类库)
基础类库,可以任意扩展,该库可以供其它所有库引用。
JHRS.GenerateAPI(代码生成工具)
该工具是在线解析swagger生成供Refit调用的接口,生成的接口如下:
调用接口的示例代码如下:
var response = await RestService.For<ILoginApi>(baseUrl).Login(CurrentUser);if (!response.Succeeded){ Alert(response.Message); return;}
最后
对于WPF开发来说,我并不是很熟悉,这段时间以来一直网上学习和借鉴一些开源的框架,再结合实际项目而整出来的这个开发框架;可能对于从事WPF开发的朋友来说有一定的借鉴意义。
完整的项目代码已经开源到github上面。在这个项目中,并不包含web api的项目。
除非注明,文章均由 整理发布,欢迎转载。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。