---
# System prepended metadata

title: 实验室主页搭建

---

实验室主页搭建
===

## 安装hexo

```
$ wget -qO- https://raw.github.com/creationix/nvm/v0.33.11/install.sh | sh
```

第一次如果执行失败，再执行一次
执行完成后，设置了相关环境变量，Ubuntu系统可在`.profile`文件中看到
![](https://i.imgur.com/EK9ZPWU.png)


重启终端并执行下列命令即可安装 Node.js

```
$ nvm install stable
```

安装hexo
```
npm install -g hexo-cli
```

## 安装caddy

注：放实验室主页的服务器上，我就是这种方法安装caddy的。
但过了一个礼拜后，这种方法已经失败了。
**现在服务器的caddy还是旧版本。**

caddy v2安装参考（自己尝试过，安装成功后，使用有点问题。）
https://tophat.top/posts/98b102d8.html
https://caddyserver.com/download

https://dengxiaolong.com/caddy/zh/example.basicauthproxy.html
https://blog.csdn.net/u011300968/article/details/77968049


旧版本安装：
```
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
```

```
启动：/etc/init.d/caddy start
停止：/etc/init.d/caddy stop
重启：/etc/init.d/caddy restart
查看状态：/etc/init.d/caddy status
查看Caddy启动日志：tail -f /tmp/caddy.log
安装目录：/usr/local/caddy
Caddy配置文件位置：/usr/local/caddy/Caddyfile    # 如果没有，自行创建
Caddy自动申请SSL证书位置：/.caddy/acme/acme-v01.api.letsencrypt.org/sites/xxx.xxx(域名)/
```

`/usr/local/caddy/Caddyfile`文件内容

```
www.csuaurora.org {
    root /root/git/AuroraLab/public/
    tls {
        dns cloudflare
    }
    gzip
}

wiki.csuaurora.org {
    root /root/git/AuroraWiki/public/
    tls {
        dns cloudflare
    }
    gzip
}
```

## 使用CloudFront 的CDN

使用CDN后，如果要添加解析域名，就在CF里添加

我的CF的DNS服务器

```
mitch.ns.cloudflare.com
sierra.ns.cloudflare.com
```

## 证书

caddy自带证书，但是会和CloudFront相冲突，所以直接使用CloudFront的证书
https://melty.land/blog/caddy-and-cloudflare

`/usr/local/caddy/Caddyfile`文件就配置好了使用cloudflare的证书
CLOUDFLARE_EMAIL 和 CLOUDFLARE_API_KEY 环境变量设置在`~/.profile`

安装新插件

`~/caddy_install.sh install tls.dns.cloudflare`

![](https://i.imgur.com/oyPHvP8.png)

修改过后，重启caddy