Monthly Archives: October 2017

安装完 WordPress 之后应该做的几件事情

删除所有没用的主题和插件

在开始选择一款合适的主题和一些必须的插件之后尽量减少不需要的空间占用,把不需要的主题和插件删除。一方面减少备份的压力,另一方面也可以减少服务器压力。

从页面中删除 WordPress 版本号相关的代码

WordPress 的根目录下会有一个 readme.php ,删除该文件,该文件会把网站所使用的 WordPress 版本告诉全世界,显然如果坏人知道了特定的 WordPress 版本就可以用来干坏事了。

检查网页代码,删除页面 meta 中一切有可能猜出 WordPress 版本的代码。有些 WordPress 版本会在 head 的 meta 中直接写上版本号,直接删掉。

比如有些主题的 header.php 文件中,删除

<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />

或者建议打开 functions.php 添加如下方法

remove_action('wp_head', 'wp_generator');

该方法会移除 WordPress 在 header 中添加的 meta 信息,但是如果稍微熟悉一点 WordPress 的人就能从 RSS 那边得到版本号,想要彻底地移除版本号,需要在 functions.php 中添加

function wpbeginner_remove_version() {
  return '';
}
add_filter('the_generator', 'wpbeginner_remove_version');

移除版本号只是为了让做坏事的人不那么容易知道 WordPress 的后门,最安全的做法还是升级到最新的版本, WordPress 官方对于漏洞修复的还是很快。

设置文章的固定链接

默认的 WordPress 设定链接,一不美观,二不利于 SEO。所以一般我会设定为 /post/%year%/%monthnum%/%postname%.html ,我的其他博客也几乎都是使用这样的固定链接。

而对于一些大站,每日更新很多,可能无法顾及链接中的 postname 这样的字段,我建议直接使用固定长度的随机数字为固定链接。

关闭 WordPress 修订版本

WordPress 默认会自动保存文章的所有修订版本,没修改一次 WordPress 便会自动保存一份历史修订,这个功能非常实用,但却带来数据库的快速膨胀,对于我使用来说,我只需要 WordPress 记住最近几次修改即可。

所以要停用 WordPress 修订版本功能,可以在根目录下的 wp-config.php 配置下加入

define( 'WP_POST_REVISIONS', 3);

后面的数字为要保留的历史文章数量。如果想要直接关闭文章修订功能,直接将数字替换为 false 即可。

隐藏登录页面错误提示

在默认情况下 WordPress 会以友好的方式提醒登陆者用户名或者是密码错误,这样的信息对于一个商业网站来说很友好,用户也知道具体是什么原因导致的错误,而对于只是个人使用的网站来说无疑是给了暴力破解的人可乘之机。禁用相关错误即可。

functions.php 中加入如下方法禁用错误提示

function no_errors_please(){
  return 'GET OFF MY LAWN !! RIGHT NOW !!';
}
add_filter( 'login_errors', 'no_errors_please' );

开启 Google 二步验证

WordPress 默认的登录页面很简单,也只会验证用户名和密码,现在主流的网站 Google, GitHub, LastPass 等等都有选项可以开启两步验证以增强网站的安全性, WordPress 幸好有人为此制作了 Plugin —- Google Authenticator 插件。

直接在后台搜索,下载,启用就行,官网地址: http://wordpress.org/extend/plugins/google-authenticator/

注意的是,激活之后他的设置路劲在 Users -> Profile and Personal options 页面下设置。

这个插件针对每个用户都有一个单独的设置,非常不错。

reference

有一种音乐在听到的一瞬间就会喜欢上

Redvelvet WENDY 在 150609 期 百人百曲 中的演唱的 “기억 속의 먼 그대에게”,中文翻译为 “致记忆中的你” ,原唱为 “박미경” 朴美京 。

 

在韩国新一代偶像歌手里面, Wendy 的这一曲“致记忆中的你”奠定了她实力歌手的地位,作为 Red Velvet 的第一主唱,从她的眼神中我看到了她对于唱歌的热爱。

 

 

WordPress 安装教程

WordPress 运行的环境我使用 Linux + Nginx + Php + Mysql

下面就是基本的环境安装

install nginx and vhost

安装 Nginx 和 创建虚拟主机

sudo apt-get install nginx
sudo mkdir -p /var/www/example.com/html
sudo chown -R $USER:$USER /var/www/example.com/html
sudo chmod -R 755 /var/www
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com

设置如下配置:

server {
    listen 80;
    listen [::]:80;

    root /var/www/example.com/html;
    index index.html index.htm index.nginx-debian.html;

    server_name example.com www.example.com;

    location / {
        try_files $uri $uri/ =404;
    }
}

启用虚拟主机

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

测试 Nginx 配置

sudo nginx -t

重启 Nginx

sudo systemctl restart nginx

访问站点 http://example.com

mysql

安装MySQL

sudo apt-get install mysql-server

然后登录 mysql 创建表和用户

mysql -u root -p
CREATE DATABASE wordpress;
CREATE USER wordpressuser@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost;
FLUSH PRIVILEGES;
exit

