如何让部署Qexo后台
现在 Qexo 官网拉下最新的代码 跳转
然后解压
tar -xzf 文件名.tar.gz
首先查看 Python 和 pip3 的版本,如果不对应最好安装如图中的版本不容易出错
编辑配置以使用 Mysql 为例, 确认好安装相关依赖后在manage.py的同级目录下创建并修改 configs.py
import pymysqlpymysql.install_as_MySQLdb()DOMAINS = ["127.0.0.1", "yoursite.com"]DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'qexo', 'USER': 'root', 'PASSWORD': & ...
nextjs-增量静态生成-isr
Next.js 的增量静态再生 (Incremental Static Regeneration,ISR) 是一种强大的功能,它允许你在构建之后更新静态页面,而无需完全重建整个站点。 这结合了静态站点生成 (SSG) 的性能优势和服务器端渲染 (SSR) 的灵活性。
ISR 的工作原理:
初始构建: 在构建时,Next.js 会像静态站点生成一样预渲染页面,并生成 HTML 文件。
重新验证: 在运行时,当请求到达页面时,Next.js 会检查页面是否已过期。过期时间由 revalidate 属性控制(以秒为单位)。
后台重新生成: 如果页面已过期,Next.js 会在后台重新生成该页面。在此期间,Next.js 仍然会提供旧的缓存页面给用户。
更新缓存: 一旦页面重新生成完成,Next.js 会更新缓存,并在后续请求中提供新的页面。
如何使用 ISR:
在 getStaticProps 函数中添加 revalidate 属性即可启用 ISR:
import Head from "next/head";import Layout from "../.. ...
nextjs-服务端渲染-ssr
Next.js 的服务端渲染 (SSR) 允许你在服务器上预渲染页面,而不是在客户端浏览器中。这有很多好处,包括:
改进 SEO: 搜索引擎爬虫可以更容易地抓取和索引预渲染的 HTML 内容。
更快的首屏加载时间: 用户可以更快地看到页面内容,因为浏览器不需要在客户端执行 JavaScript 来渲染页面。
更好的用户体验: 特别是对于内容较多的页面或网络连接较慢的用户,SSR 可以提供更流畅的体验。
如何在 Next.js 中实现 SSR:
Next.js 提供了两种实现 SSR 的主要方式:
getServerSideProps (页面级别): 这是最常用的 SSR 方法。getServerSideProps 是一个异步函数,它在每个请求时都会在服务器端运行。 它接收一个包含上下文信息的 context 对象,并返回一个包含 props 对象的对象。这些 props 将传递给页面的组件作为 props。
import Head from "next/head";import Layout from "../../app/layout"; ...
nextjs-静态生成
nextjs
静态生成Next.js 的静态生成 (Static Generation, SG) 是一种构建方式,它在构建时预渲染页面 HTML,并将这些 HTML 文件直接提供给客户端。这意味着页面内容在用户请求之前就已经准备好了,从而提供更快的加载速度和更好的 SEO 性能。
工作原理:
在构建过程中,Next.js 会为每个静态生成的页面生成一个对应的 HTML 文件。当用户请求页面时,服务器直接返回预先构建好的 HTML 文件,无需在服务器端进行任何渲染。这与传统的服务器端渲染 (SSR) 不同,SSR 是在每次请求时动态生成 HTML。
使用场景:
静态生成适用于内容不经常变化的页面,例如:
博客文章
产品页面
文档
营销 landing page
优势:
更快的加载速度: 因为 HTML 已经在构建时生成,所以服务器可以立即响应请求,无需等待渲染。
更好的 SEO: 搜索引擎爬虫可以更容易地抓取预渲染的 HTML 内容,从而提高网站的 SEO 排名。
降低服务器负载: 由于页面是在构建时生成的,服务器无需处理每个请求的渲染,从而降低了服务器负载。
更好的缓存: 静态生 ...
node脚本-重命名-移动目录
一个处理文件的脚本/* * @Author: yangyuxuan wuqi_y@163.com * @Date: 2025-02-18 10:24:47 * @LastEditors: yangyuxuan wuqi_y@163.com * @LastEditTime: 2025-02-18 15:55:32 * @Description:node脚本-重命名-移动目录 * */const fs = require('fs');const path = require('path');// 定義文件的路徑const distDir = path.resolve('./dist');const oldFile = path.join(distDir, 'index.html');const newFile = path.join(distDir, 'index.html');const sourceDir = path.resolve('./dist/assets' ...
css实现视差效果
效果1:
源码:
<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> </head> <style> * { margin: 0; padding: 0; } html { height: 100vh; overflow: hidden; } body { width: 100vw; height: 100vh; perspective: 1px; tr ...
web中简/繁互转
分享一个web中简/繁互转的demo<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> </head> <body> 测试按时打算离开东京萨洛克 </body></html><script> class Trans { constructor(zh_choose) { this.zh_choose = zh_choose; this.zh_default = "n"; // 简体繁体 ...
移动适配flexible代码
分享一个flexible.js代码(function flexible(window, document) { const docEl = document.documentElement const dpr = window.devicePixelRatio || 1 // adjust body font size function setBodyFontSize() { if (document.body) document.body.style.fontSize = `${12 * dpr}px` else document.addEventListener('DOMContentLoaded', setBodyFontSize) } setBodyFontSize() // set 1rem = viewWidth / 10 function setRemUnit() { const rem = docEl.clientWidth / 10 ...
squid + stunnel 跨越长城
squid + stunnel 大法用户将tcp包发给stunnel client;stunnel client将包加密,发送给stunnel server;stunnel server解密后发送给squid;squid将包中的http请求进行转发,然后再将请求结果返回给stunnel server;stunnel server加密发给stunnel client;stunnel client解密后交回给用户。这样,由于通过GFW的数据是被stunnel加密过的,用户就能放心的“上网”了
这里我们来说几种方案
方案1:墙外服务器部署squid + stunnel server;墙内用户主机部署stunnel client,并将浏览器代理设置为本机上的stunnel client。
这个方案的优点就是节约,只需要一台墙外服务器。缺点是墙内每个用户主机都要装stunnel client,如果只是自己一个人用的话还好,用户多的话就麻烦了。
方案2:墙外服务器部署squid + stunnel server;墙内服务器部署stunnel client;墙内用户主机将浏览器代理设置为墙内的s ...
在 CentOS 9检查防火墙状态
在 CentOS 9 中,Firewalld 是默认的防火墙管理工具。要检查防火墙状态,可以使用以下命令:
systemctl status firewalld
该命令将显示 firewalld 服务的状态,包括是否正在运行、活动区域以及其他相关信息。
以下是一些其他的常用 Firewalld 命令:
启动防火墙: systemctl start firewalld
停止防火墙: systemctl stop firewalld
重启防火墙: systemctl restart firewalld
禁用防火墙(永久): systemctl disable firewalld
启用防火墙(永久): systemctl enable firewalld
查看活动区域: firewall-cmd --get-active-zones
查看默认区域: firewall-cmd --get-default-zone
重新加载防火墙规则: firewall-cmd --reload
如果你的 CentOS 9 系统使用了 iptables 而不是 firewalld,可以使用以下命令检查状态 ...