一、关于 typecho
Typecho 是一个基于 PHP 的简洁的开源博客程序。它使用多种数据库(MySQL,PostgreSQL,SQLite)储存数据,在 GNU GPLv2 许可证下发行。Typecho 的前身是开源博客程序 Magike,由 Typecho 项目的发起人 JoyQi (70) 开发。该团队的最初形成,是在 wordcamp china 的活动上,后来有更多成员加入了这个项目,之后改名为 Typecho。这个名字来源于团队内部的头脑风暴:Type,有打字的意思;Echo,意思是回声、反馈、共鸣,也是 PHP 里最常见、最重要的函数。将这两个词合并在一起,就有了 Typecho。
二、搭建 typecho
2.1、重装系统
LNMP
是 Linux+Nginx+MySql+PHP
的简称,安装 LNMP 的步骤比较冗长。可以通过腾讯云云市场中的 PHP 全能运行环境镜像来进行搭建。
2.2、默认账号密码
进入服务器,发现该镜像已经帮你搭建好了 Typecho 所需的运行环境,需要查看默认密码即可使用相关软件。
cat default.pass
如下:
[root@VM-0-9-centos ~]# cat default.pass
+----------------------------------------------------------------------
| KZYJS [ EASY CLOUD EASY WEBSITE]
+----------------------------------------------------------------------
| Copyright (c) 2018 kzyjs All rights reserved.
+----------------------------------------------------------------------
MySQL root password: LhzwcRsj85WT
MySQL database name: a8Uzy3hg
MySQL user: a8Uzy3hg
MySQL password: atNUkf3z4v68
FTP account: www
FTP password: HL7BBn3eP2fN
三、部署 typecho
3.1、下载 & 上传
下载 Typecho 的安装文件了。目前最新的稳定版为 1.1 (17.10.30),推荐安装这个版本。
上传 tar 包,解压 build 文件的内容至:/yjdata/www/www
路径下。
3.2、新建数据库
在安装 typecho 之前,需要新建一个名为 typecho 的数据库,以便能够正常安装 typecho。使用的这个镜像已经安装好了 phpMyAdmin 管理工具,只需要访问 http:// 你的服务器 IP 地址 /phpmyadmin/index.php 即可。
点击左侧新建按钮,然后填入 typecho。当然,这里的名字可以自定义,本文为了方便管理,在这里填入 typecho。
3.3、安装 typecho
访问 http:// 你的服务器 IP 地址 /install.php
页面,会看到系统已经准备好,可以开始下一步安装。
填写数据库 / 站点信息。
创建管理员账号。
正常情况下,系统将提示你安装成功!
可以看到首页了。
通过访问 http:// 你的服务器 IP/admin/
访问后台页面。
四、其他问题
4.1、访问 404
可能因为一些原因访问页面或者后台时 404。这是因为 Nginx 没有加载伪静态,需要在 Nginx 配置中设置伪静态。修改 nginx 配置文件:/usr/local/nginx/conf/nginx.conf
。
server {
listen 80;
server_name localhost;
index index.php index.html;
root /yjdata/www/www/;
location ~ .*\.php (\/.*)*$ {
fastcgi_pass 127.0.0.1:10000;
include fastcgi.conf;
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
}
4.2、无法上传文件
修改文件:
/yjdata/www/www/var/Typecho/Common.php
如下:
/**
* 检测是否在 app engine 上运行,屏蔽某些功能
*
* @static
* @access public
* @return boolean
*/
public static function isAppEngine () {
# return !empty ($_SERVER ['HTTP_APPNAME']) // SAE
# || !!getenv ('HTTP_BAE_ENV_APPID') // BAE
# || !!getenv ('HTTP_BAE_LOGID') // BAE 3.0
# || (ini_get ('acl.app_id') && class_exists ('Alibaba')) // ACE
# || (isset ($_SERVER ['SERVER_SOFTWARE']) && strpos ($_SERVER ['SERVER_SOFTWARE'],'Google App Engine') !== false) // GAE
# ;
return false;
}
权限设置:
chmod 777 /yjdata/www/www/usr/uploads
五、更换主题
下载所需更换的主题,上传至:
/yjdata/www/www/usr/themes
即可在后台进行更换。
六、开启 Https 证书访问
6.1、前提步骤
1、申请免费的 SSL 证书 https://console.cloud.tencent.com/ssl。
2、拥有域名。
3、将域名解析到服务器上,并配置了 Nginx 环境。
6.2、下载移动 SSL 证书
在证书颁发机构把证书文件下载下来。
wordplay.work.csr
wordplay.work.key
wordplay.work_bundle.crt
wordplay.work_bundle.pem
6.3、修改 Nginx 配置文件
配置文件目录在 /usr/local/lighthouse/softwares/nginx/conf/include/typecho.conf
。
server {
listen 80;
server_name wordplay.work;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl;
server_name wordplay.work;
server_tokens off;
keepalive_timeout 5;
# 添加以下两行以指定 SSL 证书位置
ssl_certificate /usr/local/lighthouse/softwares/nginx/conf/wordplay.work_bundle.pem;
ssl_certificate_key /usr/local/lighthouse/softwares/nginx/conf/wordplay.work.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
root /usr/local/lighthouse/softwares/typecho;
index index.php index.html;
access_log logs/typecho.log combinediox;
error_log logs/typecho.error.log;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}
location ~ .*\.php (\/.*)*$ {
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
}
}
重启 nginx:
/usr/local/lighthouse/softwares/nginx/sbin/nginx -s reload
七、使用 gravatar
Gravatar 是 Globally Recognized Avatar 的缩写,意为 “全球通用头像”。如果在 Gravatar 的服务器上放置了你自己的头像,那么在任何支持 Gravatar 的 blog 或者留言本上留言时,只要提供你与这个头像关联的 email 地址,就能够显示出你的 Gravatar 头像来。
最后可以开心地 START TYPING ~
参考:
typecho 官方文档
评论