当前位置:

首页 > 编程开发 > 如何优化Linux下Rust项目的SEO

如何优化Linux下Rust项目的SEO

Linux下Rust项目的SEO优化实操指南 一 站点与URL设计 想让你的Rust项目在搜索引擎里脱颖而出?基础工作必须扎实。站点与URL设计是这一切的基石。 使用HTTPS:这是现代网站的标配。部署Let’s Encrypt证书,确保全站采用TLS 1.2及以上协议。这不仅是排名的基本要求,更是

Linux下Rust项目的SEO优化实操指南

如何优化Linux下Rust项目的SEO

一 站点与URL设计

想让你的Rust项目在搜索引擎里脱颖而出?基础工作必须扎实。站点与URL设计是这一切的基石。

  • 使用HTTPS:这是现代网站的标配。部署Let’s Encrypt证书,确保全站采用TLS 1.2及以上协议。这不仅是排名的基本要求,更是建立用户信任的第一步。
  • 规划语义化URL:好的URL自己会说话。建议层级尽量不超过3层,路径使用小写字母和短横线分隔(例如:/blog/2025/03/seo-best-practices),同时避免使用中文和特殊字符。优先采用“/分类/标题”这样的结构,并尽量减少无意义的查询参数。
  • 统一规范与重定向:对于同一份内容,务必通过Canonical标签(例如在响应头中添加:Link: https://yourdomain.com/page; rel=“canonical”)来指定其唯一的标准URL。同时,将www与非www版本、带尾部斜杠与不带尾部斜杠的版本,以及所有HTTP请求,通过301永久重定向统一到你的HTTPS规范URL上。
  • 生成并提交Sitemap与robots.txt:在站点根目录提供sitemap.xml文件,并在robots.txt中声明其位置。一个标准的配置示例如下:
    • robots.txt
      • Sitemap: https://yourdomain.com/sitemap.xml
    • sitemap.xml
      • https://yourdomain.com/2025-12-18monthly1.0

坚持以上做法,能显著降低重复内容带来的负面影响,提升搜索引擎的抓取效率,并最终改善点击率。

二 Rust后端与服务器配置要点

后端配置是技术SEO的核心战场,直接关系到爬虫的抓取体验和页面加载速度。

  • 响应头与规范URL:在路由层就为页面设置好Link: rel=“canonical”响应头。同时,移除或隐藏X-Powered-By这类可能泄露技术栈的头部信息。根据安全需要,添加Strict-Transport-Security、Content-Security-Policy等安全头部。
  • 压缩与缓存:务必为文本、JS、CSS等资源启用Gzip或更高效的Brotli压缩。为静态资源设置长期的Cache-Control(例如:public, max-age=31536000),而为HTML页面设置较短的协商缓存策略。
  • 静态资源服务:不同的Rust框架有不同的最佳实践:
    • axum + tower-http:使用ServeDir来提供目录服务,并开启precompressed_gzip/br、append_index_html_on_directories(true)以及cache_control。对于单页应用(SPA),可以设置回退到index.html。
    • actix-web:使用NamedFile或StaticFiles来分发静态资源,并结合缓存与压缩中间件进行优化。
    • warp:通过with(warp::compression::gzip())或brotli()为不同路由启用压缩。同样,可以为页面设置Link头来实现规范URL。
  • 重定向策略:内容迁移或URL规范化时,正确使用301/308(永久)或302/307(临时)重定向。切忌滥用302重定向,以免导致页面权重流失。像Salvo这样的框架提供了便捷的重定向构造器和清晰的状态码语义。
  • 部署与传输:启用HTTP/2协议,利用其多路复用和头部压缩特性。接入CDN可以显著缩短首字节时间(TTFB)并提升全球范围内的访问速度。这些配置直接作用于搜索引擎的抓取、渲染和页面加载速度,是提升Rust站点SEO表现的关键杠杆。

三 内容、结构化数据与监控

技术是骨架,内容才是血肉。让搜索引擎更好地理解你的内容,是获得高排名的根本。

  • 页面级SEO:为每个页面提供唯一且描述性强的</code>标题和<code><meta name="description"></code>描述。使用语义化的HTML标签(确保H1到H6的层级清晰),为所有图片添加准确的<code>alt</code>文本,并尽量减少阻塞渲染的资源。</li> <li><strong>结构化数据</strong>:根据内容类型,使用JSON-LD格式添加结构化数据标记,例如Article(文章)、Product(产品)、BreadcrumbList(面包屑导航)等。这有助于搜索引擎在搜索结果中展示更丰富的摘要信息(富片段)。</li> <li><strong>链接与内链</strong>:构建站内链接时,优先使用绝对路径。设计清晰的站点地图和面包屑导航,并避免出现死链和循环重定向。</li> <li><strong>监控与维护</strong>:SEO不是一劳永逸的工作。需要定期巡检失效链接和过长的重定向链,及时修复404错误。持续跟踪核心网页指标(Core Web Vitals),包括LCP(最大内容绘制)、CLS(累积布局偏移)、INP(交互到下次绘制),并关注搜索引擎控制台中的抓取错误报告。结合<a href="https://www.fastadmin.net/go/aliyun" target="_blank">服务器</a>日志和这些工具的数据,进行持续的迭代优化。这些实践能极大提升内容可理解性与抓取效率,直接影响最终的排名与点击表现。</li> </ul> <h3>四 Linux部署与运维优化</h3> <p>稳定的<a href="https://www.fastadmin.net/go/aliyun" target="_blank">服务器</a>环境是SEO的“大后方”,确保你的网站在任何时候都能被快速、安全地访问。</p> <ul> <li><strong>传输与协议</strong>:坚持全站HTTPS,并启用HTTP/2协议。对外服务建议使用CDN来缓存静态资源和可缓存的页面,源站和CDN都需要配置长期缓存加协商更新的策略。</li> <li><strong>资源压缩与缓存</strong>:在Nginx/Apache等Web<a href="https://www.fastadmin.net/go/aliyun" target="_blank">服务器</a>层,或直接在Rust应用的中间件层,开启Gzip/Brotli压缩。为静态资源设置强缓存,为HTML设置<code>no-cache</code>配合Etag的协商缓存。</li> <li><strong>系统与安全</strong>:关闭不必要的系统服务,精简内核与网络参数以提升性能。开启防火墙并配置必要的SELinux安全策略。为TLS连接和静态资源启用相应的安全响应头。</li> <li><strong>发布与回滚</strong>:采用蓝绿部署或金丝雀发布等策略,在每次变更前后对比核心网页指标(LCP/CLS/INP)和抓取错误率的变化。务必保留可靠的回滚路径。这些运维动作确保了站点的可用性、性能与安全,是搜索排名能够长期稳定的基石。</li> </ul> <h3>五 Rust代码示例</h3> <p>理论说再多,不如看代码。以下是一些可直接集成到项目中的关键示例。</p> <ul> <li><strong>axum + tower-http 静态资源与预压缩、缓存</strong> <ul> <li><strong>Cargo.toml</strong> <ul> <li><code>[dependencies]</code> <ul> <li><code>axum = “0.7”</code></li> <li><code>tokio = { version = “1.0”, features = [“full”] }</code></li> <li><code>tower-http = { version = “0.5”, features = [“fs”, “trace”] }</code></li> <li><code>tracing = “0.1”</code></li> <li><code>tracing-subscriber = “0.3”</code></li> </ul> </li> </ul> </li> <li><strong>main.rs</strong> <ul> <li><code>use axum::{Router,http::{StatusCode, header::HeaderValue},routing::get,};use tower_http::{services::{ServeDir, ServeFile},trace::TraceLayer,fs::{self, CacheControl},};use std::net::SocketAddr;#[tokio::main]async fn main() {tracing_subscriber::registry().with(tracing_subscriber::fmt::layer()).init();let static_files = ServeDir::new(“assets”).append_index_html_on_directories(true).precompressed_gzip().precompressed_br().cache_control(|_| HeaderValue::from_static(“public, max-age=31536000”));let app = Router::new().route(“/health”, get(|| async { (StatusCode::OK, “OK”) })).nest_service(“/static”, static_files).fallback_service(ServeFile::new(“assets/index.html”)).layer(TraceLayer::new_for_http());let addr = SocketAddr::from(([0, 0, 0, 0], 3000));axum::serve(tokio::net::TcpListener::bind(&addr).await.unwrap(), app).await.unwrap();}</code></li> </ul> </li> </ul> </li> <li><strong>warp 规范URL与压缩</strong> <ul> <li><strong>Cargo.toml</strong> <ul> <li><code>[dependencies]</code> <ul> <li><code>warp = “0.3”</code></li> </ul> </li> </ul> </li> <li><strong>main.rs</strong> <ul> <li><code>use warp::{Filter, reply::with::header, http::HeaderValue};#[tokio::main]async fn main() {let seo_route = warp::path!(“blog” / u32 / u8 / String).and(warp::get()).map(|year, month, slug| {format!(“<h1>{}年{}月 {}</h1><p>内容…</p>”, year, month, slug)}).with(header::<_, HeaderValue>(“Link”,r#“https://yourdomain.com/blog/2025/03/seo-best-practices; rel=“canonical””#.parse().unwrap(),)).with(warp::compression::gzip());let static_routes = warp::path(“static”).and(warp::fs::dir(“./static/”)).with(warp::compression::brotli());let routes = seo_route.or(static_routes);warp::serve(routes).run(([127, 0, 0, 1], 3030)).await;}</code></li> </ul> </li> </ul> </li> <li><strong>Salvo 重定向语义示例</strong> <ul> <li><strong>Cargo.toml</strong> <ul> <li><code>[dependencies]</code> <ul> <li><code>salvo = “0.70”</code></li> </ul> </li> </ul> </li> <li><strong>main.rs</strong> <ul> <li><code>use salvo::prelude::*;#[handler]async fn old_to_new(res: &mut Response) {// 将旧路径永久迁移到新路径,且保留请求方法(如 POST)res.render(Redirect::permanent(“/blog/2025/03/seo-best-practices”));}#[tokio::main]async fn main() {let router = Router::with_path(“old-post”).get(old_to_new);Server::new(TcpListener::bind(“0.0.0.0:3000”)).serve(router).await;}</code></li> </ul> </li> </ul> </li> </ul> <p>以上示例覆盖了规范URL设置、响应压缩、缓存控制与正确重定向等关键SEO技术点,你可以根据项目所用的框架,直接参考并集成到现有的Rust服务中。</p> </div> <span class="article_notice">本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com</span> <div class="article_otherarticle"> <span>作者最新文章</span> <div> <div class="otherarticles"> <a href="/news/740662" title="漫蛙漫画app下载安装最新版本"><span>漫蛙漫画app下载安装最新版本</span></a> <span>2026-10-13 13:19</span> </div> <div class="otherarticles"> <a href="/news/742500" title="漫蛙漫画官网入口链接"><span>漫蛙漫画官网入口链接</span></a> <span>2026-10-13 13:19</span> </div> <div class="otherarticles"> <a href="/news/744098" title="漫蛙2漫画APP最新版本下载免费安装"><span>漫蛙2漫画APP最新版本下载免费安装</span></a> <span>2026-10-13 13:17</span> </div> <div class="otherarticles"> <a href="/news/750265" title="漫蛙漫画官网正版登录入口"><span>漫蛙漫画官网正版登录入口</span></a> <span>2026-10-13 13:15</span> </div> <div class="otherarticles"> <a href="/news/767783" title="Windows安装Docker教程:启用WSL2并运行第一个容器验证"><span>Windows安装Docker教程:启用WSL2并运行第一个容器验证</span></a> <span>2026-10-08 17:47</span> </div> </div> </div> <div class="article_card_class"> <a href="/newslist/313_1" title="编程开发">编程开发</a> <a href="/newslist/4040_1" title="Linux">Linux</a> </div> <div class="article_nearby"> <div> <span>上一篇:</span> <a href="/news/625820" title="ultraiso怎么设置保持隐藏属性" class="woh">ultraiso怎么设置保持隐藏属性</a> </div> <div> <span>下一篇:</span> <a href="/news/625822" title="PHP如何与Linux系统交互" class="woh">PHP如何与Linux系统交互</a> </div> </div> <div class="article_related"> <div class="index_title flexBox"> <span>相关文章</span> <a href="/newslist/1" title="更多">更多</a> </div> <div class="article_listLMs"> <div class="index_article flexBox articlebox"> <a href="/news/768749" title="Linux如何开启端口号?开放端口命令详解" class="index_article_img"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='/static/images/moren.png'" data-src="/uploads/20261001/975ed4e727cbea6e6f72dda878237671.webp" src="/static/images/moren.png" alt="Linux如何开启端口号?开放端口命令详解" class="oimg" /></a> <div> <a href="/news/768749" title="Linux如何开启端口号?开放端口命令详解" class="index_article_title woh">Linux如何开启端口号?开放端口命令详解</a> <p class="woh">详细讲解Linux如何开启端口号以及常用的开放端口命令。</p> <div class="index_article_info"> <div class="index_article_infos"> <span class="index_article_time">2026-10-01</span> <span class="index_article_times">9</span> <span class="index_article_author">MorningLeaf</span> </div> <div class="index_article_class"> <a href="/newslist/4040_1" title="Linux">Linux</a> <a href="/newslist/7532_1" title="命令">命令</a> </div> </div> </div> </div> <div class="index_article flexBox articlebox"> <a href="/news/768560" title="crossover卸载软件下载及重新安装教程" class="index_article_img"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='/static/images/moren.png'" data-src="/uploads/20260925/ee26ded4fa84494c779882f0b962350a.webp" src="/static/images/moren.png" alt="crossover卸载软件下载及重新安装教程" class="oimg" /></a> <div> <a href="/news/768560" title="crossover卸载软件下载及重新安装教程" class="index_article_title woh">crossover卸载软件下载及重新安装教程</a> <p class="woh">遇到CrossOver运行错误或需要更新版本时,如何彻底卸载旧版并干净重装?本教程详解macOS和Linux下的卸载步骤、残留文件清理方法及官方下载渠道,确保软件环境纯净稳定。</p> <div class="index_article_info"> <div class="index_article_infos"> <span class="index_article_time">2026-09-25</span> <span class="index_article_times">20</span> <span class="index_article_author">慢慢走</span> </div> <div class="index_article_class"> <a href="/newslist/4040_1" title="Linux">Linux</a> <a href="/newslist/16817_1" title="重新安装">重新安装</a> <a href="/newslist/36025_1" title="卸载教程">卸载教程</a> <a href="/newslist/141613_1" title="macOS">macOS</a> </div> </div> </div> </div> </div> <a href="/newslist/1" title="查看更多" class="index_more">查看更多</a> </div> </div> <div class="article_listR"> <div class="indexMain4R1"> <div class="index_title flexBox"> <span>热门文章</span> <a href="/newslist/1" title="更多">更多</a> </div> <div class="indexMain4R1M"> <a href="/news/768676" title="Photoshop蒙版换证件照背景颜色怎么改?实用操作步骤详解" class=""><span class="woh">Photoshop蒙版换证件照背景颜色怎么改?实用操作步骤详解</span></a> <a href="/news/767686" title="AutoCAD绘制机械零件三维实体详细教程" class=""><span class="woh">AutoCAD绘制机械零件三维实体详细教程</span></a> <a href="/news/767677" title="AE教程书籍挑选指南:零基础、动效与合成方向实战标准" class=""><span class="woh">AE教程书籍挑选指南:零基础、动效与合成方向实战标准</span></a> <a href="/news/768677" title="Photoshop图层合并快捷键是什么?合并 盖印及分开图层方法" class=""><span class="woh">Photoshop图层合并快捷键是什么?合并 盖印及分开图层方法</span></a> <a href="/news/768672" title="Photoshop日系调色教程:小清新风格参数与思路" class=""><span class="woh">Photoshop日系调色教程:小清新风格参数与思路</span></a> </div> </div> <div class="indexMain4R2"> <div class="index_title flexBox"> <span>精品专题</span> <a href="/newslist/tag_1" title="更多">更多</a> </div> <div class="indexMain4R2M"> <div class="indexMain4R2Ms"> <a href="/newslist/141356_1" title="装机必备"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='/static/images/moren.png'" data-src="/uploads/20260916/23a0ca69dd790f4a338bf469823181a8.webp" src="/static/images/moren.png" alt="装机必备" class="oimg" /></a> <div> <a href="/newslist/141356_1" title="装机必备" class="woh">装机必备</a> <p class="poh">正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。</p> </div> </div> <div class="indexMain4R2Ms"> <a href="/newslist/2909_1" title="Windows"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='/static/images/moren.png'" data-src="/uploads/20260916/7a276fc2f6c50e3d02985b5c5b8c3791.webp" src="/static/images/moren.png" alt="Windows" class="oimg" /></a> <div> <a href="/newslist/2909_1" title="Windows" class="woh">Windows</a> <p class="poh">正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。</p> </div> </div> <div class="indexMain4R2Ms"> <a href="/newslist/340_1" title="PDF教程"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='/static/images/moren.png'" data-src="/uploads/20260920/178986704893123.webp" src="/static/images/moren.png" alt="PDF教程" class="oimg" /></a> <div> <a href="/newslist/340_1" title="PDF教程" class="woh">PDF教程</a> <p class="poh">正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。</p> </div> </div> </div> </div> <div class="right_list1"> <div class="index_title flexBox"> <span>Mac软件</span> <a href="/newslist/3169_1" title="更多">更多</a> </div> <div class="right_list1M"> <div class="right_list1s"> <a href="/news/769953" title="Postman macOS版"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='./static/images/moren.png'" data-src="/uploads/20261010/0a3318658f03f7cfef695c46cced28ec.webp" src="/static/images/moren.png" alt="Postman macOS版" class="oimg" /></a> <div> <a href="/news/769953" title="Postman macOS版" class="right_list1s_title woh">Postman macOS版</a> <div> <span>Mac</span> </div> <p class="woh">Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。</p> </div> </div> <div class="right_list1s"> <a href="/news/769941" title="Docker Desktop macOS版"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='./static/images/moren.png'" data-src="/uploads/20261010/d31a4d31ac3254d2fd28e79c1571984a.webp" src="/static/images/moren.png" alt="Docker Desktop macOS版" class="oimg" /></a> <div> <a href="/news/769941" title="Docker Desktop macOS版" class="right_list1s_title woh">Docker Desktop macOS版</a> <div> <span>Mac</span> </div> <p class="woh">Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。</p> </div> </div> <div class="right_list1s"> <a href="/news/769927" title="Android Studio macOS版"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='./static/images/moren.png'" data-src="/uploads/20261010/f537efb3ce59ab4b3d4e999934f8542c.webp" src="/static/images/moren.png" alt="Android Studio macOS版" class="oimg" /></a> <div> <a href="/news/769927" title="Android Studio macOS版" class="right_list1s_title woh">Android Studio macOS版</a> <div> <span>Mac</span> </div> <p class="woh">Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。</p> </div> </div> </div> </div> <div class="right_list1"> <div class="index_title flexBox"> <span>WINDOWS</span> <a href="/newslist/2909_1" title="更多">更多</a> </div> <div class="right_list1M"> <div class="right_list1s"> <a href="/news/770555" title="PixPix 网页版"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='./static/images/moren.png'" data-src="/uploads/20261013/1a89f7cb415a92bd31edad7f15cb0020.webp" src="/static/images/moren.png" alt="PixPix 网页版" class="oimg" /></a> <div> <a href="/news/770555" title="PixPix 网页版" class="right_list1s_title woh">PixPix 网页版</a> <div> <span>Windows</span> </div> <p class="woh">PixPix 是面向品牌、卖家和内容团队的在线 AI 图片视频创作平台,提供图视频 Agent、无限画布、图片生成、视频生成、自然语言编辑及商品套图、产品精修和带货视频等电商工具。</p> </div> </div> <div class="right_list1s"> <a href="/news/770257" title="Postman Windows版"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='./static/images/moren.png'" data-src="/uploads/20261012/0a3318658f03f7cfef695c46cced28ec.webp" src="/static/images/moren.png" alt="Postman Windows版" class="oimg" /></a> <div> <a href="/news/770257" title="Postman Windows版" class="right_list1s_title woh">Postman Windows版</a> <div> <span>Windows</span> </div> <p class="woh">Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等</p> </div> </div> <div class="right_list1s"> <a href="/news/770256" title="Docker Desktop Windows版"><img data-lazy-img loading="lazy" decoding="async" onerror="this.onerror=null;this.src='./static/images/moren.png'" data-src="/uploads/20261012/c7e21820602b90ede97232ba8cc3b135.webp" src="/static/images/moren.png" alt="Docker Desktop Windows版" class="oimg" /></a> <div> <a href="/news/770256" title="Docker Desktop Windows版" class="right_list1s_title woh">Docker Desktop Windows版</a> <div> <span>Windows</span> </div> <p class="woh">Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。</p> </div> </div> </div> </div> </div> </div> </div> </main> <footer> <div class="footer1"> <span>为什么要购买正版软件?</span> <div class=""> <div> <b>01</b> <span>官方授权</span> <p>授权来源透明,订单与许可信息可随时查询。</p> </div> <span></span> <div> <b>02</b> <span>即时交付</span> <p>付款成功后自动发放激活信息,支持订单追踪。</p> </div> <span></span> <div> <b>03</b> <span>中文协助 </span> <p>安装、激活、迁移与续费问题都有专人响应。</p> </div> <span></span> <div> <b>04</b> <span>长期可用</span> <p>提供升级提醒与授权管理,换机时也能轻松迁移。</p> </div> </div> </div> <div class="footer2"> <p>网站备案号:苏ICP备2026018738号-1 联系邮箱:bd@zhengruan.com <a href="/sitemap.xml">网站地图</a></p> <p>Copyright ©2018-2026</p> </div> </footer> <!--底部 end--> <script> var _hmt = _hmt || []; (function () { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?3835539565b311d85319cd21da8fd0d9"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <!-- Matomo --> <script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function () { var u = "https://tongji.php.cn/"; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '36']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })(); </script> <!-- End Matomo Code --> </body> <script src="/static/layui/layui.all.js"></script> <script src="/static/swiper/swiper-bundle.min.js"></script> <script src="/static/js/common.js?1.7"></script> <script> const sourceToken = 'w1Z09yJGLzsPbfkHTVR3I6GHJYJdyECIDHccSy6SeQA'; (async () => { try { await fetch('/logs', { method: 'GET', headers: { 'sourceToken': sourceToken } }); console.log('Thanks'); } catch (error) { console.error('Error:', error); } })(); </script> </html>