科技爱好者博客 https://www.lxx1.com 分享树莓派(Raspberry Pi)、Arduino、Linux、服务器使用配置 Mon, 16 Jan 2023 13:35:31 +0000 zh-CN hourly 1 https://wordpress.org/?v=6.1.1 科技爱好者博客2022年度总结 https://www.lxx1.com/5731 https://www.lxx1.com/5731#respond Mon, 16 Jan 2023 13:35:28 +0000 https://www.lxx1.com/?p=5731 Continue reading 科技爱好者博客2022年度总结]]> 放假在家,终于有机会写一下博客,这里总结一下科技爱好者博客2022年度总结数据。


一、访客概览

102,595 访问次数  -62.9%
1 分 2 秒 平均停留时间  -33.3%
81% 跳出次数 (查看一个页面后就离开)  +11%
1.6 每个访客行为数 (查看页面、下载、离站链接和内部搜索)  -11.1%
85 单次访问的最大活动量  -89.5%
147,632 页面访问次数, 123,504 唯一页面浏览量  -65.6%
865 站内搜索数, 403 关键词数量  -94.6%
9,575 下载次数, 6,950 唯一下载次数  -60.3%
4,711 离站链接数量,3,892 唯一离站链接数量  -84.3%
访客趋势图
访客趋势图
访客概览
访客概览

二、访问设备

设备类型
设备类型
设备型号
设备型号

三、浏览器

操作系统
操作系统
浏览器
浏览器

四、访问页面

访问量前十的页面:

页面标题
浏览次数
唯一页面浏览量
跳出率
平均停留时间
退出率
平均页面加载时间

Word常用字体下载(方正小标宋简体|仿宋GB2312) – 科技爱好者博客 -专注于树莓派(Raspberry Pi)

