【网络】博客网站搭建之Typecho(命令版)
前言
本笔记基于命令行实现,想用界面快速搭建的读者可以安装宝塔搭建。
关键字:域名、SSL证书、公网IP、内网穿透、云服务器、nginx、mysql、php、typecho、备案。
友链:李柱明博客
个人博客系统筛选
WordPress、Typecho、Zblog等PHP博客程序:
内网穿透
如果是个人主机或没有公网IP的主机,需要实现内网穿透。
参考:
如果是有固定公网IP,则直接使用公网IP即可。如云服务器。
安装nginx
参考:
安装PHP
安装php7.4
sudo apt-get install php7.4 php7.4-fpm php7.4-mysql php7.4-gd php7.4-mbstring
启动:
sudo service php7.4-fpm start
配置php监听:文件:/etc/php/7.4/fpm/pool.d/www.conf
找到 listen 项,把/run/php/php7.4-fpm.sock 改为 127.0.0.1:6000。(地址和端口随意)
sudo vim /etc/php/7.4/fpm/pool.d/www.conf

重启服务器:
sudo service php7.4-fpm reload
安装mysql
安装mysql:
sudo apt install mysql-server
解决ubuntu下安装mysql使用service无法启动问题:
# 下载mysql
service mysql start
# 更新软件
apt-get upgrade
# 重启mysql
service mysql start
修改mysql用户名和密码:然后后面登录就指定用户和密码进行登录:mysql -u root -p
mysql
# 进入mysql后更改root密码为mynewpassword
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';
exit
创建数据库的mysql命令:
mysql -u root -p
CREATE DATABASE typecho_blog;
exit
查询当前数据库:

