树莓派搭建Typecho博客

时区设定为上海:timedatectl set-timezone Asia/Shanghai
配置程序:raspi-config

启用root账户

树莓派默认账户是:pi,默认密码:raspberry。为了使用的方便,我喜欢使用root账户登录。
IPv6已经开始普及,树莓派分配到IPv6地址的话,就直接暴露在公网上面了。出于安全的考虑,修改ssh配置为只能内网登录。

#切换到root账户
sudo -i

#设置root账户的密码
passwd

#修改ssh配置,使root账户只能在局域网内登录
echo "Port 22
ListenAddress 0.0.0.0
PermitRootLogin yes" >> /etc/ssh/sshd_config

#重启ssh服务
service ssh restart

设置静态IP

最方便的方法就在直接在路由器上绑定静态IP,但是我的路由器是电信的光猫,没有这个功能。只能在树莓派上设置静态IP了。

#备份配置文件
cp /etc/dhcpcd.conf /etc/dhcpcd.conf.backup

#有线网卡设为静态ip,把ip改为自己需要的数字,重启后生效。
echo "interface eth0
static ip_address=192.168.1.2/24
static routers=192.168.1.1
static domain_name_servers=240c::6666 223.5.5.5" >> /etc/dhcpcd.conf

启动BBR TCP网络优化

modprobe tcp_bbr
echo "tcp_bbr" >> /etc/modules-load.d/modules.conf
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
sysctl net.ipv4.tcp_available_congestion_control
sysctl net.ipv4.tcp_congestion_control

修改命令提示符颜色

echo 'PS1="\[\e[32m\]#\##\[\e[1;31m\]\u@\[\e[36m\]\h \w]\$\[\e[m\]"' >> ~/.bashrc
source ~/.profile

修改apt源到国内CDN

echo "deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib
#deb-src http://raspbian.raspberrypi.org/raspbian/ stretch main contrib non-free rpi" > /etc/apt/sources.list
apt update
apt upgrade -y

PHP环境

#安装PHP7和必要的软件
apt-get install git curl tree php7.0-cgi php7.0-fpm php7.0-curl php7.0-gd php7.0-mbstring php7.0-xml php7.0-mysql -y

#打开配置文件,找到下列选项进行修改
vim /etc/php/7.0/fpm/php.ini

#每个脚本运行的最长时间,单位秒,0为无限
max_execution_time = 0

#每个脚本可以消耗的时间,单位也是秒
max_input_time = 300

#脚本运行最大消耗的内存
memory_limit = 256M

#表单提交最大数据为 8M,针对整个表单的提交数据进行限制的
post_max_size = 20M

#上载文件的最大许可大小
upload_max_filesize = 100M

Caddy

#安装caddy
curl https://getcaddy.com | bash -s personal

#配置caddy
mkdir /etc/caddy
touch /etc/caddy/Caddyfile

#把bein.ren改为你的网站地址
echo "bein.ren {
    gzip
    tls [email protected]
    root /var/www/typecho
    fastcgi / /run/php/php7.0-fpm.sock php
    rewrite {
        if {path} not_match ^\/admin
        to {path} {path}/ /index.php?{query}
     }
}" > /etc/caddy/Caddyfile

chown -R root:www-data /etc/caddy
mkdir /etc/ssl/caddy
chown -R www-data:root /etc/ssl/caddy
chmod 0770 /etc/ssl/caddy
mkdir /var/www
chmod -R 777 /var/www
chown www-data:www-data /var/www
curl -s  https://raw.githubusercontent.com/mholt/caddy/master/dist/init/linux-systemd/caddy.service  -o /etc/systemd/system/caddy.service
systemctl daemon-reload
systemctl enable caddy.service
systemctl status caddy.service

#caddy的命令
systemctl start caddy.service
systemctl stop caddy.service
systemctl restart caddy.service
systemctl reload caddy.service

Mariadb数据库

#安装mariadb
apt install mariadb-server

#运行数据库
mysql

#在mariadb内创建数据库
CREATE USER 'pi'@'%'IDENTIFIED BY 'raspberry';
GRANT ALL ON *.* TO 'pi'@'%';
flush privileges;
CREATE DATABASE typecho;

#退出数据库按键盘的 Ctrl + D

Typecho

mkdir -p /var/www/
cd /var/www
git clone https://github.com/typecho/typecho.git
chmod 775 /var/www/typecho
chown -R www-data /var/www/typecho

在浏览器里输入自己的网址,开始安装博客。
数据库名typecho,用户名pi,密码raspberry

博客的备份与恢复

#数据库备份
mysqldump -upi -praspberry typecho | gzip > /root/typecho.sql.tar.gz

#数据库导入
gunzip < /home/pi/code/typecho.sql.tar.gz | mysql -upi -praspberry typecho

#typecho文件夹备份
cd /var/www
tar -zcvf /root/typecho.tar.gz typecho

#typecho文件夹恢复
cd /var/www
tar xvzf /root/typecho.tar.gz

你可能感兴趣的:(树莓派搭建Typecho博客)