使用hugo部署个人博客
使用hugo部署个人博客 近期换了云服务器商,原wordpress博客迁移起来太麻烦,干脆换成轻量级的hugo 小技巧 使用hugo生产静态页面,然后将public下的文件迁移到对应的blog目录 可以使用脚本来完成 #!/bin/bash # 定义变量 HUGO_DIR="/root/blog" PUBLIC_DIR="$HUGO_DIR/public" DEPLOY_DIR="/www/blog" # 生成 Hugo 静态文件 echo "开始生成静态文件..." cd "$HUGO_DIR" || { echo "Hugo 目录不存在!"; exit 1; } hugo --noCache # 检查生成是否成功 if [ $? -ne 0 ]; then echo "Hugo 生成失败!请检查配置。" exit 1 fi echo "静态文件生成成功。" # 移动生成的静态文件到目标目录 echo "开始部署静态文件..." sudo rm -rf "$DEPLOY_DIR"/* sudo mv "$PUBLIC_DIR"/* "$DEPLOY_DIR/" # 设置目标目录权限 sudo chown -R www-data:www-data "$DEPLOY_DIR" sudo chmod -R 755 "$DEPLOY_DIR" # 检查移动结果 if [ $? -eq 0 ]; then echo "静态文件部署成功!" else echo "静态文件部署失败!请检查权限或路径。" exit 1 fi # 重启 Nginx 服务(可选) echo "重启 Nginx 服务..." sudo systemctl reload nginx # 检查服务状态 if [ $? -eq 0 ]; then echo "Nginx 服务重启成功!网站已更新。" else echo "Nginx 服务重启失败!请检查配置文件。" exit 1 fi echo "博客部署完成!🎉" 添加到hugo命令 alias hugo-deploy='./deploy_blog.sh' 上述别名只能在当前终端生效,无法全局生效 ...
nginx反向代理中文域名
Nginx反向代理中文域名 前几天买了个中文域名,发现nginx似乎无法正确解析 最后发现中文域名在解析的时候,需要先转换为PunyCode [转码]:http://www.webmasterhome.cn/tool/punycode.asp 中文域名分为两类: 1、一类是域名后缀为英文字母的国际中文域名和别国中文域名 比如:中文.com,中文.net,中文.biz,中文.cc,中文.hk,中文.tm,中文.tv,中文.tw; 2、一类是域名后缀为中文的纯中文国内中文域名 比如:中文域名.中国,中文域名.公司,中文域名.网络; 中文域名在解析的时候,需要先转换为 xn–fiq228c.com或xn–fiq228c.cn形式的ASCII码,这种编码称为PunyCode。 纯中文域名不被标准的解析服务器支持,要实现对这种纯中文域名的正确访问,ISP需要做相应的修改,以便能够正确解析中文域名。 同时CNNIC也提供了专用服务器,用户只要将浏览器的DNS设置指向这台服务器,它同样可以完成对纯中文域名的正确解析。 另外,考虑到现在有些ISP还没有做修改,而有些用户又不方便将DNS设置指向CNNIC提供的服务器,纯中文域名会被加上.cn后缀,即对每一个纯中文域名同时有两种形式: 纯中文域名和纯中文域名.CN 如:“中文域名.网络"和"中文域名.网络.CN”。这样即使ISP还没有做相应的修改,用户也可以正确使用中文域名。 在Nginx中如何反向代理 server { listen 80; server_name www.xxxx(PunyCode替换掉中文).com; location / { ...... } }
24四川中烟科目C
往年真题 24科目C 选择 5.十进制270对应十六进制数为( ) 先转为二进制再转16 270对应二进制 0000 0001 0000 1110 该二进制对应 0 1 0 E 即 10E 7.1MB等于( )B 1 MB=1024 KB=1048576 B 8.MQTT 协议? MQTT协议是一种设备间通信的轻量级发布/订阅协议 10.设计模式中不属于创建型模式的是( ) 适配器模式 13.在智能制造领域,实现质量控制的关键技术是( ) 传感器检测 17.机器学习算法的过程中出现的“过拟合”问题是指() 模型太过复杂,以至于学习了训练数据中的噪声 20.大数据当中的“V5”模型不包括()** Verification(验证) 21.常用的计算机学习库Pytorch是由()公司开发的 Metac(原Facebook) 23.智能制造领域中的预测维护的主要目的是()** 提升生产效率 25.OSI模型第四层 传输层 30.( )是常见的逆向工程技术 反汇编 34.在现代系统的内存管理中,页面置换算法的目的是,错误的是( ) A.减少内存使用碎片 B.最大化CPU和CPU之间 数据传输速度 C.确定当发生页面错误时,哪个内存页面应被移除 D.最小化操作系统内核的内存占用 B 35.下列关于计算系统结构的高速缓存,说法错误的是( ) A.高速缓存越大越好,能够提高数据访问速度 B.高速缓存采用写回策略可以确保数据一致性 C.高速缓存采用写直达策略可以减少写操作的响应延迟 D.高速缓存写回策略可以减少不命中时的数据传输 B 36.在无监督学习中,常用于数据集聚类的算法是( ) A.线性回归 B.最优梯度算法 C.支持向量机 D.K-means D 43.一个程序的( )部分通常驻留在随机取存储器中,以便 cpu可以快速访问指令 A.缓存 B.堆栈 C.寄存器 D.文本段 ...
软考笔记|组原|数据的表示
数据的表示 进制转换 R进制转十进制: 按权展开法 eg. 七进制 604.1=6*49 + 0*7 + 4*1 + 1*(1/49) 十进制转R进制: 短除法 eg. 94转为2进制 2|94 余0 2|47 1 2|23 1 2|11 1 2|5 1 2|2 0 1 1 然后从下往上,得到 1011110 二进制转八进制与十六进制 八进制 八进制可以表示0-7八个基数,需要3位二进制表示 因此,转换时3位二进制表示一位八进制 10 001 110 2 1 6 十六进制 同理,十六进制表示0-15,需要4位二进制表示 因此,转换时4位二进制表示一位十六进制 1000 1110 8 E 原反补移 第一位为符号位 原码 即数据的二进制 反码 正数的反码和原码相同 负数的反码是除符号位,其他位取反 补码 正数的补码与原码相同 负数补码=反码末尾位加1 移码 无论正负,补码符号位取反 原补转换:除符号位 取反加1 算术运算 需要用补码计算,通过溢出的方式得到正确结果 注意:补码得到的不是真实结果,需要再转换为原码 否则遇到负数会出现错误
软考笔记|组原|浮点运算
浮点运算 浮点数的存储方式 浮点运算就是实数运算,因为计算机只能存储整数,所以实数都是约数,这样浮点运算是很慢的而且会有误差。 如果阶码不变,叫定点数 如果阶码改变,是浮点数 一般尾数用补码,阶码(即指数)用移码 阶码的位数决定数的表示范围,位数越多范围越大 尾数的位数决定数的有效精度,位数越多精度越高 对阶时,小数向大数看齐 对阶是通过较小数的尾数右移实现的(算术右移不是逻辑右移)
软考笔记|计网|网络安全
网络安全 各层次安全保障 主动攻击与被动攻击 **主动攻击:**中断(可用性)、篡改(完整性)、伪造(真实性) **被动攻击:**监听(保密信息) Dos(拒绝服务)与DDos 通过短时高访问使得目标服务难以处理正常请求 防火墙 **包过滤防火墙:**检查数据包格式、源地址与目标地址合法性,速度快、安全性低 **代理型防火墙:**还会检查包的内容,速度较慢,安全性高 **状态检测防火墙:**综合以上两者优点,通过状态表实现 计算机病毒和木马 **病毒:**影响计算机使用并能够自我赋值的一组计算机指令或程序代码 **木马:**一种后门程序
软考笔记|计网|OSI-RM七层模型
计网与信安 OSI/RM七层模型 物理层 **中继器:**保证信号在传输中不失真(传输中有损耗) **集线器(hub):**分流,但是无法解决冲突 集线器连接的主机共同组成一个冲突域 数据链路层 **网桥:**分流和中继 **交换机:**可以解决hub冲突问题,但存在广播风暴问题(对单个设备的信息所有设备都被广播) 交换机每一个端口是一个冲突域 网络层 **路由器:**通过广播域解决交换机广播问题 路由器每个连接是一个广播域 **ARP:**地址解析协议 IP转MAC地址 **RARP:**反向地址解析协议 IP转MAC地址 ICMP:因特网控制协议 **IGMP:**网关协议 让时空穿越到上世纪70年代,Ethernet被发明出来,需要用一个黑盒子将电脑连接起来;否则电脑和谁通信,和谁网线直连,这是点对点通信了,一点也不方便,和以太网的多路访问网络初衷相违背。 以太网设计目标:电脑使用一个网络接口,可以同时与多台电脑通信,将电脑连接起来的黑盒子最先面世,称之为集线器,但我们更喜欢叫它Hub。 这种集线器,通常有多个端口,可以接入多台电脑,这种黑盒子使电脑连接在一起成为一种可能,其内部工作原理,就是信号放大器。 随着以太网的流行,越来越多的办公室使用它,网络变得越来越大,信号随着网线距离的变长,信号衰减的使得通信变得越发不可靠,同样需要可以将信号中继、放大的集线器。 但这个集线器只需两个端口,一端连着一根网线,由于其本来的目的就是延伸网线,美其名曰:网桥,这个更像描述其功能性的一面,“牵线搭桥”之意。 在集线器的基础上,添加了MAC地址学习功能,成为了交换机,这样可以避免集线器对所有帧都广播的弊病。 但这些设备依然都是桥接设备,因为帧经过它们时,帧原封不动。 但是随着无线局域网的诞生,关于桥接的定义被刷新,有线的Ethernet II 帧访问无线802.11时,帧格式发生了变化,但依然称AP(Access Point)为桥接设备,为何?因为一个广播帧可以无障碍通过AP,AP并没有分割广播域,所以依然是桥接设备。 传输层 **TCP:**面向连接,安全可靠 **UDP:**无连接的,不可靠
软考笔记|计网|IP地址与子网划分
IP地址(IPV4) IPV4用32位标识IP地址 分为五大类,D和E不用 A、B、C都由网络号和主机号组成,但前缀有所限定,类似标识编码 **A类:**8位网络号 24位主机号 2的24次方-2可用(全1全0排除)前八位0-127 B类:16位网络号 16位主机号 可用同理 前八位128-191 **C类:**24位网络号 8位主机号 前八位192-11011111(2) 子网划分 由于主机号过多,需要进行划分: 子网掩码(网络地址全为1,主机地址全为0) 将网络划分为多个子网(取部分主机号当子网号,借位) 将多个网络合并成一个很大的网络 例: 将一个B类IP地址168.195.0.0划分为27个子网,子网掩码为为多少? [解析]: 27个子网需要5个二进制位表示,那么需要从主机号借5位 十进制 二进制 168.195.0.0 1010 1000 1100 0011 0000 0000 0000 0000 255.255.248.0 1111 1111 1111 1111 1111 1000 0000 0000
软考笔记|组原|主存-编址与计算
主存-编制与计算 概念 需要先了解两个概念:编制、寻址。 编址 是指,对于一个个存储单元构成的存储器,要进行有效管理,就得对各存储单元编号,即给每个单元赋予一个地址码。经编址后,存储器在逻辑上便形成一个线性地址空间 寻址 存取数据时,必须先给出地址码,再由硬件电路译码找到数据所在地址,这叫寻址。 编制可以分为两种,按字编制和按字节编制 按字编制:存储体的存储单元是字存储单元,即最小寻址单位是一个字 按字节编制:存储体的存储单元是字节存储单元,即最小寻址单位是一个字节 字和字节 都是计算机的存储单元,字由若干个字节组成,一个字节是8个比特bit。 字的位数叫做字长,即cpu一次处理二进制代码的位数 字的长度与计算架构有关,比如32位机,一个字就是32位,换算成字节就是4字节;同样的64位机,一个字就是64位,也就是8字节。 字也是计算机一次处理数据的最大单位。 计算 根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出所需芯片的总数 $$ \begin{align} 总片数=\frac{总容量}{每片容量} \end{align} $$ 例题 若内存地址区间为4000H~43FFH,每个存储单元可存储16位二进制数, 该内存区域用四片存储器芯片构成, 则构成该内存所用的存储器芯片的容量是多少? [解析]: $$ \begin{align} &首先算出存储单元个数 \ &43FF_{(H)}-4000_{(H)}=400_{(H)}=416^2\ &然后可知每个存储单元字长16位,即2KB\ &根据上述公式可得\ &每片容量=\frac{总容量}{总片数}=\frac{416^2*2(KB)}{4}=512KB \end{align} $$ I/O编址 常用的I/O编址方式有两种: I/O与内存统一编址 I/O独立编址 I/O内存统一编址:I/O地址采用与主存单元地址完全一样的格式,I/O设备和主存占用同一个地址空间,CPU可像访问主存一样访问I/O设备,不需要安排专门的I/O指令. I/O独立编址:机器为I/O设备专门安排一套完全不同于主存地址格式的地址编码,此时I/O地址与主存地址是两个独立的空间,CPU需要通过专门的I/O指令来访问I/O地址空间.
软考笔记|组原|流水线
流水线 流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术 常考:流水线执行时间计算、流水线吞吐率、流水线加速比、流水线效率 在计算机中的应用如图所示 流水线将空余时间充分利用,以提高工作效率 类似于分工执行,一部分只取指,一部分只分析,一部分只执行 流水线的时间计算 流水线计算公式: $$ \begin{cases} \triangle t:流水线周期\ t_k:第一条指令第k步耗时\ k:第一条指令步骤数 \end{cases} $$ $$ 一条指令执行时间+(指令条数-1)流水线周期\ 理论公式: (t_1+t_2+t_3+…t_k)+(n-1)\triangle t\ 实践公式: k*\triangle t+(n-1)*\triangle t $$ **流水线周期:**几个操作中,执行时间最长的一段 执行完第一条指令后,后面每条指令耗时数值上等于流水线周期 计算时,先验证理论公式,没有答案时使用实践公式 实践公式:所有指令都给予流水线周期的时间 两类公式对比图: 例题 $$ 一条指令的执行过程可以分解为取指、分析和执行三步,\\ 取指时间t=3Δ t\ 分析时间t=2Δ t\ 执行时间t=4Δ t\的情况下,若按照串行方式执行,则全部10条指令全部执行完需要( \ \ )Δ t\ 若按流水线方式执行,流水线周期为(\ \ )Δ t ,10条全部执行需要(\ \ )Δ t $$ 解析: $$ 1.首先,如果串行执行,那么10条指令执行完需要(3+2+4)Δt*10=90Δt \ 2.由题可知,流水线周期为最长的一步,即分析时间4Δt.\ 执行十条所需时间为 (3+2+4)Δt+(10-1)*4Δt=45Δt $$ 超标量流水线 如图 ...