![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
IT杂文
hangshao0.0
道阻且长,行则降至。
展开
-
C语言分割字符串
【代码】C语言分割字符串。原创 2023-04-06 17:46:14 · 1884 阅读 · 1 评论 -
个人经历&&博客现状
之前使用Hexo + GithubPage搭建了个人博客。但GithubPage有时候比较卡,所以我在GithubPage和GiteePage上进行了双部署。GiteePage是国内平台,所以速度确实会更快,局限就是付费才能自动更新,不过每次都手动更新一下也不是什么坏事。之前有一天,Gitee上面说我提交了恶意代码,我也不知道是怎么回事,难道是因为博客里面写过一句话木马?当时没管,现在发现个人博客卡到基本访问不了,于是想着要不要自己搞个服务器重新搭建一下,看看Hexo博客在服务器里面是怎么搭建的,不原创 2022-04-28 09:14:55 · 572 阅读 · 0 评论 -
记录一下初次使用Xray的有趣过程
装好之后如下图:配置BurpSuite。配置代理。访问了一个大佬的个人博客。扫描结果如下:有所结果,访问看看。下载文件,后缀改为.txt。哈哈哈,国光大佬很皮呀。原创 2022-04-26 13:46:38 · 4046 阅读 · 0 评论 -
上班第一天的报错(AWVS卸载不彻底)
之前装过AWVS12,后来卸载了,但是不彻底。所以这次装AWVS14就开始报错:Acunetix version prior to 12 was found installed去上网搜,回答基本都如下:我照着操作了,但是都不行。然后看到了一篇帖子,跟我情况基本一样。看完回答似乎明白了原因 ,但是回答说得太笼统了。去搜了一下AWVS的用户文件存放在哪里,没找到结果。于是我试了一下,先安装AWVS12,然后再运行unins000.exe卸载一次。卸载完之后,再安装AWVS就不会报错了原创 2022-04-25 16:34:27 · 5957 阅读 · 4 评论 -
上班第一天的报错(Nessus安装winpcap报错)
Nessus安装一直报错。后来发现是之前的winpcap版本较高,而我要装的破解版稍微旧一点,所以需要删除之前的。但是我的winpcap已经删除过了,那么基本可以判断,winpcap也是一种需要“卸载干净”的东西。所以去修改了两个.dll文件,在后面加上,old后缀,如下所示。C:\Windows\SysWOW64\Packet.dll.oldC:\Windows\SysWOW64\wpcap.dll.old然后把之前安装Nessus的路径都删了,重新运行安装包即可。...原创 2022-04-25 14:44:11 · 576 阅读 · 0 评论 -
因上努力,果上随缘
还是很喜欢这句话。“尽人事,听天命”的文艺版本。有的事情吧,虽然不那么容易,但是也不见得就很难。我还是太不自然了0.0。不过,总是在不断进步的嘛。放弃是不可能放弃的,加油。...原创 2021-12-05 23:13:54 · 522 阅读 · 0 评论 -
道阻且长,行则将至
还有30天,而我看了一遍《太阳照常升起》。似乎看不懂,似乎又懂点什么。我感觉这像是一部中国版的《阿甘正传》。不过说实话,我不喜欢“像”这个字,搞得就好像是抄袭一样。Hexo博客出了点问题,没时间去管了。还有一些其他的事情想去做,也由不得我想了。就这样咯,明天早晨,太阳还是会照常升起的,加油吧。...原创 2021-11-25 21:57:47 · 621 阅读 · 0 评论 -
Kali卸载原装JDK,安装JDK1.8
kali 自带的是 openjdk,我在使用 tomcat 的时候,自带的 JDK 似乎行不通,于是我便打算卸载原装 JDK ,重装 JDK1.8。首先卸载 kali 自带的 openjdk 命令如下(根据自己系统的 jdk 版本来修改指令)sudo apt-get remove openjdk-11-jresudo apt-get remove openjdk-11-jre-headless卸载之后,再次使用 java -version 命令,就会发现找不到 JDK 了。这个时候下载 J原创 2021-08-24 20:39:48 · 4636 阅读 · 4 评论 -
分享一篇博客(水一篇博客)
原创 2021-03-08 14:32:17 · 1149 阅读 · 0 评论 -
一次聊天勾起的回忆
我发现,曾经感觉那么深刻的话,原来真的有人跟我同样有感触。看来世界很大,也很小。于是呢,我又去搜了一下这两句话。嗯嗯,都一起加油吧。原创 2021-01-21 16:30:54 · 1364 阅读 · 0 评论 -
读《白帽子讲Web安全》有感
该博客转自hangshao.tech,之前忘记在CSDN发布了。今天是2020.11.19,我开始了第二次拜读《白帽子讲Web安全》。记得大一的时候就买过这本书,不过奈何当时水平有限,实在是难以阅读下去,于是放弃。我想,在大三的时候再来重拾这本书,应该会有所收获,如果还能作一个总结,那便更好,所以现在陆陆续续地写一些吧,写一点发一点,或许全部写完的时候,已经是2021年了。(在写了在写了…)第一章是巨佬吴翰清讲述他的安全世界观。这一章讲了中国黑客史,介绍了白帽子和黑帽子,揭示了他认为的安全问题的本质原创 2021-01-20 19:39:36 · 1643 阅读 · 0 评论 -
在Hexo的butterfly主题中搭建网易云音乐
首先把项目clone下来git clone https://github.com/sl1673495/vue-netease-music然后安装依赖npm i卡顿的话,先清除缓存npm cache clean --force安装淘宝镜像cnpm,用cnpm来安装依赖 npm install -g cnpm --registry=https://registry.npm.taobao.org最后再次安装依赖cnpm install本地调试npm run dev打包生成mus原创 2021-01-15 14:32:26 · 2422 阅读 · 0 评论 -
爬虫基础回顾
前面提到过要复习一下python爬虫的知识,当然了,一些web的常识肯定也要温故一遍呀。静态网页和动态网页使用Hexo搭建的博客就是静态网页,而那些可动态解析URL参数变化,关联数据库,并且实现登陆注册功能的网页是动态网页,我们遇到的大多数网站都是动态网站。说到登录,就不得不提一下会话和Cookies,两者共同作用,才能拿到登录的凭证。会话和CookiesHTTP协议对事务处理是没有记忆能力的,也就是说服务器不知道客户端是什么状态,而会话和Cookies就是用来保持HTTP连接状态的。会话在服务原创 2021-01-14 22:16:50 · 950 阅读 · 0 评论 -
12月份的博客能续上吗?
这个学期将会是目前为止,我最最最最肝的一个学期。一共有8门课,7门课有实验,3门课有分组大作业,1门课有课程设计,各科的小作业就不算在里面了。9月备战四级,现在又备战六级。学期初开始了因疫情而耽误的学车,抽空学车,这个月底就要拿驾照了。过几天就是连续一周的党课,每天晚上两个半小时。同时,我这个学期还保持了每个月更新5篇博客的速度。佩服自己能这么肝的同时,有几点感悟:尽管去做,而不是否定自己,不做就不知道自己到底有多大的能力。有事情别拖,比如大二就该搞定的四级和驾照。(当然疫情确实有一定的影原创 2020-12-04 21:44:47 · 2420 阅读 · 7 评论 -
SSRF浅析
CSRF与SSRF首先来说一下这两个长得这么像的东西,分别是什么,它们有什么区别?CSRF,全称为Cross-Site RequestForgery,也就是跨站请求伪造。SSRF,全称为Server Side RequestForgery,也就是服务器端请求伪造。XSS与CSRF说到CSRF,不得不提一下XSS。从名字上来看,同为跨站攻击,XSS是跨站脚本攻击,CSRF是跨站请求伪造,也就是说,CSRF攻击本不是出自用户之手,而是经过第三方恶意攻击者的处理之后,伪装成了受信任用户的“亲历亲为”。原创 2020-10-24 13:13:26 · 1455 阅读 · 0 评论 -
Hexo博客镜像(github和gitee双部署)
既然是希望将hexo博客部署在Github和Gitee上,那么想必已经掌握了基本的安装和操作,就算没有安装,不会操作,也没关系,用心找找,教程都是有的。创建仓库Github仓库名为 “用户名.github.io”Gitee仓库名为 “用户名”开启pages服务1. Github2. Gitee配置 _congif.yml在博客根目录填上两个仓库的地址,一个是HTTPS的地址,一个是SSH的地址,这样处理,好像是可以避免冲突和以外的错误,不过我没有出现过这样的错误记得填SSH原创 2020-10-20 18:18:48 · 1998 阅读 · 0 评论 -
数据库课程设计基本框架(PHP+MySQL)
首先,PHP是世界上最好的语言,不接受反驳前期准备1.下载phpstudy2018https://www.xp.cn/download.html将其安装到D盘,然后启动MySQL和Apache服务2.MySQL或者Apache无法启动这些问题相信你能在网上找到解决办法,我当时也碰到过,但是通过搜索引擎都得到了解决3.打开MySQL数据库并创建数据库和表创建一个名为student的数据库在数据库中创建两张数据表(分别为stu和stu_score)如果你想直接使用文末的代码,那就跟我原创 2020-10-14 13:58:27 · 9995 阅读 · 7 评论 -
hexo+github+butterfly主题搭建过程中参考的文章
hexo博客搭建https://godweiyang.com/2018/04/13/hexo-blog/butterfly主题安装和配置http://www.c-hasel.cn/2019/12/01/hexo%E5%8D%9A%E5%AE%A2%E6%90%AD%E5%BB%BA%E4%BA%8C/#%E4%B8%BB%E9%A2%98%E7%9A%84%E5%AE%89%E8%A3%85%E5%92%8C%E5%8D%87%E7%BA%A7jsDelivr加速博客访问速度https://zhu原创 2020-10-04 19:27:30 · 1140 阅读 · 0 评论 -
Flask-ORM建立外键及其约束
from sqlalchemy import create_engine, and_, or_from sqlalchemy.ext.declarative import declarative_basefrom sqlalchemy import Column, Integer, String, Float, Text, ForeignKeyfrom sqlalchemy.orm import sessionmakerHOSTNAME = '127.0.0.1'DATABASE = 'stu原创 2020-09-12 16:41:49 · 1139 阅读 · 0 评论 -
Flask-ORM操作MYSQL(聚合函数)
查询过程中用到的聚合函数from sqlalchemy import funcfunc.count:统计行的数量func.avg:求平均值func.max:求最大值func.min:求最小值func.sum:求和实例:from sqlalchemy import create_enginefrom sqlalchemy.ext.declarative import declarative_basefrom sqlalchemy import Column, Integer, Stri原创 2020-09-11 16:50:42 · 1592 阅读 · 0 评论 -
Flask-ORM操作MYSQL(实现增删改查)
首先实现增加数据的功能from sqlalchemy import create_enginefrom sqlalchemy.ext.declarative import declarative_basefrom sqlalchemy import Column, Integer, Stringfrom sqlalchemy.orm import sessionmakerHOSTNAME = '127.0.0.1'DATABASE = 'student'PORT = 3306USERNAM原创 2020-09-11 15:23:30 · 1509 阅读 · 0 评论 -
Flask连接数据库(ORM操作)
Flask连接数据库from sqlalchemy import create_engineHOSTNAME = '127.0.0.1'DATABASE = 'student'PORT = 3306USERNAME = 'root'PASSWORD = 'root'# 创建数据库引擎DB_URL = 'mysql+pymysql://{}:{}@{}:{}/{}'.format(USERNAME, PASSWORD, HOSTNAME, PORT, DATABASE)engine原创 2020-09-09 17:31:47 · 1133 阅读 · 0 评论 -
中级网络工程师备战过程中的常用术语(软考)
既是总结,又是复习备考,可能只是比较适合我自己。这些术语的英文全称就不写了,有点英文基础的应该不难理解 TCP(传输控制协议) 的全称是 Transmission Control Protocol.WWW万维网URL统一资源定位符HTTP超文本传输协议HTTPS安全超文本传输协议HTML超文本标记语言TCP传输控制协议UDP用户数据包协议IP网际协议PPP点到点协议PDU协议数据单元SDU服务数据单元MAC介质访问控制LLC逻辑链路控制VLAN虚拟局原创 2020-09-08 15:50:10 · 996 阅读 · 0 评论 -
Git命令与GitHub使用
1. 初始化git init2. 配置个人信息git config --global user.email "you@example.com"git config --global user.name "Your Name"3. 管理指定文件git add 文件的名字git add . (. 表示当前所有的文件)4. 生成版本git commit -m "版本描述信息"5. 查看版本git log6. 文件的三种状态红色: 新增或者修改了文件绿色: git已经管理了该原创 2020-08-05 11:22:06 · 1946 阅读 · 0 评论 -
去除Chrome页面中搜索框下的8个缩略图
这个回答可以说是汲取百家之长吧,真的很不错,找了好些教程,最后还是看这篇博客解决了问题https://blog.csdn.net/qq_42234319/article/details/105321799?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-3原创 2020-06-17 21:52:36 · 1603 阅读 · 0 评论 -
VMware安装Linux过程中的分区问题-(Centos7)
为什么要分区,分区的好处给磁盘分区就像给衣柜加隔板一样,如果衣柜不加隔板,那么想找一只袜子可能会很难,但是如果加了隔板之,把上衣、裤子、袜子等全都被分开存放,那么这样找起来就很快,对于磁盘也是一样Linux的硬件与系统文件在 Linux 中,每一个硬件设备都映射到一个系统的文件,对于硬盘、光驱等 IDE 或 SCSI 设备也不例外。Linux把各种 IDE 设备分配了一个由 hd 前缀组成的文件;而对于各种 SCSI 和 SATA 设备,则分配了一个由 sd 前缀组成的文件分区的类别磁盘的分区原创 2020-06-15 10:35:45 · 1435 阅读 · 0 评论 -
计算机组成原理练习题-(IEE754标准)
设某float型数据x= - 6.75,采用IEEE754单精度浮点数格式表示,存在一个32位浮点寄存器FR中,则FR的内容是?------------------------------------------------------------------------------------------首先,来了解一下32位浮点数的存储方式然后开始相关计算6.75:二进制表示为:110.11规格化表示:110.11 = (1.1011)2 * 22(指数e为2)求阶码E:因为E = 指数原创 2020-06-11 17:09:13 · 5808 阅读 · 1 评论 -
动态规划法解决01背包问题(C++实现)
问题描述:给定n种商品和一个给定固定容量的背包。物品 i 的重量是W[ i ],价值为V[ i ],背包的容量为C。问应当如何选择装入背包中的物品,使得装入背包中的物品的总价值最大?(对于同一个物品,要么放,要么不放,不能把物品放入背包多次,也不能将物品分割后部分装入,因此该问题称为 0 - 1背包问题)#include<iostream>#include<algorithm>#include<vector>using namespace std;int t原创 2020-06-06 13:23:31 · 4120 阅读 · 0 评论 -
信息论与编码-(java实现信道容量的计算)
package schoolwork;import java.util.*;public class schoolwork2{ public static Double log(Double data) { return Math.log(data)/Math.log(2); } //检验矩阵是否满足格式 public static boolean check_format(int[][] arr,int m) { ArrayList<Integer> Array =原创 2020-05-25 20:04:37 · 581 阅读 · 0 评论 -
汉诺塔的递归与非递归(python代码实现)
递归实现def hanoi(n, a, b, c): if n == 1: print(a + '--->' + c) else: hanoi(n-1, a, c, b) print(a + '--->' + c) hanoi(n-1, b, a, c)hanoi(3, 'A', 'B', 'C')非递归实现def hanoi(n): tower_belong = [0] * n if原创 2020-05-15 15:02:37 · 4657 阅读 · 2 评论 -
信息论与编码-python实现三种编码(香农编码,费诺编码,赫夫曼编码)
香农编码,费诺编码,赫夫曼编码(python实现)开始参考了网上其他人的代码,但后来都发现要么代码有错误,要么输出结果不符合自己的预期,于是就重新实现了一下,代码仍存在一些小问题,但是能够满足作业要求,重要的是看懂思路,然后按照自己的想法去实现代码存在的问题:香农编码和费诺编码起始的符号及其概率都已给出并且做了初步处理,有想法的可以改成用户自定义输入费诺编码的实现借助了字典和递归,但是如果初始输入的概率集中存在相同的key(也就是概率集中存在相同概率),那么字典update()方法的覆盖特性会使两原创 2020-05-15 13:30:59 · 7606 阅读 · 9 评论 -
受限的汉诺塔问题(C++实现)
假定三个柱子从左到右分别是A,B,C,要将A柱上的两个盘子移动到C柱上普通汉诺塔问题要求每次移动后,小盘子都在大盘子上面,在普通汉诺塔的基础上受限的汉诺塔要求每次移动盘子只能将盘子移动到中间的B柱上,或者从B柱上移走下面以n=2为例子,即开始A柱只有两个盘子常规汉诺塔步骤:小盘子:A>>>B大盘子:A>>>C小盘子:B>>>C首限汉诺塔步骤:小盘子:A>>>B小盘子:B>>>C大盘子:A&g原创 2020-05-11 22:39:29 · 1749 阅读 · 2 评论 -
Web安全相关术语
1. IP地址互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),缩写为IP地址(英语:IP Address),是分配给网络上使用网际协议(英语:Internet Protocol, IP)的设备的数字标签。常见的IP地址分为IPv4与IPv6两大类,但是也有其他不常用的小分类。2. VPS虚拟专用服务器(Virtual Private Serve...原创 2020-03-08 20:21:34 · 549 阅读 · 0 评论 -
MYSQL-基本命令行操作
MYSQL命令行基本操作**1. 链接数据库mysql -u root -p2. 退出数据库exit / quit / ctrl+d3. 查看所有数据库show databases;4. 创建数据库create database 数据库名 charset=utf8;5. 删除数据库drop database 数据库名;6. 查看当前使用的数据库select databas...原创 2019-11-17 20:18:49 · 150 阅读 · 0 评论 -
解决chrome浏览器崩溃的问题
1. 上网搜索 网上说,打开chrome浏览器的属性,检查兼容性,取消勾选,然后可以在目标那一栏的后面加上一些东西(这个亲测能暂时解决问题) 2. 更改之后  ...原创 2019-12-11 22:19:55 · 2570 阅读 · 0 评论 -
#pragma once用法
1.#pragmaonce这个宏有什么作用?为了避免同一个头文件被包含(include)多次,C/C++中有两种宏实现方式:一种是#ifndef方式;另一种是#pragma once方式。在能够支持这两种方式的编译器上,二者并没有太大的区别。但两者仍然有一些细微的区别。2.两者的使用方式有何区别?示例代码如下:复制代码//方式一:#ifndef SOMEFILE_H#define...原创 2019-11-24 12:48:23 · 235 阅读 · 0 评论