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

  1. 配置网页文件夹路径

    在配置文件中我们看到默认网页路径被设置为:
/usr/share/nginx/www

把这段内容修改为我们自己的静态页面文件夹,修改为如下:

/home/pi/lo_www
  1. 配置Nginx 支持 python 脚本

  2. 最后记住下面两个命令,就可以自由地控制 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:

接下来就可以把我们的静态文件上传到树莓派服务器啦~

欢迎浏览本网站~

树莓派搭建 Hexo 博客(二)的更多相关文章

  1. 树莓派搭建 Hexo 博客(一)

    Hexo 一个开源的博客框架,本文记录了一下在树莓派上搭建 Hexo 博客的过程. 什么是 Hexo? Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用 Markdown(或其他渲染引擎)解 ...

  2. 史上最详细“截图”搭建Hexo博客并部署到Github

    http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html 大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hex ...

  3. 史上最详细“截图”搭建Hexo博客——For Windows

    http://angelen.me/2015/01/23/2015-01-23-%E5%8F%B2%E4%B8%8A%E6%9C%80%E8%AF%A6%E7%BB%86%E2%80%9C%E6%88 ...

  4. 阿里云VPS搭建Hexo博客

    最近买了一个阿里云服务器,准备写自己的网站,和将自己的作品放在上面:开始的时候,感觉就一个服务器应该很简单,但是从申请域名到备案,再到服务器搭建,没想到一波三折:闲话不多说,只是记录我在搭建时,最简单 ...

  5. 在vps上搭建hexo博客

    最近更换了服务器,需要把自己的Hexo Next重新部署到新服务器上,本文记录一下在vps上搭建hexo博客的过程. 在vps上搭建hexo博客需要下面这些工具: Nginx: 用于博客展示 SSH: ...

  6. 利用Serverless应用搭建Hexo博客

    本文将介绍如何使用火爆的Serverless应用,15分钟快速搭建Hexo博客.以腾讯云提供的Serverless应用–云开发为例: 步骤1:安装 CloudBase CLI 以及本地部署 Hexo ...

  7. 搭建hexo博客遇到的问题

    搭建hexo博客遇到的问题 常用命令 hexo clean 清除hexo缓存 hexo generate 生成文章 hexo deploy 部署 hexo new post name 新建文章名 he ...

  8. Termux搭建hexo博客并部署到GitHub

    Termux搭建hexo博客并部署到GitHub 安装 termux-change-repo apt update apt install git && nodejs &&am ...

  9. [Node.js] 3、搭建hexo博客

      一.安装新版本的nodejs和npm 安装n模块: npm install -g n 升级node.js到最新稳定版 n stable   二.安装hexo note: 参考github,不要去其 ...

随机推荐

  1. AngularJS 控制器函数

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  2. linux上部署redis实现与Python上的redis交互(有坑)

    1.概念 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件 2.linux安装redis 2.1yum源安装redis(不推荐) #前提得配置好阿里 ...

  3. toad安装错误—Failed to Download products and updates

    近日,在公司云电脑上安装Toad for oracle,安装到中途总会出现如下错误,个人认为是Toad安装时需要下载/更新一些组件,公司网络对下载有所限制,导致报错,无法进行后续安装. 图1.Toad ...

  4. Java入门(一)

    一.语言分类 机器语言 汇编语言 高级语言 二.Java分类 JavaSE 标准版,主要针对桌面应用 JavaEE 企业版,主要针对服务器端的应用 JavaME 微型版,主要针对消费性电子产品的应用 ...

  5. 『ACM C++』PTA浙大 | 基础题 - 打印沙漏

    <数据结构>开课前的一些小作业练习,可能因为一个寒假都没有打C++手生了,整个寒假都在帮拍电影做后期特效,导致这道题居然用了两个钟去AC,深感惭愧,作个标记吧,下面上题. 一首好曲推荐:同 ...

  6. 【解题报告】小白逛公园 vijos

    题目传送门 这道题是一道线段树的一个求一个连续最大字段和是一个区间线段树一个很妙妙的操作,这里后面我们后面就会提到,因为今天博主没有时间了所以先粘一篇代码供大家参考,其实代码理解还是非常的简单的. 代 ...

  7. Python基础——字典和有序字典

    字典 说明: 在 Python 中, 字典 是一系列 键 — 值对 .每个键都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将任何 Pyt ...

  8. Vue 2.0 组件库总结

    UI组件 element - 饿了么出品的Vue2的web UI工具套件 Vux - 基于Vue和WeUI的组件库 mint-ui - Vue 2的移动UI元素 iview - 基于 Vuejs 的开 ...

  9. ELK 分布式日志实战

    一.  ELK 分布式日志实战介绍 此实战方案以 Elk 5.5.2 版本为准,分布式日志将以下图分布进行安装部署以及配置. 当Elk需监控应用日志时,需在应用部署所在的服务器中,安装Filebeat ...

  10. Java应用:经纬度匹配(geohash加密)

    本文采用http://gc.ditu.aliyun.com地址进行经纬度匹配,无数量限制 如果给定经纬度进行geohash加密操作,先解密得到相应gps坐标,具体程序如下所示: import java ...