myesn

myEsn2E9

hi
github
cover
cover
cover
cover

SEO Google: 结构化数据介绍

写在前面:一开始不了解,以为编写结构化数据可以定义搜索结果中展示的二级菜单,学到后面发现做不到,因为它是由 Google Search 根据算法自动生成的,参考:搜索引擎 - 如何在搜索结果页展示二级目录?。 不过也了解到结构化数据的功能,比如定义搜索结果中的搜索框的交互行为。…
cover
cover

SEO: 使用 Lighthouse 分析网站需要改进的地方

Lighthouse 提供针对性能、无障碍功能、渐进式 Web 应用、SEO 等方面的审核。 您可以在 Chrome DevTools 中、通过命令行或作为 Node 模块运行 Lighthouse。为 Lighthouse 提供一个要审核的网址,它会对此页面运行一系列审核…
SEO Google: Search Console 使用入门
当然是阅读官方提供的文档啦:Search Console 使用入门 官方提供了太多文档,个人觉得其中需要花时间去了解的章节有: 5. 了解 Google 搜索的基础知识 6. 重要的 Google 搜索概念 7.2. 您的网站在 Google 上的表现如何? 7.5…
cover

SEO Google: 添加到 Search Console(有效解决零收录情况)

如果发现搜索结果中一条记录都没有,那么在完成本文指引后,再等待 1 天,再去查询收录情况,就会发现提交的网站已经被收录了。 打开控制台:https://search.google.com/search-console/welcome?hl=zh-cn 根据提示输入域名,添加…
cover

批量修改文件编码工具

工具地址:https://github.com/amrali-eg/EncodingChecker 使用方法: 参考:https://blog.csdn.net/weixin_42378319/article/details/118823760
cover

ABP: UserMenu 新增菜单项

打开 Web 项目的 Menus\?MenuContributor,加入以下代码: Copy public async Task ConfigureMenuAsync(MenuConfigurationContext context) { ..…
净值型理财怎么算收益
日收益=持有份额*(最新净值-上一日交易日净值) 最终计算的收益值保留两位小数,我感觉应该是四舍五入,然后最低 0.01 元,也就是最小收益的货币单位是人民币分。 计算收益时,是根据购买的份额来计算,不会代入投入的金额。 收益发放规则:确认份额后开始计算收益…
Next.js: API 请求速率限制
限制一定时间内的 API 访问次数,比如一分钟内只允许访问 5 次 API。 注意: 通过在项目根目录创建 middleware.ts(或 .js) 文件来定义 Middleware。例如,与 pages 或 app 位于同一级别,或在 src 中(如果适用)。 一个项目只…
Next.js: 5 种退出静态渲染的方法
适用于项目在 build 之后,route.ts 的响应结果被静态处理,表现为:接口始终响应相同的数据。 我使用的方法是,在 route.ts 中添加以下代码: Copy export const dynamic = 'force-dynamic' 参考: Next.js…
Umami: 实名用户 & 自定义事件 & 禁止本地产生记录
注意替换 data-website-id 属性的值。 Copy <script defer src="https://cloud.umami.is/script.js" data-website-id="271e7807-0306-465f-ab96-5efde03a3ccc">…
nginx: 配置 IP 黑名单
https://serverfault.com/questions/432716/where-to-place-nginx-ip-blacklist-config-file https://techexpert.tips/nginx/nginx-blocking-ip…
ASP.NET Core: nginx 反向代理后丢失客户端 IP
nginx 网站配置中添加如下指令: Copy server { # reverse proxy location / { proxy_pass http://127.0.0.1:5000; proxy…
cover
cover

ABP: 启动后通过 nginx 反向代理,页面上 ajax POST 请求响应 302 重定向到 Error 页面

现代的 ASP.NET Core 应用都默认开启了 Anti Forgery Token 验证。 启动一个 ABP 的 Web 应用,再通过 nginx 反向代理并配置了 SSL。 在页面上产生的 ajax post 请求直接就报错了,响应 302 重定向到 Error 页面…
ASP.NET Core: AntiForgeryToken 生成方式
ASP.NET Core Razor Pages 应用默认开启了 AntiforgeryToken 验证,也就是 POST、PUT、PATCH、DELETE 等 HTTP 谓词都会在 Action 被执行前验证 AntiforgeryToken,也就是会比对…
cover

Visual Studio: 关闭浏览器时调试被停止

工具 > 选项 > 项目和解决方案 > Web 项目 > 取消勾选红框选项 > 点击确定:
nginx: HSTS 设置和清除
首先了解 HSTS 是什么。 简单说就是返回一个响应头,告诉浏览器这个域名和所有的子域名,以后都强制使用 https 进行访问,这样网站的应用程序就不需要再做重定向工作,并且也会更安全。 includeSubDomains 需要注意的是,如果添加了 includeSubDoma…
ABP: LeptonX Lite 皮肤源码下载
创建一个空目录 Volo.Abp.LeptonXTheme.Lite 在该目录下执行以下指令下载源码: Copy abp get-source Volo.Abp.LeptonXTheme.Lite --old https://github.com/abpframework…
PDF、XLSX 文件在线预览(原生 JS 实现)
pdf 预览:pdf.js xlsx 预览:SheetJS Community Edition、x-spreadsheet(npm 包名为 x-data-spreadsheet) 代码没有使用任何框架,采用原生 JS 实现,参考: https://github.com…
Ownership of this blog data is guaranteed by blockchain and smart contracts to the creator alone.