Vercel+Railway部署Typecho动态博客

为什么用Vercel?

  1. 快速部署:Vercel是一个serverless平台,可以快速部署各种类型的应用程序,而且无需担心服务器的配置和管理问题。
  2. 自动构建:Vercel支持自动构建,只需要在Github或Gitlab上提交代码,Vercel就会自动构建和部署应用程序。
  3. 免费托管:Vercel提供免费的托管服务,可以免费托管静态网站、单页应用程序和服务器端渲染应用程序,并且没有流量限制。
  4. CDN加速:Vercel使用全球CDN加速,可以提高应用程序的访问速度和稳定性。
  5. 移动端优化:Vercel支持移动端优化,可以自动适配不同的移动设备和屏幕尺寸,让应用程序在移动端展示更加优美。
  6. 支持多种语言和框架:Vercel支持多种编程语言和框架,如React、Vue、Next.js、Gatsby等,可以满足不同开发者的需求。
  7. 安全可靠:Vercel提供了高级的安全功能,如SSL证书、DDoS防护、安全扫描等,可以保障应用程序的安全性和可靠性。

什么是Railway?

Railway是一个基于Docker的云原生应用托管平台,可以让开发者轻松地将应用部署到云端。它支持多种编程语言和框架,如Node.js、Python、Ruby等,同时也支持多种数据库和缓存服务,如MySQL、PostgreSQL、Redis等。开发者可以通过简单的命令行操作,快速部署和管理自己的应用程序。

Railway还提供了一些有用的功能,如自动扩展、自动备份、SSL证书、日志管理等,可以帮助开发者更好地管理和维护自己的应用程序。此外,Railway还提供了一个应用市场,开发者可以在市场中找到各种有用的应用程序和服务,如Wordpress、Ghost、Discourse等,以及各种API服务,如短信、邮件、推送等。

总之,Railway是一个功能强大、易于使用、灵活扩展的云原生应用托管平台,可以帮助开发者更好地构建、部署和管理自己的应用程序。

1、首先基于Railway创建数据库

  • 点击 Start a New Project;
  • 选择 Provision MySQL;
  • 点击Connect 下滑,找到Available Variables,这里就是你数据库的信息,复制保存相关信息;

2、配置 Typecho

  • 下载Typecho,点击正式版下载;

  • 解压下载下来的压缩包;
  • 编辑 install.php,定位到第773行至775行,把这3行注释掉(前面加个#);
  • 添加 ****vercel.json
css 复制代码
{
  "functions": {
    "api/index.php": {
      "runtime": "vercel-php@0.5.2"
    }
  },
  "routes": [{ "src": "/(.*)", "dest": "/api/index.php" }]
}
  • 创建 api 目录并在目录下添加 index.php
php 复制代码
<?php
$file= __DIR__ . '/..'.$_SERVER["PHP_SELF"];
if(file_exists($file))
{
   return false;
}
else
{
    require_once __DIR__ . '/../index.php';
}
#echo $_SERVER["PHP_SELF"];
  • 创建 config.inc.php
php 复制代码
<?php
/**
 * Typecho Blog Platform
 *
 * @copyright  Copyright (c) 2008 Typecho team (http://www.typecho.org)
 * @license    GNU General Public License 2.0
 * @version    $Id$
 */
/** 开启https */
define('__TYPECHO_SECURE__',true);
/** 定义根目录 */
define('__TYPECHO_ROOT_DIR__', dirname(__FILE__));
/** 定义插件目录(相对路径) */
define('__TYPECHO_PLUGIN_DIR__', '/usr/plugins');
/** 定义模板目录(相对路径) */
define('__TYPECHO_THEME_DIR__', '/usr/themes');
/** 后台路径(相对路径) */
define('__TYPECHO_ADMIN_DIR__', '/admin/');
/** 设置包含路径 */
@set_include_path(get_include_path() . PATH_SEPARATOR .
__TYPECHO_ROOT_DIR__ . '/var' . PATH_SEPARATOR .
__TYPECHO_ROOT_DIR__ . __TYPECHO_PLUGIN_DIR__);
/** 载入API支持 */
require_once 'Typecho/Common.php';
/** 程序初始化 */
Typecho_Common::init();
/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', 'typecho_');
$db->addServer(array (
  'host' => '数据库地址',
  'user' => '数据库用户名',
  'password' => '数据库密码',
  'charset' => 'utf8mb4',
  'port' => '数据库端口号',
  'database' => '数据库名称',
  'engine' => 'MyISAM',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);

注意,定义数据库参数的位置,就是Railway创建的数据库信息,填入并保存!

3、配置 Vercel

  • 通过 npm 安装 Vercel CLI;

    npm -g install vercel

  • 登录,命令行输入 vc login,选择GitHub;
  • 点开这个链接,如果出现下图,说明登录成功;

接着在命令行输入 vc,按照提示一步步Yes;

  • 现在打开你的Vercel,你会发现刚刚创建的项目已经出现了;

4、绑定域名

因为Vercel 部署分配的子域名被墙了,所以需要绑定我们自己的域名

  • 点击 View Domains;
  • 打开你的域名管理后台:DNS 解析 DNSPod,例如我是腾讯云购买的域名,输入主机记录=Name;记录类型=Type;记录值=Value;最后点击保存;
  • 接下来返回Vercel ,你会发现,已经配置成功,点击打开分配的地址:typecho.lihail.cn
  • 如果地址中出现下面的界面,说明部署成功了;

5、安装 Typecho

  • 确认安装,设置用户名密码,继续安装;
  • 到这里就说明已经安装成功,点击进入后台页面和博客页面,就可以开始写你的博客了;

默认主题不是很好看,可以在主题模板选择自己的主题进行安装。

以上内容详细介绍了如何利用Vercel和Railway两个云平台来部署Typecho动态博客,让您的博客更加高效和稳定。通过使用Vercel的自动部署功能,您可以轻松地将博客代码上传到Vercel的服务器上,实现自动更新和快速部署。而Railway则提供了强大的数据存储和管理功能,让您的博客数据更加安全可靠。通过这种方式,您可以快速构建一个具有高性能和可靠性的博客平台,为读者提供更好的阅读体验。

相关推荐
小_太_阳3 分钟前
Scala_【2】变量和数据类型
开发语言·后端·scala·intellij-idea
胡西风_foxww6 分钟前
【es6复习笔记】rest参数(7)
前端·笔记·es6·参数·rest
直裾6 分钟前
scala借阅图书保存记录(三)
开发语言·后端·scala
m0_748254887 分钟前
vue+elementui实现下拉表格多选+搜索+分页+回显+全选2.0
前端·vue.js·elementui
星就前端叭1 小时前
【开源】一款基于Vue3 + WebRTC + Node + SRS + FFmpeg搭建的直播间项目
前端·后端·开源·webrtc
m0_748234521 小时前
前端Vue3字体优化三部曲(webFont、font-spider、spa-font-spider-webpack-plugin)
前端·webpack·node.js
Web阿成1 小时前
3.学习webpack配置 尝试打包ts文件
前端·学习·webpack·typescript
噢,我明白了1 小时前
同源策略:为什么XMLHttpRequest不能跨域请求资源?
javascript·跨域
sanguine__2 小时前
APIs-day2
javascript·css·css3
小林coding2 小时前
阿里云 Java 后端一面,什么难度?
java·后端·mysql·spring·阿里云