Windows 部署 typecho(包括部署 PHP 和 Apache)

参考博客:在 Windows 下搭建 Typecho 个人博客

一、部署前的一些注意事项

其实部署这个 typecho 可以很简单,只需要在腾讯云上买一个轻量服务器,在系统上选择宝塔镜像,然后即可直接一键部署 typecho 和 wordpress ,但是我用的是很朴素的 Win Server 所以选择自己手动部署

部署 typecho 参考安装文档,发现需要以下条件:

  1. PHP 5.1 及以上版本(现在已经要求到 7.3 以上了,所以建议下载最新版)
  2. Mysql, PostgreSQL, SQLite 任意一种数据库支持,并在PHP中安装了相关扩展
  3. CURL或者Socket扩展支持
  4. mbstring或者iconv扩展支持

对于 3 我们部署一个 Apache 就可以了(报错了再上网搜解决方案吧)
对于 4 我们稍后在 php 扩展里面操作

那么我们流程就很简单了

  1. 部署 MySQL
  2. 部署 PHP 最新版本
  3. 在 PHP 中引入 MySQL 等扩展
  4. 部署 Apache
  5. 在 Apache 中引入 PHP,然后测试

二、开始部署

1、部署 MySQL

请参考我以前的博客(暂时没放链接,自己搜索一下吧)

给 typecho 创建一个 database 备用,语句不展示。


2、部署 PHP

首先访问PHP官方下载页面https://windows.php.net/download/,然后找到VS16 x64 Thread Safe(下载线程安全版本,不要下载那个线程不安全版本)下的 zip 下载

点击直接下载zip链接

然后选择安装目录,解压,就算安装完成


3、在 PHP 中引入 MySQL 扩展

把文件夹里的 php.ini-development 复制一份改名叫 php.ini

文本操作小贴士:
Ctrl + G 转到对应行,假如发现对应行不对,或者找不到关键字的话,Ctrl + F 查找关键字

编辑 php.ini 文件:(分号是注释语法,取消分号是取消注释的意思)

第 763 行: ;extension_dir (扩展目录)删除分号,取消注释,开启扩展目录,ext 换成你 php 目录下 ext 目录的绝对路径(ps:如果不是这一行而是自己找的话,切记这个 ;extension_dir 是在 on windows 语句下的哪个,而不是其他的,因为 php.ini 里有很多 ;extension_dir)

第 916 行:;extension=curl 删除分号,取消注释,打开 curl 扩展

第 926 行 ;extension=mbstring 删除分号,取消注释,打开 mbstring 扩展

第 934 行 ;extension=pdo_mysql 删除分号,取消注释,打开 Pdo 驱动 MySQL 扩展(这里必须选用 Pdo 驱动的 MySQL 扩展,因为 Typecho 只支持 Pdo 驱动的 MySQL)

是否配置成功我们稍后验证


4、部署 Apache

Apache 下载页面
根据自己的系统选择 x32 还是 x64 ,然后下载对应的 zip 就行
Apache-win-64-zip 直接下载地址

网上还查到说启动 Apache 服务需要 VC redist ,我不是很懂,不过还是下载了,这两个都需要下载
下载页面 https://docs.microsoft.com/zh-cn/cpp/windows/latest-supported-vc-redist?view=msvc-170
点击下载 x32 VC-redist
点击下载 x64 VC-redist
两个下载好之后直接运行安装就行

选择(或者新建一个)安装目录开始解压,添加环境变量(经典流程)

然后开始配置 Apache ,找到 Apache 安装目录下 conf 目录下的 httpd.conf 文件

第 37 行 Define SRVROOT ,把后面的 “c:\Apache24” 改为你 Apache 目录的绝对路径

第 227 行,把 ServerName 前面的 # 号删掉取消注释

第 285 行,在 DirectoryIndex index.html 后面加上 index.htm index.php

保存,退出,以管理原身份打开 cmd 输入以下 Dos 指令开始将 Apache 添加至服务(服务名 Apache24 )

httpd -k install -n "Apache24"

假如显示找不到指定命令的话就打开 Apache 的 bin 目录(可执行目录)再用 cmd 执行命令就行

在浏览器里输入 localhost,屏幕输出 It works 就说明成功了!

(ps:Apache 默认端口 80,访问时可以不指定)

关于安装过程出现 bug 或者 Apache24 重启动失败怎么解决的思路
在 Apache 的 bin 目录里打开 cmd 运行 httpd 可以在控制台看到报错信息,然后百度就行


5、在 Apache 中引入 php 扩展

再次打开 Apache 目录下 conf 目录下的 httpd.conf 文件,输入以下内容:

LoadModule php_module 你PHP目录绝对路径\php8apache2_4.dll
PHPIniDir "你PHP目录绝对路径"
AddType application/x-httpd-php .php .phtml

(当然,你也可以自己找到这些关键字所在的位置取消注释后自己写)

保存,退出,win+r,输入 services.msc 打开系统服务,点击 Apache24,点击重启动

在 Apache 目录下的 htdocs 文件夹下新建一个 test.php 文件,文件内容为,浏览器地址栏输入 localhost/test.php,出现 php 信息界面就成功了,然后注意页面里面能否看到 pdo_mysql 一栏的信息,表示为 php 的 MySQL 扩展是否安装成功

安装 typecho 大功告成

下载页面

点击直接下载 typecho

把压缩包里的文件解压到Apache 目录下的 htdocs 文件夹 里,(假如有其他项目的话就新建一个文件夹,然后解压),显示安装界面,然后跟着提示一步一步走就可以了。

打开浏览器,输入 localhost,会自动跳转到安装界面,点击“我准备好了,开始下一步”;