Typecho
- Typecho官网:typecho.org
- Typecho GitHub地址:https://github.com/typecho/typecho
Typecho需要的组件:
- PHP5.1 以上
- 支持Mysql, PostgreSQL, SQLite 中的任意一种并在PHP中安装了相关扩展
- CURL或Socket支持
- mbstring或iconv扩展支持
typecho主题推荐:https://www.zhihu.com/question/55808592
joe主题:https://github.com/HaoOuBa/Joe.git
环境安装
基于ubuntu:
参考
ubuntu手动搭建typecho博客:https://blog.csdn.net/diqiudq/article/details/126425003
安装typecho
# 新建目录
mkdir -p /lzm/work/blog_server/typecho
# 进入目录
cd /lzm/work/blog_server/typecho
# 下载源码(可以在typecho官网找到)
wget https://github.com/typecho/typecho/releases/latest/download/typecho.zip
# 解压源码
unzip typecho.zip
# 对整个源码目录赋予足够的权限(根据自己的实际情况赋予权限)
chmod -R 777 /lzm/work/blog_server/typecho
Nginx与PHP进行连接配置&指定博客路径
server {
listen 80;
# 填写自己的监听地址
server_name xxx.com localhost;
root /lzm/work/blog_server/typecho;
index index.php;
location ~ .*\.php(\/.*)*$ {
root /lzm/work/blog_server/typecho;
fastcgi_split_path_info ^(.+?.php)(/.*)$;
fastcgi_pass 127.0.0.1:6000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
验证

填写配置:

如果遇到以下问题,可以检查下数据库的账号和权限。

我们继续:填写第一个用户

安装成功:

配置Typecho
上图中点击下一步,我们来配置下数据库。数据库可以布局在本机,也可以布局在其他设备,本笔记默认全在本机进行
添加皮肤
这里使用joe:
cd /lzm/work/blog_server/typecho/usr/themes
git clone https://github.com/HaoOuBa/Joe.git
进入博客网站控制台,点击更换外观,启用joe:


重新进入网站:

https
当然http是不安全的协议,所以我们需要使用https来访问我们的博客网站。
可以参考nginx https章节。
这里直接给结果:

已经成功启用https了。图中的叹号是我的SSL证书是域名SSL证书,这里用IP访问,浏览器弹出叹号而已。我的域名和网站还在备案中。
【网络】博客网站搭建之Typecho(命令版)的更多相关文章
- Hexo+Github: 博客网站搭建完全教程(看这篇就够了)
本篇教程首次发布在个人博客:sunhwee.com,想要获得最佳阅读体验,欢迎前往,建议用电脑查看教程文档. # 阅读须知 注意,这篇文章篇幅较长,主要针对新手,每一步很详细,所以可能会显得比较啰嗦, ...
- 搭建minima主题的github博客网站
layout: post title: "搭建minima主题的github博客网站" date: 2019-04-20 19:20:20 +0800 --- 作者:吴甜甜 个人博 ...
- Hexo+Github/Coding免费搭建个人博客网站
体验更优排版请移步原文:http://blog.kwin.wang/other/hexo-github-build-blog.html 很早之前就想搭建一个属于自己的博客网站,一方面是给自己做笔记,把 ...
- CentOS 7 yum安装LAMP,LNMP并搭建WordPress个人博客网站
本次实验要进行的是在CentOS7.2,内核版本3.10.0-327.el7.x86_64的环境下搭建LAMP和LNMP,并在此之上做一个WordPress博客网站. [root@Shining ~] ...
- 从零到一快速搭建个人博客网站(域名自动跳转www,二级域名使用)(二)
前言 本篇文章是对上篇文章从零到一快速搭建个人博客网站(域名备案 + https免费证书)(一)的完善,比如域名自动跳转www.二级域名使用等. 域名自动跳转www 这里对上篇域名访问进行优化,首先支 ...
- 阿里云+wordpress搭建个人博客网站【小白专用的图文教程】
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- 阿里云+wordpress搭建个人博客网站
[正文] 在阿里云上搭建使用个人博客主要分为以下几个步骤: 1.购买阿里云ECS主机 2.购买域名 3.申请备案 4.环境配置 5.安装wordpress 6.域名解析 声明一下,本人对服务器端的知识 ...
- 如何搭建个人博客网站(Mac)
一直以为自己记忆力很好,毕业之后才发现,之前需要看一遍就能记住的东西,现在看两三遍才能有印象.而搞技术的,如果不及时的记录下当时的情景,过后很容易就忘记.所以,再次萌生了搭博客.写文章的想法(之前用D ...
- github+hexo搭建自己的博客网站(一)基础入门
github提供的page,hexo提供的静态博客文档,这样可以搭建一个自己的一个博客网站. 使用github pages服务搭建博客的好处有: 全是静态文件,访问速度快: 免费方便,不用花一分钱就可 ...
- Django搭建博客网站(四)
Django搭建博客网站(四) 最后一篇主要讲讲在后台文章编辑加入markdown,已经在文章详情页对markdown的解析. Django搭建博客网站(一) Django搭建博客网站(二) Djan ...
随机推荐
- 避免jquery多次监听事件
jQuery.event.dispatch 事件分发监听源码简单理解是将绑定的事件放入队列后进行监听,如果对一个事件多次绑定(on或者bind),事件会重复添加到队列等待jq监听,这样会导致很大资源消 ...
- 踩坑 Windows 服务来宿主 .NET 程序
本文所指的 .NET 程序为 .NET6 的程序.因为 .NET 的版本更新很快,所以方式.方法也有变化,所以网上搜到的方法有些也过时了.以下是最近我实践下来的一点心得(坑). 上一篇说到 不安装运行 ...
- Postman中的Pre-request Scrip详解
Postman中的Pre-request Scrip详解 一.Pre-request Scrip的简介 1.Pre-request Script是在请求发送之前需要执行的代码片段: 2.请求参数中包含 ...
- 仙人指路,引而不发,Go lang1.18入门精炼教程,由白丁入鸿儒,Golang中New和Make函数的使用背景和区别EP16
Golang只有二十五个系统保留关键字,二十几个系统内置函数,加起来只有五十个左右需要记住的关键字,纵观编程宇宙,无人能出其右.其中还有一些保留关键字属于"锦上添花",什么叫锦上添 ...
- KingbaseES R6 手工创建主备流复制案例
数据库版本: TEST=# select version(); version ---------------------------------------------------------- ...
- KingbaseES R6 集群repmgr witness 手工配置案例
使用见证服务器: 见证服务器是一个正常的KingbaseES实例,不是流复制群集的一部分; 其目的是,如果发生故障转移情况,则提供证明它是主服务器本身不可用的证据,而不是例如在不同物理位置之间的网络分 ...
- Vue3 封装 Element Plus Menu 无限级菜单组件
本文分别使用 SFC(模板方式)和 tsx 方式对 Element Plus el-menu 组件进行二次封装,实现配置化的菜单,有了配置化的菜单,后续便可以根据路由动态渲染菜单. 1 数据结构定义 ...
- Logstash:运用 fingerprint 过滤器处理重复的文档
文章转载自:https://blog.csdn.net/UbuntuTouch/article/details/106639848 背景:Elasticsearch 索引 在介绍重复数据删除解决方案之 ...
- MySQL主从同步报错故障处理记录
从库上记录删除失败,Error_code: 1032 问题描述:在master上删除一条记录,而slave上找不到,导致报错 Last_SQL_Error: Could not execute Del ...
- sql limit函数
select * from <表名> order by <列名> desc limit <第几位数>; select * from villa_info order ...