START TYPING

START TYPING

一、关于 typecho

Typecho 是一个基于 PHP 的简洁的开源博客程序。它使用多种数据库(MySQL,PostgreSQL,SQLite)储存数据,在 GNU GPLv2 许可证下发行。Typecho 的前身是开源博客程序 Magike,由 Typecho 项目的发起人 JoyQi (70) 开发。该团队的最初形成,是在 wordcamp china 的活动上,后来有更多成员加入了这个项目,之后改名为 Typecho。这个名字来源于团队内部的头脑风暴:Type,有打字的意思;Echo,意思是回声、反馈、共鸣,也是 PHP 里最常见、最重要的函数。将这两个词合并在一起,就有了 Typecho。

二、搭建 typecho

2.1、重装系统

LNMPLinux+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 官方文档

评论

暂无

添加新评论