常用命令 新建站点:hugo new site /path/tp/your/site; 启动hugo并开启调试:hugo server,浏览器输入 http://localhost:1313 可实时生成预览; 生成静态网页:hugo docsy模板配置文件文件名:hugo.toml,这是整个站点的配置文件。前段时间因为升级docsy把这个文件覆盖了,导致整个网站的设置全部重置。因此在这里记录一些基本的设置项,作为备份。# 根目录的路径 baseURL = "https://t.imsail.com/" # 站点title title = "网站标题" # 是否生成robots文件 enableRobotsTXT = true # 主题选择,支持组合,优先级从左到右. theme = ["docsy"] # 页面上提供类似"最后修改"的信息(如果不用github貌似这个显示出不来) enableGitInfo = true # 国际化相关设置 # 默认语言的的站点内容路径 contentDir = "content/zh-cn" # 默认语言 defaultConte
只要你的机器暴露在公网之中,每天都会受到来自外界源源不断的攻击。所以,在拿到一个新机之后,修改ssh端口、把ssh的密码登录改成密钥登录才是比较稳妥的。笔者在此记录一下debian服务器设置ssh密钥登录的步骤,以备将来使用。第一步:生成密钥使用 ssh-keygen 或者 ssh-keygen -t rsa 命令生成密钥。执行完命令后,一路回车即可。ssh-keygen 命令会在默认的/root用户目录下生成两个文本文件,一个带 .pub 结尾,内容只有一行,这是公钥;另一个不带 .pub 结尾,内容有很多行,这是私钥。公钥和私钥是绝对唯一的一对,其中公钥内容是可以公开的,而私钥内容则需要小心保管。在这里记录一下ssh-keygen命令可以携带的几个参数的含义: -t rsa: 参数用于指定密钥类型,它告诉 ssh-keygen 生成何种类型的密钥。常见的类型包括 RSA、DSA、ECDSA 和 Ed25519。 -b 4096:表示密钥的长度,建议 4096 起。 -C 张三:在公钥末尾加上注释,表名这是谁的公钥。 -N password:设置私钥密码。如果想在生
前段时间不知为何,脑子一热把数据库升级成了8.0版本,但无奈服务器内存太小承受不来,于是打算再降回5.7。本以为会花费很久时间,尝试之后发现仅用了一两个小时就搞定了,时间主要用在对数据的处理环节。对于数据库的安装、卸载本身不做详述,主要详细说明一下数据的处理、转移过程。第一步:数据备份有宝塔面板的,可以直接使用面板的批量备份功能:没有宝塔面板,用命令行备份成SQL格式的文件即可。mysqldump -u 用户名 -p 数据库名 > 文件名.sql 第二步:数据处理首次检索首先检索了一下网上给出的解决方案,大概是说:需要将8.0中专属的内容替换为5.7中的内容,包括: utf8mb4_0900_ai_ci 替换为 utf8_general_ci utf8_croatian_ci替换为 utf8_general_ci utf8mb4_general_ci替换为utf8_general_ci utf8mb4 替换为 utf8 甚至有人为了方便,用下面的语句直接删掉了 AUTO_INCREMENT= 后面的内容:sed 's/AUTO_INCREMENT=[0-9]*\b
在一个网页中,[[前端]]与[[数据库]]都设置了相同的长度限制。但在实际填写表单时,当我输入了大量回车符时,数据库往往会报错而前端不会拦截。因此判断是字符超长导致的错误。分析过程研究了一下回车符在java前端和数据库各自所占的长度:先确认数据库和页面的编码都是utf-8类型。首先,我在viewNotice字段中输入“一二三四五六七八”这几个字符,此时在网页控制台里输入:document.getElementsByName('viewNotice')[0].value.length 得到的值为8。再进入数据库,输入以下查询语句SELECT length( VIEW_NOTICE ) AS '字符串(字节)长度', CHARACTER_LENGTH( VIEW_NOTICE ) AS '字符长度' FROM `VR_LABORATORY_INFO` WHERE id = XXX 可以看到其字符长度也是8。此时前端和数据库的字符长度都是一致的。然后再往字符中加入一个回车,再重复执行上述两个命令,得到的结果分别是9(前端)和10(数据库)。结论 在前端中,一个回车符会被视为1个字
一、描述: Mysql中的FOREIGN_KEY_CHECKS是用来启动和关闭外键约束的方法。二、错误: 在MySQL中删除一张表、一条数据,或者修改外键关系的时候,提示以下错误:[Err] 1451 -Cannot delete or update a parent row: a foreign key constraint fails (...)三、原因: 这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据。四、解决方法: 可以通过设置FOREIGN_KEY_CHECKS避免这种情况。 执行SET FOREIGN_KEY_CHECKS=0;禁用外键约束。删除数据后可以在开启外键约束:SET FOREIGN_KEY_CHECKS=1;比如:SET FOREIGN_KEY_CHECKS = 0; -- 执行SQL语句 xxxx SET FOREIGN_KEY_CHECKS = 1;五、相关命令 查看当前FOREIGN_KEY_CHECKS的值可用如下命令:SELECT @@FOREIGN_KEY_CHECKS;文章转
趁着周末,将网站的php版本升级到了8.1,但是由于wordpress插件都比较陈旧,没有及时更新。所以出现了不少的错误。通过查阅网络资料,结合实际情况,列出遇到的如下三种情况。1、Fatal error: Uncaught Error: Call to undefined function create_function()由于在wordpress中,一些插件、主题使用了create_function()函数。这个函数在 PHP 7.2 版本中就已经被废弃并且在 PHP 8.0 中被移除。你可以使用匿名函数来代替 create_function()。例如,如果你原来的代码是这样的:$myFunction = create_function('$arg1, $arg2', 'return $arg1 + $arg2;'); $result = $myFunction(1, 2); 可以将其修改为:$myFunction = function ($arg1, $arg2) { return $arg1 + $arg2; }; $result = $myFunction(1, 2
近期把服务器的php版本从7.4升级到了8.1,网站响应速度终于快了那么一丢丢(可能是心理作用吧)。但因为php8的语法要求更加严格,所以升级过程中,在多个站点里,发现了N多报错。1、Warning: Undefined array key "xxxxxxx" in ....这个错误是我在升级过程中遇到的最多的错误之一。如果你的代码中使用了未定义的数组键值,那么会抛出 Undefined array key 错误。这是因为在 PHP 8 中,增加了对未定义的数组键值的严格检查,所以如果访问一个未定义的数组键值,PHP 会抛出一个警告或致命错误。这个错误通常会在使用数组时出现,例如:$array = []; echo $array['key']; //这里的键'key'就是一个未被定义的key出现这个错误的解决方法是在访问数组元素之前检查它是否已经定义。可以使用 isset() 函数或 Null 合并运算符(??)来避免该错误。例如,将下面的代码:if ($dami_meta['std'] != '') { echo '<img src="'.$da
一、jQuery和js的概念jquery是一个快速、简洁的JavaScript库,极大的简化了javascript编程。js是一种脚本语言,常用于网页客户端编程,使网页在客户端浏览器中,实现更多地动态功能,表现出更加丰富的视觉效果。所以,最本质的区别就是js是一种语言,而jQuery是基于该语言的一种框架。除却最本质的区别还有一些用法上的差别。二、jQuery和js用法上的区别1、获取元素①.根据ID取元素JS:取到的是一个DOM对象。var div = document.getElementByID("one");JQUERY:取到的是一个JQUERY对象。var div = $("#one");括号里面是根据某个东西来找,相当于一个选择,如果我们要根据ID来找,在样式表里的ID是用#来表示的,所以在这里我们直接带入井号,整句的意思就是根据ID为one的来查找。②.根据class取元素,在数组里面如果要取DOM对象使用索引的方式,如果要取JQUERY对象使用eq()JS:取到的是一个数组var div = document.ElementsByClassName("test");JQ
肥牛
半路出家的产品圈怪蜀黍