配置域名访问

    • 假设你已经成功配置并运行好了 Halo,且不是使用 80 端口运行。
    • 请确保域名已经成功解析到服务器 IP,并确认服务器是否需要备案。
    • 请检查服务器的 80 和 443 端口是否开放。
    • 如 3 所述,如果你使用了类似 之类的 Linux 管理面板,可能还需要在面板里设置端口。
    • 并不一定要求按照下列教程操作,这里仅仅以供参考。
    • 如 2 所述,你需要做的仅仅是反向代理 Halo 运行端口,并配置 SSL 证书而已,所以并不要求配置方式。

    配置 Nginx

    1. # 下载 Halo 官方的 Nginx 配置模板
    2. curl -o /etc/nginx/conf.d/halo.conf --create-dirs https://dl.halo.run/config/nginx.conf
    1. # 使用 vim 编辑 halo.conf
    2. vim /etc/nginx/conf.d/halo.conf

    打开之后我们可以看到

    1. server {
    2. listen 80;
    3. server_name example.com www.example.com;
    4. location / {
    5. proxy_set_header HOST $host;
    6. proxy_set_header X-Real-IP $remote_addr;
    7. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    8. proxy_pass http://127.0.0.1:8090/;
    9. }
    10. }

    修改完成之后

    在这里我只演示如果自动申请证书,如果你自己准备了证书,请查阅相关教程。

    1. # 安装 certbot 以及 certbot nginx 插件
    2. sudo yum install certbot python2-certbot-nginx -y
    3. # 执行配置,中途会询问你的邮箱,如实填写即可
    4. sudo certbot --nginx
    5. # 自动续约
    6. sudo certbot renew --dry-run

    在设置了反向代理之后,请一定记得去 halo 的管理端设置一下正确的博客地址,否则会造成资源获取不成功。

    Caddy 是一款使用 语言开发的 Web 服务器。其配置更为简洁,并可以自动申请及配置 SSL 证书(推荐)。

    安装 Caddy

    1. # 安装 Caddy 软件包
    2. yum install caddy -y
    1. # 下载 Halo 官方的 Caddy 配置模板
    2. curl -o /etc/caddy/conf.d/Caddyfile.conf --create-dirs https://dl.halo.run/config/Caddyfile

    下载完成之后,我们还需要对其进行修改。

    打开之后我们可以看到

    1. https://www.simple.com {
    2. gzip
    3. tls [email protected]
    4. proxy / localhost:port {
    5. transparent
    6. }
    7. }
    • 请把 改为自己的域名。
    • localhost:port 请将 port 修改为 Halo 的运行端口,默认为 8090。修改完成之后启动 Caddy 服务即可。
    1. # 开启自启 Caddy 服务
    2. systemctl enable caddy
    3. # 启动 Caddy
    4. service caddy start
    5. # 停止运行 Caddy
    6. service caddy stop
    7. # 重启 Caddy
    8. # 查看 Caddy 运行状态
    9. service caddy status

    进阶设置

    多网址重定向到主网址,比如访问 simple.com 跳转到 www.simple.com 应该怎么做呢?

    1. # 使用 vim 编辑 Caddyfile
    2. vim /etc/caddy/conf.d/Caddyfile.conf

    打开之后我们在原有的基础上添加以下配置

    https://www.simple.com{url} 修改为自己需要的网址就行了,比如我要求访问 ryanc.cc 跳转到 www.ryanc.cc,完整的配置如下:

    1. https://ryanc.cc {
    2. redir https://www.ryanc.cc{url}
    3. }
    4. https://www.ryanc.cc {
    5. gzip
    6. tls
    7. proxy / localhost:8090 {
    8. transparent
    9. }

    最后我们重启 Caddy 即可。

    在设置了反向代理之后,请一定记得去 halo 的管理端设置一下正确的博客地址,否则会造成资源获取不成功。