ubuntu手动搭建typecho博客
Typecho是一个非常轻量化的开源博客程序,发展至今已经比较成熟,但是在部署时也会遇到一些问题。本文将根据Typecho的安装需求,从零开始部署一个完整的typecho博客。
Typecho需要的组件:
1. PHP5.1 以上
2. 支持Mysql, PostgreSQL, SQLite 中的任意一种并在PHP中安装了相关扩展
3. CURL或Socket支持
4. mbstring或iconv扩展支持
1 PHP的安装
1.1 更新源
首先安装一个管理源的工具包
apt-get install software-properties-common
添加Ondřej Surý的PHP源
add-apt-repository ppa:ondrej/php
更新本地系统的源
apt-get update
1.2 安装 PHP7.4
安装PHP7.4,注意需要带上mbstring和mysql。
apt-get install php7.4 php7.4-fpm php7.4-mysql php7.4-gd php7.4-mbstring
安装完成后启动。
service php7.4-fpm start
PHP安装完成之后,并不能直接使用,因为PHP是一个处理页面的工具,并不能处理http请求。所以我们需要安装Nginx做代理。如果想要搭建支持https的博客,建议编译安装带ssl模块的nginx,安装方法可以参考这篇博客。
nginx安装完成以后,我们还需要连接PHP和Nginx,我们既可以通过socks连接,也可以通过端口连接。我自己尝试socks连接出了一些问题,大概于nginx的版本有关,这里有一些相关的讨论。稳妥起见,我们用端口连接PHP和Nginx。
1.3 配置PHP7.4
我们需要更改配置文件,让PHP以端口的方式连接nginx。
nano /etc/php/7.4/fpm/pool.d/www.conf
找到 listen 项,把/run/php/php7.4-fpm.sock 改为 127.0.0.1:9000,并保存文件。
重启PHP服务
service php7.4-fpm reload
此时可以通过 lsof -i:9000 命令查看9000端口的监听情况,如果输出以下信息,说明PHP的配置没有问题。
2 Mysql的安装
ubuntu下安装Mysql非常简单,只需要一行命令:
sudo apt install mysql-server
此时root用户密码为空,我们以root身份进入mysql修改密码,并创建一个用于typecho的数据库:
mysql#进入mysql后更改root密码为mynewpassword
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';#创建一个名为typecho_blog的数据库
CREATE DATABASE typecho_blog;#随后退出mysql
exit
之后要以root身份进入mysql,就需要使用 'mysql -u root -p' 命令了。
3 typecho的部署
在某个你喜欢的地方新建一个目录,我们即将把typecho程序安装在这里(本文演示的目录为/home/typecho)。
#新建目录
mkdir -p /home/typecho
#进入目录
cd /home/typecho
#下载源码(可以在typecho官网找到)
wget https://github.com/typecho/typecho/releases/latest/download/typecho.zip
#解压源码
unzip typecho.zip
#对整个源码目录赋予足够的权限
chmod -R 777 /home/typecho
解压完成后,我们开始配置Nginx。
4 Nginx与PHP的连接、博客的安装
以下是Nginx与PHP连接的一个示例配置,完成配置之后,重启nginx并在浏览器访问你自己的域名。
server {listen 80;server_name abc.com;root /home/typecho/;index index.php;location ~ .*\.php(\/.*)*$ {root /home/typecho/;fastcgi_split_path_info ^(.+?.php)(/.*)$;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}}
点击“下一步”
根据刚才的信息配置数据库
配置完成后,就可以进入博客了。
5 支持https的配置
要让博客支持https,必须满足以下条件:
1. 你的域名有SSL证书
2. Nginx包含了ssl模块
首先,我们来到typecho的后台—设置,将站点地址的http改为https。
接下来,我们进入typecho的安装目录,编辑“config.inc.php”文件,加上这句代码:
define('__TYPECHO_SECURE__',true);
随后,我们也要相应地将nginx的配置文件改为支持ssl的,以下是一个配置文件的示例:
server {listen 443 ssl;server_name abc.com;#注意ssl证书路径,替换成你自己的ssl_certificate /home/ssl_cert/abc.com_bundle.pem;ssl_certificate_key /home/ssl_cert/abc.com.key;ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;root /home/typecho/;index index.php;location ~ .*\.php(\/.*)*$ {root /home/typecho/;fastcgi_split_path_info ^(.+?.php)(/.*)$;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params;}}
重启nginx后再次访问https的网站,可以发现已经变成了安全连接。
现在还有一个问题,如果直接访问域名的话,浏览器一般会默认访问http(80端口),要想强制访问443端口就需要在nginx中设置端口的重定向。这一部分本文就不再赘述,各位自行百度吧~
ubuntu手动搭建typecho博客相关推荐
- 【Microsoft Azure 的1024种玩法】七十一.基于Azure Virtual Machines快速上手搭建Typecho博客系统
[简介] Typecho 是基于 PHP5 构建的开源跨平台博客系统,Typecho开源跨平台博客系统相较于wordpress .hexo有一定的性能优势,是我们记录文章内容的最佳首选博客,那么本篇文 ...
- 手把手教你云服务器如何搭建typecho博客网站(包括配置免费SSL证书)
Typecho是一款轻量级开源博客程序.基于PHP5开发,支持多种数据库,优点是内核强健.扩展方便.体验友好.运行流畅. 轻量应用服务器可以用来构建网站.小程序/小游戏.电商.云盘/图床以及各类开发测 ...
- 基于阿里云服务器使用宝塔面板搭建 Typecho 博客
第一步.搭建环境 小编使用的是阿里云服务器和宝塔面板来搭建环境和管理网站,主要是比较方便. 更详细的基于云服务器安装宝塔面板的安装教程:基于阿里云服务器搭建宝塔面板教程最全详解(图文) 打开 xshe ...
- 群晖如何建php网站_群晖webstation搭建typecho博客
群晖上安装webstation.apache HTTP Server 2.4.PHP7.2.MariaDB 104个套件,启动webstation,设置apache为服务器. SSH进入群晖 ssh ...
- WordPress - 基于 Ubuntu 16.04 搭建个人博客
WordPress - 基于 Ubuntu 16.04 搭建个人博客 购买了腾讯云服务器后, 准备开始搭建个人博客了, 这里根据网上的各种资源整理一下.(终端下进行) 如果是学习的话强烈推荐 基于 U ...
- Typecho博客搭建教程
目录 Typecho博客搭建教程 一.搭建博客前的准备工作 1.购买阿里云轻量应用服务器 2.安装宝塔面板 3.域名 二.Typecho下载及安装 1.下载Typecho: 2.上传网站到服务器 3. ...
- 从购买服务器到搭建WordPress博客详细教程
我的博客原文链接:从购买服务器到搭建WordPress博客详细教程 - Hoyerの小站 〇. 引言 你是否想过搭建一个自己的网站?是否想过随心所欲地设计网站的界面风格?是否想过用自己建的网站赚钱?这 ...
- 使用Hexo搭建个人博客的终极资料
# 一.前言 Hexo 是一个基于 NodeJs 博客框架,可以快速的帮我们搭建一个博客系统,Hexo使用的是Markdown(下文简称MD)解析文章的,在几秒内即可利用靓丽的主体生成静态网页. 推荐 ...
- 开源java博客tale_用Tale快速搭建个人博客
前言 tale是一款简洁美观的java开源博客 tale博客简介 先看效果,这是我用tale搭建的博客,http://verypure.me 我的tale博客 这是tale博客的后台 我的tale博客 ...
最新文章
- Apache Web服务器资源使用限制配置
- Bzoj3060 [Poi2012]Tour de Byteotia
- 开始您的第一个Google App Engine应用
- CSP认证201609-2	火车购票[C++题解]:模拟、vector、排序
- 11-使用NSPersistentContainer搭建CoreData Stack
- Oracle笔记:备份还原
- 新工科背景下大数据专业导论课程的改革与探索
- python编程是啥-Python编程语言的特点是什么?老男孩Python学习
- excel 公式快速填充下拉方法(WPS表格)
- ffmpeg编解码命令(包含YUV编码到常见视频格式文件)
- 服务器虚拟机怎么安装win7系统教程,虚拟机怎么安装win7系统 虚拟机安装win7系统教程...
- matlab 误码曲线,用matlab画误码率曲线
- matlab中fmincon函数求最大值,matlab fmincon函数用法
- HbuilderX中 华为手机 真机调试
- 关于安卓图片剪切造成软件崩溃问题的解决方法
- 蓝桥杯 基础练习 圆的面积
- thinkphp3.2.3 支付宝授权登录php
- 怎么用计算机把浓度转换成PH,ph浓度换算(ph怎么换算OH浓度)
- Latex系列2---段落编写+标题编写+目录生成
- 长平之战后的秦赵又一次决战——邯郸保卫战