php

sudo apt-get install php-fpm php-mysql

修改php配置

sudo vim /etc/php/7.0/fpm/php.ini

将下面的配置修改为 0

cgi.fix_pathinfo=0

重启 php

sudo systemctl restart php7.0-fpm

修改 nginx conf

server {
   listen 80 default_server;
   listen [::]:80 default_server;
   root /var/www/html;
   index index.php index.html index.htm index.nginx-debian.html;
   server_name server_domain_or_IP;
   location / {
       try_files $uri $uri/ =404;
   }
   location ~ \.php$ {
       include snippets/fastcgi-php.conf;
       fastcgi_pass unix:/run/php/php7.0-fpm.sock;
   }
   location ~ /\.ht {
       deny all;
   }
}

测试 PHP 安装

sudo vim /var/www/html/info.php

输入以下内容

<?php
phpinfo(); ?>

install

下载代码

wget http://wordpress.org/latest.tar.gz

解压

tar xzvf latest.tar.gz

修改配置

cp wp-config-sample.php wp-config.php

修改 config file

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'wordpressuser');
/** MySQL database password */
define('DB_PASSWORD', 'password');

访问站点。

修复WordPress 上传文件HTTP Error

新装的 WordPress 上传较大的文件时遇到这个问题,我的 WordPress 运行在 Nginx 上,查验之后发现可能是 Nginx 配置的问题。

修改 nginx.conf

sudo vim /etc/nginx/nginx.conf

在配置中增加

http {

#Basic Settings
client_max_body_size 100m;

}

然后重启 nginx :

sudo /etc/init.d/nginx restart

wp-config.php 添加

define( 'WP_MEMORY_LIMIT', '256M' );

php 配置中修改添加

upload_max_filesize = 64M 
post_max_size = 64M 
max_execution_time = 300 
max_input_time = 300

对于 WordPress 无法裁剪图片

apt-get install php7-gd

寻找一个合适的主题不易

博客是安装成功了,一些基本配置(比如上传文件大小,日志连接模式)的修改也陆续完成。可是要寻找一个既简洁又方便使用的主题有些困难。在平时浏览网页的时候倒是发现一些 Hexo 的主题非常漂亮并且也非常的简洁,比如这个 ,比如说这个著名的 Next  等等,很多 Hexo 的主题也都是开源的。当然简单的搜了一下 WordPress 的主题也是很多,只是有些太过浮夸,大面积的图片对于我这样只码字的博客显然不适合。

我简单的想了一下,我的要求其实也不是很高,只要有个列表的主页,有个能够浏览单Post 的页面,最好是两栏的布局,对移动端友好,然后其他都要求不高,其实我发现最新的 Medium 的风格就很符合我的审美,大面积的展示内容留给了正文内容,头部简洁的导航栏,以及最下方简单的推荐和大篇幅的评论。

但是显然 WordPress 的主题太多,付费,免费的内容可选择太多,所以就随便选择了一个 Hueman 这是评论评分很高的一个主题了,稍微修改一下布局把他调整成心中的模样就这样 Save & Publish 吧。

想着有时间一定要自己搞一搞WP的主题。

modernizeVersion: 1.8.0 By Takuma Misumi

modernize is a modern, simple and beautiful WordPress theme. I made it for blogging. Customizer, social menu icon, several templates, logo addition, switching function between one column and two columns, etc. are also available.

Tags: one-column, blog, custom-background, editor-style, full-width-template, theme-options

通过大面积的留白,对正文字体的特殊设计让整个页面布局显得非常漂亮,但是个人觉得不太适合阅读。

dangopressVersion: 0.4.10 By kodango

a simple responsive blog theme

同样也是一款非常简洁的主题,双栏设计,两侧留白,该有的功能一个都不缺,个人觉得同样字体设计太小,不适合阅读。

  • http://kodango.com/dangopress-theme

Beginning Version: 4.1.1 By 斌果

这是个人开发维护的一个主题,优化了移动版面,不刷新加载也是一大特点。

  • https://www.bgbk.org/

Twenty TwelveVersion: 2.7 By the WordPress team

The 2012 theme for WordPress is a fully responsive theme that looks great on any device. Features include a front page template with its own widgets, an optional display font, styling for post formats on both index and single views, and an optional no-sidebar page template. Make it yours with a custom menu, header image, and background.

这是一个官方的主题,简洁大气,没啥可说,官方的设计也很呆板。

171009 大雨

国庆回来第一天,早上出门竟然下起了大雨,丢掉伞的我还没有买到雨衣,只能在楼下小店买了一把小伞就这样匆匆出门。

北京的天气秋天已经不是那么分明,这一场雨似乎宣告着冬天的到来,现在出门已经需要厚衣厚裤,骑车的手也会在寒风中隐隐作痛。

这个 Blog 是我在三年之后重建,我觉得似乎不应该把一些碎碎念放到 GitHub 那边的技术博客。那就这边记录一下生活,记录一下其他的想法吧。