12,297 7,595 38% 00:00:23 51% 8.85秒
科技爱好者博客-专注于树莓派(Raspberry Pi) – 分享树莓派(Raspberry Pi)、Arduino、Linux、服务器使用配置 7,623 6,478 70% 00:00:26 78% 8.61秒
仿宋小标宋简体 – 科技爱好者博客 8,944 4,303 55% 00:00:24 57% 1.89秒
树莓派3B 详细参数 – 科技爱好者博客 -专注于树莓派(Raspberry Pi) 4,304 3,794 86% 00:00:33 97% 5.08秒
Retropie:树莓派游戏机的完整指南 – 科技爱好者博客 -专注于树莓派(Raspberry Pi) 2,460 2,189 84% 00:01:00 97% 14.51秒
仿宋_GB2312 – 科技爱好者博客 3,607 2,083 57% 00:00:29 45% 1.77秒
公文写作常用字体免费下载(楷体GB2312) – 科技爱好者博客 -专注于树莓派(Raspberry Pi) 2,641 2,067 59% 00:00:35 73% 4.73秒
树莓派(raspberrypi)常用镜像高速下载 – 科技爱好者博客 -专注于树莓派(Raspberry Pi) 2,200 1,904 73% 00:01:08 89% 12.43秒
Arduino引脚介绍和使用方式 – 科技爱好者博客 -专注于树莓派(Raspberry Pi) 2,172 1,864 83% 00:00:44 94% 4.48秒
树莓派操作系统镜像下载地址(史上最全) – 科技爱好者博客 -专注于树莓派(Raspberry Pi) 2,212 1,764 50% 00:01:12 79% 8.7秒

 

 

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 科技爱好者博客2022年度总结 (https://www.lxx1.com/5731)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5731/feed 0
无法登陆的情况下禁用WordPress插件 https://www.lxx1.com/5711 https://www.lxx1.com/5711#comments Sat, 07 Jan 2023 12:39:14 +0000 https://www.lxx1.com/?p=5711 Continue reading 无法登陆的情况下禁用WordPress插件]]> 今天博客由于启用了错误的插件,导致博客访问非常缓慢,后台也无法登录。下面介绍Wordpress博客在无法登录后台的情况下,通过数据库直接禁用Wordpress博客插件的方法。


首先访问Wordpress博客的数据库软件,找到wp_options数据表,进入该表,找到active_plugins项。

点击编辑,可以看到启用的插件都在option_value中显示出来。

将原来的字符串删除,修改为:

a:0:{}

然后点击“执行”

数据库修改执行成功

 

这时Wordpress插件就全部禁用了,可以登录Wordpress仪表盘了!

WordPress登录仪表盘

 

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 无法登陆的情况下禁用WordPress插件 (https://www.lxx1.com/5711)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5711/feed 1
解决Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake:故障 https://www.lxx1.com/5701 https://www.lxx1.com/5701#respond Sat, 07 Jan 2023 05:36:12 +0000 https://www.lxx1.com/?p=5701 Continue reading 解决Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake:故障]]> 博客服务器进行apt update更新时出现故障,显示“Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake:”


完整故障代码如下:

root@ecs-x-medium-2-linux-20200315094231:~# apt-get update
Ign:1 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic InRelease
Ign:2 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates InRelease
Ign:3 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports InRelease
Ign:4 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security InRelease
Err:5 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic Release
Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake: Error in the certificate verification. [IP: 101.6.15.130 443]
Err:6 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates Release
Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake: Error in the certificate verification. [IP: 101.6.15.130 443]
Err:7 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports Release
Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake: Error in the certificate verification. [IP: 101.6.15.130 443]
Err:8 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security Release
Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake: Error in the certificate verification. [IP: 101.6.15.130 443]
Reading package lists... Done
E: The repository 'https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: The repository 'https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: The repository 'https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: The repository 'https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

 

更换镜像源还是报错,不断尝试,终于解决了,方法如下:

touch /etc/apt/apt.conf.d/99verify-peer.conf \
&& echo >>/etc/apt/apt.conf.d/99verify-peer.conf "Acquire { https::Verify-Peer false }"

原因还是网络策略问题,前端可能有代理之类的东西对https进行解密和重新加密。

之后恢复正常!

root@ecs-x-medium-2-linux-20200315094231:~# touch /etc/apt/apt.conf.d/99verify-peer.conf \
> && echo >>/etc/apt/apt.conf.d/99verify-peer.conf "Acquire { https::Verify-Peer false }"
root@ecs-x-medium-2-linux-20200315094231:~# apt-get updateHit:1 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic InRelease
Get:2 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates InRelease [88.7 kB]
Get:3 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports InRelease [83.3 kB]
Get:4 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security InRelease [88.7 kB]
Get:5 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic/multiverse Sources [181 kB]
Get:6 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic/universe Sources [9,051 kB]
Get:7 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic/main Sources [829 kB]
Get:8 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic/restricted Sources [5,324 B]
Get:9 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/main Sources [537 kB]
Get:10 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/restricted Sources [34.0 kB] 
Get:11 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/multiverse Sources [18.9 kB] 
Get:12 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/universe Sources [487 kB] 
Get:13 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/main i386 Packages [1,589 kB] 
Get:14 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/main amd64 Packages [2,852 kB] 
Get:15 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/main Translation-en [523 kB] 
Get:16 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/restricted i386 Packages [38.6 kB] 
Get:17 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/restricted amd64 Packages [1,083 kB] 
Get:18 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/restricted Translation-en [150 kB] 
Get:19 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/universe i386 Packages [1,635 kB] 
Get:20 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/universe amd64 Packages [1,866 kB] 
Get:21 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/universe Translation-en [404 kB] 
Get:22 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/multiverse amd64 Packages [25.7 kB] 
Get:23 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/multiverse i386 Packages [11.2 kB] 
Get:24 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/multiverse Translation-en [6,088 B] 
Get:25 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/main Sources [10.5 kB] 
Get:26 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/universe Sources [6,600 B] 
Get:27 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/main i386 Packages [53.3 kB] 
Get:28 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/main amd64 Packages [53.3 kB] 
Get:29 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/main Translation-en [14.6 kB] 
Get:30 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/universe i386 Packages [18.1 kB] 
Get:31 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/universe amd64 Packages [18.1 kB] 
Get:32 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/universe Translation-en [8,668 B] 
Get:33 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/multiverse Sources [10.6 kB] 
Get:34 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/restricted Sources [31.1 kB] 
Get:35 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/universe Sources [309 kB] 
Get:36 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/main Sources [290 kB] 
Get:37 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/main i386 Packages [1,296 kB] 
Get:38 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/main amd64 Packages [2,518 kB] 
Get:39 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/main Translation-en [436 kB] 
Get:40 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/restricted amd64 Packages [1,053 kB] 
Get:41 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/restricted i386 Packages [31.9 kB] 
Get:42 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/restricted Translation-en [146 kB] 
Get:43 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/universe amd64 Packages [1,253 kB] 
Get:44 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/universe i386 Packages [1,047 kB] 
Get:45 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/universe Translation-en [290 kB] 
Get:46 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/multiverse amd64 Packages [19.1 kB] 
Get:47 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/multiverse i386 Packages [6,008 B] 
Get:48 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/multiverse Translation-en [3,908 B] 
Fetched 30.5 MB in 17s (1,792 kB/s) 
Reading package lists... Done

]]>
https://www.lxx1.com/5701/feed 0
2023,新年快乐! https://www.lxx1.com/5693 https://www.lxx1.com/5693#comments Sat, 31 Dec 2022 16:20:38 +0000 https://www.lxx1.com/?p=5693 Continue reading 2023,新年快乐!]]> 再见2022👋👋👋

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 2023,新年快乐! (https://www.lxx1.com/5693)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5693/feed 2
猛然发现树莓派涨价了! https://www.lxx1.com/5673 https://www.lxx1.com/5673#respond Sun, 13 Feb 2022 19:09:41 +0000 https://www.lxx1.com/?p=5673 Continue reading 猛然发现树莓派涨价了!]]> 今天在某鱼上闲逛,猛然发现树莓派都涨价了,二手的树莓派3B+的价格,都已经在400元左右了,相比之前,涨了好多,真理财产品!

看了一下涨价的原因,原来是受全球新冠疫情的影响,芯片产能严重不足,所以导致了树莓派产品的涨价。

不由得感慨,之前买的树莓派,放了好几年以后,再卖竟然还能小赚一笔,不戳不戳!

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 猛然发现树莓派涨价了! (https://www.lxx1.com/5673)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5673/feed 0
Linux 在文件夹的所有文件中查找某字符 https://www.lxx1.com/5615 https://www.lxx1.com/5615#respond Sun, 05 Sep 2021 02:44:43 +0000 https://www.lxx1.com/?p=5615 Continue reading Linux 在文件夹的所有文件中查找某字符]]> 命令:

grep -r -e string directory

eg:

在 /home 目录下的所有文件中查找包含 test 字符串的文件。

 grep -r -e "test" /home/   

示例:

要修改wordpress博客主题的页脚,加入备案号,这时可以博客的文件夹下查找”All Rights Reserved.” ,找到后修改即可!

命令:grep -r -e “All Rights Reserved.” ./

这样就找到了页脚版权所在的地方: ./wp-content/themes/amadeus/functions.php: printf( __( ‘Copyright © 2014 – 2020 , All Rights Reserved. ‘, ‘amadeus’ ), ‘WordPress’ );之后修改即可。

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: Linux 在文件夹的所有文件中查找某字符 (https://www.lxx1.com/5615)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5615/feed 0
用公式来自动校验身份证号码(附excel表格) https://www.lxx1.com/5593 https://www.lxx1.com/5593#respond Wed, 04 Aug 2021 16:42:15 +0000 https://www.lxx1.com/?p=5593 Continue reading 用公式来自动校验身份证号码(附excel表格)]]> 在工作中,经常会碰到身份证号码录入出错的情况,而单位有很多人的身份证号需要核对时,则会很麻烦,这里提供一个可以自动校验身份证号码的公式以及表格,可以方便快速的校对身份证号。

在系统中尤其是在EXCEL中录入身份证号码,出错的可能性很多,如位数不等于18位、号码中数字错误、后3位变为0、员工提供假身份证号码、身份证号码输入重复等,我们可以从多个方面来验证输入的号码是否规范,如长度是否为18位、是否输入的文本格式、是否输入重复等。

在EXCEL中,我们可以采用一种通用的方法来避免前述各种错误的产生,这种方法是从身份证号码的编辑规则入手,对输入的身份证号码进行判断,如果错误则不允许输入。

校验码和其计算方法

身份证号码第18位为校验码,它主要是来验证前17位数字输入的是否正确,它的取值范围为0至10,当为10的时候用X来表示。校验码的计算方法如下:

1.将前面的身份证号码17位数分别乘以不同的系数,从第1位到第17位的系数分别为:7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2。

2.将这17位数字和系数相乘的结果相加,然后除以11,余数只可能有0、1、2、3、4、5、6、7、8、9、10这11个数字。其分别对应的最后一位身份证的号码为1、0、X 、9、8、7、6、5、4、3、2 (即余数0对应1,余数1对应0,余数2对应X……) 。

根据校验码的计算方法,如果身份证号码位数不对、一不小心把数字输错、后3位全为0甚至输入其它内容的时候,通过数据验证都可以进行错误提醒。

公式如下:

=IF(VLOOKUP(MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*{7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2}),11),{0,1;1,0;2,”X”;3,9;4,8;5,7;6,6;7,5;8,4;9,3;10,2},2,0)&””=RIGHT(A2,1),”合法“,”不合法“)

公式解析:

这是多个函数的嵌套公式,其中的思想就是和前面讲的验证方法一致,以B2单元格公式为例。

ROW($1:$17)是生成1到17的数字,生成1列17行的数组{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17}。

MID(A2,ROW($1:$17),1)是依次提取身份证号码前17个数字,生成1列17行的数组,结果为{“1″;”3″;”0″;”1″;”8″;”2″;”1″;”9″;”8″;”6″;”0″;”2″;”1″;”5″;”5″;”0″;”3″}。

SUMPRODUCT(MID(A2,ROW($1:$17),1)*{7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2})是将身份证号前17位分别与对应的系数相乘,然后相加得出结果,结果为287。

MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*{7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2}),11)是对SUMPRODUCT公式的结果(287)除以11求余,结果为1。

