Hexo 一个开源的博客框架,本文记录了一下在树莓派上搭建 Hexo 博客的过程。
上一篇介绍了 Hexo 的配置,现在网站已经能在本地访问了,也能通过 hexo generate
命令生成静态界面
当然,为了让别人可以访问到我们的站点,pi 还需要一个 Web 服务器,这边呢就选择 nginx。
同时把静态页面上传到我们的 pi 还需要在 pi 上安装 ftp 服务器,这里就选择 vsftpd。
一、安装与配置 nginx
直接通过镜像源安装,输入一下命令 nginx version: nginx/1.2.1
:
sudo apt-get install nginx
安装很快就完成了,首先我们来测试配置文件准确性( nginx 自带):
pi@raspberrypi:~/blog $ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
然后就启动 nginx(注意要使用 sudo,Linux 只有 root 用户可以使用 1024 以下的端口)
sudo nginx
浏览器输入树莓派的 IP 地址:192.168.0.202,出现下面页面就成功啦!
接下来就对 nginx 进行一些配置,nginx 默认配置文件路径为 /etc/nginx/sites-available/default
- 配置网页文件夹路径
在配置文件中我们看到默认网页路径被设置为:
/usr/share/nginx/www
把这段内容修改为我们自己的静态页面文件夹,修改为如下:
/home/pi/lo_www
配置Nginx 支持 python 脚本
- 最后记住下面两个命令,就可以自由地控制 nginx 了:
sudo nginx -s stop # 快速关闭nginx
sudo nginx -s reload # 重载配置文件
二、安装与配置 vsftpd
输入如下命令安装 ftp 服务:
sudo apt-get install vsftpd
此时系统将自动创建 ftp 用户和 ftp 组,并建立 "/srv/ftp" 文件夹作为 ftp 用户的 HOME 目录。(如果想把FTP的目录放在 "/home/ftp",可修改 "/etc/passwd" 文件中 ftp 用户的 HOME 目录位置。)
修改下面的文件配置 ftp:
sudo vim /etc/vsftpd.conf
由于服务器只有我一个人使用和维护,所以不需要建立 vsftpd 虚拟用户,直接使用系统帐户登录(即SSH登录名密码来登录)FTP,那么配置文件中只需要开启如下几项即可。
listen=YES
# 关闭匿名访问
anonymous_enable=NO
# 允许本地账号登陆和写:
local_enable=YES
write_enable=YES
local_umask=022
local_root=/var/www
max_clients=3
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
idle_session_timeout=600
data_connection_timeout=120
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
其余配置参数全部用 “#” 注释掉,值得一提的是上述:
local_root=/var/www
max_clients=3
是原配置文件中没有,我额外添加的两项,第一项是将 FTP 客户端登录固定到 /var/www 目录,第二项是客户端连接最大数。
最后记住以下几个命令:
sudo /etc/init.d/vsftpd stop # 关闭ftp
sudo /etc/init.d/vsftpd restart # 启动ftp
使用 FileZilla 去连接的时候出现错误:** vsftpd 不安全的服务器,不支持 FTP over TLS。**
解决办法:在 FileZilla 中配置不使用 TLS:
接下来就可以把我们的静态文件上传到树莓派服务器啦~
欢迎浏览本网站~