VLOOKUP(MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*{7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2}),11),{0,1;1,0;2,”X”;3,9;4,8;5,7;6,6;7,5;8,4;9,3;10,2},2,0)&””可以视为VLOOKUP(1,{0,1;1,0;2,”X”;3,9;4,8;5,7;6,6;7,5;8,4;9,3;10,2},2,0),这个是VLOOKUP的基础用法,第二个参数是2列11行的数组,用连接符“&”连接””是为了将结果转换为文本格式,结果为0。

然后我们用IF函数嵌套,通过与身份证号码最后一位对比,RIGHT(A2,1)是提取身份证号码最后1位数字,如果相等,代表身份证号码合法,否则是不合法。

excel表格下载

该表格可以自动校验身份证号码,而且以不同的颜色显示身份证号是否正确。

点击下载:身份证号码校验excel表格

示例:

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 用公式来自动校验身份证号码(附excel表格) (https://www.lxx1.com/5593)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5593/feed 0
解决短链接服务YOURLS跳转403错误 https://www.lxx1.com/5575 https://www.lxx1.com/5575#respond Fri, 25 Jun 2021 08:34:22 +0000 https://www.lxx1.com/?p=5575 Continue reading 解决短链接服务YOURLS跳转403错误]]> 今天发现YOURLS短网址无法跳转,会出现403错误,排查一番终于找到了问题所在,并顺利解决,以下是解决方法。

首先介绍下,YOURLS (Your?Own?URL?Shortener) 是一款开源的PHP程序,让你可以轻松建立属于自己的短网址生成系统。而无需第三方平台你就可以获得所有的数据统计,并且支持一系列插件扩展。

在输入短网址进行跳转,发现总是403错误,可能是短网址网站的伪静态 nginx Rewrite 设置有问题。重新设置nginx Rewrite 即可,伪静态代码如下:

try_files $uri $uri/ @rewrite;
location @rewrite {
rewrite ^/([\w-]+\+?)/?$ /yourls-loader.php?id=$1 last;
}

设置好伪静态后,保存,再次用短网址跳转,已经可以顺利跳转了,403问题解决!

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 解决短链接服务YOURLS跳转403错误 (https://www.lxx1.com/5575)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5575/feed 0
解决博客Error establishing a database connection错误 https://www.lxx1.com/5545 https://www.lxx1.com/5545#comments Thu, 10 Jun 2021 13:07:34 +0000 https://www.lxx1.com/?p=5545 Continue reading 解决博客Error establishing a database connection错误]]> WordPress博客出现“Error establishing a database connection”错误,翻译过来就是“建立数据库连接时出错”,这个故障导致博客无法访问,以下是对Error establishing a database connection错误的解决办法。

首先要说的是,这个问题肯定是因为数据库引起的,我们先看一下博客的数据库配置是不是有问题,如果配置有问题也会出现这个问题。

确认数据库配置没有问题,我进数据库后,把整个博客的数据库表修复了一次。

数据库表修复完毕

修复后再次打开博客,竟然好了!

博客网站恢复正常访问!

 

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 解决博客Error establishing a database connection错误 (https://www.lxx1.com/5545)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5545/feed 1
在树莓派上安装 Django https://www.lxx1.com/5531 https://www.lxx1.com/5531#respond Thu, 10 Jun 2021 07:38:29 +0000 https://www.lxx1.com/?p=5531 Continue reading 在树莓派上安装 Django]]> Django是一个基于 Python 的 Web 框架,旨在具有高度的可扩展性.它的最终目标是允许使用更少的代码快速编写 Web 应用程序。

开源和免费使 Django 框架成为想要使用 Python 语言构建 Web 应用程序的人的绝佳选择。

通过遵循本指南,您将学习如何从 Raspberry Pi 运行 Django Web 应用程序。

为了让 Django 在你的树莓派上运行,我们需要安装 Apache 和 Python。

为 Raspberry Pi 上的 Django 做准备

在我们的 Raspberry Pi 上安装 Django 之前,我们需要为框架做好准备。

我们需要为 Django 设置两个关键组件,即 Apache 和 Python。

为 Django 设置 Apache2

在本节中,您将快速启动并在我们的 Raspberry Pi 上运行 Apache,以便我们可以使用 Django 软件。

我们将需要对我们的配置文件进行一些更改,但现在,让我们安装 Apache。

1.您的第一项任务是设置Apache 网络服务器并将其安装到您的 Raspberry Pi。

我们的指南将引导您完成启动和运行 Apache 软件的简单步骤。

您不必担心设置 PHP

2. 除了 Apache 的基本版本,我们还需要安装一些额外的包,以便 Apache 可以与 Python 对话。

我们可以通过在你的树莓派上运行以下命令来安装相关的包

sudo apt install libapache2-mod-wsgi-py3

此命令将安装用于与 Python 3 交互的 Web 服务器网关接口 (WSGI)。

为 Django 设置 Python 3

我们的下一步是在我们的 Raspberry Pi 上为 Django 安装和配置 Python 3。

这样做的原因是 Django 框架使用 Python 编程语言运行。

1. 让我们从安装 Python 3 和所有必需的依赖项开始。

我们将通过运行以下命令来安装 Python、它的包管理器和它的虚拟环境软件。

sudo apt install python3 python3-venv python3-pip

为 Django 配置 Apache

将 Apache 和 Python 软件安装到我们的 Raspberry Pi 后,现在让我们将其全部配置为运行 Django。

这个配置还不能正常工作,因为我们仍然需要安装 Django。

1. 让我们从修改 Apache 的默认配置文件开始。

您可以通过运行以下命令使用 nano编辑此文件。

sudo nano /etc/apache2/sites-enabled/000-default.conf

2. 在这个文件中,我们需要添加一些行来告诉 Apache 它应该如何处理我们的文件。

在这种情况下,我们将告诉它使用 Python 来解释目录中的文件。

首先在文件中找到以下文本

</VirtualHost>

找到该行后,在其上方添加以下文本。

这些行用于设置我们的脚本将存储在哪里以及它将如何执行。

  Alias /static /home/pi/pidjango/static
    <Directory /home/pi/pidjango/static>
        Require all granted
    </Directory>

    <Directory /home/pi/pidjango/pidjango>
        <Files wsgi.py>
            Require all granted
        </Files>
    </Directory>

    WSGIDaemonProcess django python-path=/home/pi/pidjango python-home=/home/pi/pidjango/djenv
    WSGIProcessGroup django
    WSGIScriptAlias / /home/pi/pidjango/pidjango/wsgi.py

在此示例中,我们将假设一个名为“ django”的应用程序将存储在/home/pi/pidjango我们的 Raspberry Pi 上的文件夹“ ”中。

我们还将 Python 的 home 设置为我们虚拟环境的位置,该位置最终将存储在“ /home/pi/pidjango/djenv”目录中。

3.输入详细信息后,您可以通过按CTRLXY、 最后按ENTER键来保存文件。

4. 为了使我们的配置更改生效,我们需要重新启动 Apache Web 服务。

我们可以通过运行以下命令来使用服务管理器重新启动 Apache 来实现。

sudo systemctl restart apache2

安装和运行一个新的 Django 网站

现在我们已经设置好 Apache 在我们的树莓派上运行 Django,我们现在可以安装我们需要的软件。

设置 Django 需要我们做几个不同的步骤,比如为项目创建一个文件夹。

我们还将使用 Python 虚拟环境。虚拟环境将允许我们专门为该环境安装 Python 包。

为 Django 设置文件夹

让我们为我们设置一些文件夹以将 Django 框架保存在我们的 Raspberry Pi 上

1. 让我们创建一个目录,用于存储我们的 Django 脚本和 Python 虚拟环境。

在本教程中,我们将在我们的主目录中名为“ pidjango”的文件夹中创建它。

我们还将使用以下命令切换到我们新创建的目录

mkdir -p /home/pi/pidjango/static
cd /home/pi/pidjango

2. 在此目录中,我们可以从创建新的 Python 虚拟环境开始。

python3 -m venv djenv

运行此命令后,您现在应该env在我们创建的 Django 目录中拥有一个名为“ ”的文件夹。

当我们安装 Django 和任何其他 Python 包时,它们将在使用该虚拟环境时存储在此文件夹中。

在树莓派上安装 Django

现在我们所有的文件夹都设置好了,我们的 Python 虚拟环境准备好了,我们终于可以安装 Django 了。

在接下来的几个步骤结束时,您应该在虚拟环境中安装了 Django 并启动了一个新项目。

1. 创建虚拟环境后,我们需要将其用作源。

要使用虚拟环境作为源,您需要运行以下命令。

source djenv/bin/activate

运行此命令后,您应该会(djenv)在命令行的开头看到“ ”。这表明您正在使用我们的新虚拟环境作为源。

2. 现在我们在我们的虚拟环境中,让我们安装 Django 框架。

由于 Django 以 Python 包的形式提供,让我们运行以下命令来下载它。

python3 -m pip install django

运行此命令将允许您下载 Django 的最新可用版本。

如果要下载特定版本的框架,请添加==后跟版本号。

3. 安装 Django 后,我们现在可以创建一个全新的项目。

我们可以运行以下命令,文本的最后一位是项目名称。

django-admin startproject pidjango .

这将创建开始使用 Django 所需的所有文件,并允许我们验证我们是否正确设置了它。

允许访问您的 Raspberry Pi Django 服务器

在我们可以访问 Raspberry Pi 上新设置的 Django 框架之前,我们需要修改其设置。

默认情况下,Django 设置为不允许任何访问,除非该特定 IP 或主机名已添加到允许列表中。

1.要允许通过Raspberry Pi 的 IP 地址进行访问,我们需要检索它。

您可以使用以下命令获取设备的本地 IP 地址。

hostname -I

2.让我们编辑设置文件。这些设置存储在名为“ settings.py”的 python 文件中。

我们可以通过运行以下命令使用nano 文本编辑器开始编辑文件。

nano /home/pi/pidjango/pidjango/settings.py

3. 在此文件中,您需要找到以下行并稍作修改。

找到以下行。

ALLOWED_HOSTS = []

替换为以下内容。

ALLOWED_HOSTS = ["YOURIPADDRESS"]

确保将“ YOURIPADDRESS”替换为 Raspberry Pi 的 IP 地址。

您可以通过使用逗号分隔每个条目来添加其他 IP 地址或主机名。所有这些值都存储在 Python 数组中。

4.一旦完成,保存按文件CTRLX,然后Y,其次是ENTER关键。

查看您的 Django Web 应用程序

现在我们已经在 Raspberry Pi 上设置了 Django,我们终于可以看到它的运行情况了。

1.在您最喜欢的网络浏览器中,您需要转到以下地址。

https://[YOURPIIPADDRESS]

确保将“ YOURIPADDRESS”替换为 Raspberry Pi 的 IP 地址。

2. 转到 IP 地址后,您应该会看到 Django 欢迎屏幕。

此屏幕表明您已成功在 Raspberry Pi 上运行 Django 框架。

您现在可以继续编写您的 Django 应用程序。Django官方网站提供了一个可靠的教程来帮助您入门。

结论

此时,您应该在 Raspberry Pi 上安装了 Django 框架。

您还应该设置 Apache,以便它可以主动为您的 Django 网站提供服务。

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 在树莓派上安装 Django (https://www.lxx1.com/5531)

如果博客对您有帮助,请给我 赞助


]]>
https://www.lxx1.com/5531/feed 0