搭建 WordPress 个人博客

搭建 WordPress 个人博客(转载自腾讯云)

准备 LNMP 环境

任务时间:30min ~ 60min

LNMP 是 Linux、Nginx、MySQL 和 PHP 的缩写,是 WordPress 博客系统依赖的基础运行环境。我们先来准备 LNMP 环境

安装 Nginx

使用 yum 安装 Nginx:

yum install nginx -y
修改 /etc/nginx/conf.d/default.conf,去除对 IPv6 地址的监听[?],可参考下面的示例:

示例代码:/etc/nginx/conf.d/default.conf

server {
listen 80 default_server;
# listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;

# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;

location / {
}

error_page 404 /404.html;
location = /40x.html {
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
}

}
修改完成后,启动 Nginx:

nginx
此时,可访问实验机器外网 HTTP 服务(http://<您的 CVM IP 地址>)来确认是否已经安装成功。

将 Nginx 设置为开机自动启动:

chkconfig nginx on

CentOS 6 不支持 IPv6,需要取消对 IPv6 地址的监听,否则 Nginx 不能成功启动。

安装 MySQL

使用 yum 安装 MySQL:

yum install mysql-server -y
安装完成后,启动 MySQL 服务:

service mysqld restart
设置 MySQL 账户 root 密码:[?]

/usr/bin/mysqladmin -u root password ‘MyPas$word4Word_Press’
将 MySQL 设置为开机自动启动:

chkconfig mysqld on

下面命令中的密码是教程为您自动生成的,为了方便实验的进行,不建议使用其它密码。如果设置其它密码,请把密码记住,在后续的步骤会使用到。

安装 PHP

使用 yum 安装 PHP:[?]

yum install php-fpm php-mysql -y
安装之后,启动 PHP-FPM 进程:

service php-fpm start
启动之后,可以使用下面的命令查看 PHP-FPM 进程监听哪个端口 [?]

netstat -nlpt | grep php-fpm
把 PHP-FPM 也设置成开机自动启动:

chkconfig php-fpm on

CentOs 6 默认已经安装了 PHP-FPM 及 PHP-MYSQL,下面命令执行的可能会提示已经安装。

 

PHP-FPM 默认监听 9000 端口

安装并配置 WordPress

任务时间:30min ~ 60min

安装 WordPress

配置好 LNMP 环境后,继续使用 yum 来安装 WordPress:

yum install wordpress -y
安装完成后,就可以在 /usr/share/wordpress 看到 WordPress 的源代码了。

配置数据库

进入 MySQL:[?]

mysql -uroot –password=’MyPas$word4Word_Press’
为 WordPress 创建一个数据库:

CREATE DATABASE wordpress;
MySQL 部分设置完了,我们退出 MySQL 环境:

exit
把上述的 DB 配置同步到 WordPress 的配置文件中,可参考下面的配置:

示例代码:/etc/wordpress/wp-config.php

<?php
/**
* The base configuration for WordPress
*
* The wp-config.php creation script uses this file during the
* installation. You don’t have to use the web site, you can
* copy this file to “wp-config.php” and fill in the values.
*
* This file contains the following configurations:
*
* * MySQL settings
* * Secret keys
* * Database table prefix
* * ABSPATH
*
* @link https://codex.wordpress.org/Editing_wp-config.php
*
* @package WordPress
*/

// ** 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’, ‘root’);

/** MySQL database password */
define(‘DB_PASSWORD’, ‘MyPas$word4Word_Press’);

/** MySQL hostname */
define(‘DB_HOST’, ‘localhost’);

/** Database Charset to use in creating database tables. */
define(‘DB_CHARSET’, ‘utf8’);

/** The Database Collate type. Don’t change this if in doubt. */
define(‘DB_COLLATE’, ”);

/**#@+
* Authentication Unique Keys and Salts.
*
* Change these to different unique phrases!
* You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
* You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
*
* @since 2.6.0
*/
define(‘AUTH_KEY’, ‘put your unique phrase here’);
define(‘SECURE_AUTH_KEY’, ‘put your unique phrase here’);
define(‘LOGGED_IN_KEY’, ‘put your unique phrase here’);
define(‘NONCE_KEY’, ‘put your unique phrase here’);
define(‘AUTH_SALT’, ‘put your unique phrase here’);
define(‘SECURE_AUTH_SALT’, ‘put your unique phrase here’);
define(‘LOGGED_IN_SALT’, ‘put your unique phrase here’);
define(‘NONCE_SALT’, ‘put your unique phrase here’);

/**#@-*/

/**
* WordPress Database Table prefix.
*
* You can have multiple installations in one database if you give each
* a unique prefix. Only numbers, letters, and underscores please!
*/
$table_prefix = ‘wp_’;

/**
* See http://make.wordpress.org/core/2013/10/25/the-definitive-guide-to-disabling-auto-updates-in-wordpress-3-7
*/

/* Disable all file change, as RPM base installation are read-only */
define(‘DISALLOW_FILE_MODS’, true);

/* Disable automatic updater, in case you want to allow
above FILE_MODS for plugins, themes, … */
define(‘AUTOMATIC_UPDATER_DISABLED’, true);

/* Core update is always disabled, WP_AUTO_UPDATE_CORE value is ignore */

/**
* For developers: WordPress debugging mode.
*
* Change this to true to enable the display of notices during development.
* It is strongly recommended that plugin and theme developers use WP_DEBUG
* in their development environments.
*
* For information on other constants that can be used for debugging,
* visit the Codex.
*
* @link https://codex.wordpress.org/Debugging_in_WordPress
*/
define(‘WP_DEBUG’, false);

/* That’s all, stop editing! Happy blogging. */

/** Absolute path to the WordPress directory. */
if ( !defined(‘ABSPATH’) )
define(‘ABSPATH’, ‘/usr/share/wordpress’);

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . ‘wp-settings.php’);

如果你上面的步骤没有使用教程创建的密码,请修改下面命令中的密码登录

配置 Nginx

WordPress 已经安装完毕,我们配置 Nginx 把请求转发给 PHP-FPM 来处理

首先,重命名默认的配置文件:[?]

cd /etc/nginx/conf.d/
mv default.conf defaut.conf.bak
在 /etc/nginx/conf.d 创建 wordpress.conf 配置,参考下面的内容:

示例代码:/etc/nginx/conf.d/wordpress.conf

server {
listen 80;
root /usr/share/wordpress;
location / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php index.php;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ .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 进程重新加载:

nginx -s reload

默认的 Server 监听 80 端口,与 WordPress 的服务端口冲突,将其重命名为 .bak 后缀以禁用默认配置

准备域名和解析

任务时间:15min ~ 30min

域名注册

如果您还没有域名,可以在腾讯云上选购,过程可以参考下面的视频。

视频 – 在腾讯云上购买域名
域名解析

域名购买完成后, 需要将域名解析到实验云主机上,实验云主机的 IP 为:

<您的 CVM IP 地址>
在腾讯云购买的域名,可以到控制台添加解析记录,过程可参考下面的视频:

视频 – 如何在腾讯云上解析域名
域名设置解析后需要过一段时间才会生效,通过 ping 命令检查域名是否生效 [?],如:

ping www.yourdomain.com
如果 ping 命令返回的信息中含有你设置的解析的 IP 地址,说明解析成功。

 

注意替换下面命令中的 www.yourmpdomain.com 为您自己的注册的域名

大功告成!

恭喜,您的 WordPress 博客已经部署完成,您可以通过浏览器访问博客查看效果。

通过IP地址查看:

博客访问地址:http://<您的域名>/wp-admin/install.php

通过域名查看:

博客访问地址:http://www.yourdomain.com/wp-admin/install.php,其中替换 www.yourdomain.com 为之前申请的域名。

Linux定时器工具-crontab 各参数详解及如何查看日志记录

要使用crontab定时器工具,必须要启动cron服务:

service cron start

crontab的语法,以备日后救急。先上张超给力的图:

crontab各参数说明:

-e : 执行文字编辑器来编辑crontab,内定的文字编辑器是VI

-r : 删除目前的crontab

-l : 列出目前的crontab(查看专用)

-i : 会和-r 配合使用,在删除当前的crontab时询问,输入y 则删除

注意crontab是分用户的,以谁登录就会编辑到谁的crontab

crontab特殊的符号说明:

“*”代表所有的取值范围内的数字。特别要注意哦!

“/”代表每的意思,如”*/5″表示每5个单位

“-“代表从某个数字到某个数字

“,”分散的数字

crontab文件的使用示例:

30 21 * * * 表示每晚的21:30

45 4 1,10,22 * * 表示每月1、10、22日的4 : 45

10 1 * * 6,0 表示每周六、周日的1 : 10

0,30 18-23 * * * 表示在每天18 : 00至23 : 00之间每隔30分钟

0 23 * * 6 表示每星期六的11 : 00 pm

* */1 * * * 每一小时

* 23-7/1 * * * 晚上11点到早上7点之间,每隔一小时

* 8,13 * * 1-5 从周一到周五的上午8点和下午1点

0 11 4 * mon-wed 每月的4号与每周一到周三的11点

0 4 1 jan * 一月一号的4点

——————————– 如何启动crontab的日志服务 ——————————————————–

发现UBuntu下居然没有自动打开cron的日志服务功能,解决方法如下

cron的日志功能使用syslogd服务,不同版本linux可能装了不同的软件,这里介绍常见的两种:

sysklogd>>>>>>

1. 编辑 /etc/syslog.conf,并且打开以cron.*开始的那行注释。
2. 运行 /etc/init.d/sysklogd restart 。
3. 运行 /etc/init.d/cron restart 。

rsyslog>>>>>>

1. 修改rsyslog文件,将/etc/rsyslog.d/50-default.conf 文件中的#cron.*前的#删掉;
2. 重启rsyslog服务service rsyslog restart
3. 重启cron服务service cron restart

——————————– 如何查看crontab的日志记录 ——————————————————–

昨天crontab中的同步任务没有执行,不知道是什么原因没有执行,貌似任务hang住了,想查询一下crontab到底问题出在哪里,或者hang在了什么地方。

1. linux
看 /var/log/cron这个文件就可以,可以用tail -f /var/log/cron观察

2. unix
在 /var/spool/cron/tmp文件中,有croutXXX001864的tmp文件,tail 这些文件就可以看到正在执行的任务了。

3. mail任务
在 /var/spool/mail/root 文件中,有crontab执行日志的记录,用tail -f /var/spool/mail/root 即可查看最近的crontab执行情况。

CentOS系统下如何设置mysql每天自动备份_Mysql

大家都知道数据是一个比较重要的数据,经常需要备份,每次都手动比较麻烦。通过本文来一起来看看CentOS系统下如何设置mysql每天自动备份吧。

步骤如下

建备份文件夹:

mkdir mysql_data_bak

建脚本文件:

touch autobackupmysql.sh

打开文件

vi autobackupmysql.sh

在脚本中加入如下内容:

filename=`date +%Y%m%d`
/usr/bin/mysqldump -uroot -proot boss >>/home/mysql_data_bak/$filename.sql
/usr/bin/mysqldump为mysqldump所在的命令文件夹,boss为要备份的数据库

检查有没安装crond,如果没有,先安装

yum -y install vixie-cron
yum -y install crontabs

启动服务 :service crond start

在CentOS系统中加入开机自动启动: chkconfig --level 345 crond on

crontab -e

加入内容:00 03 * * * source /root/autobackupmysql.sh

每天凌晨3点运行此文件,对数据库进行备份

 service crond restart

好了,以上就完成了。

source为非root用户,如果为root用户:

vi /etc/crontab

在最下面添加一条:

0 3 * * * root /路径/backup_mydb.sh

意思就是在每天的3点0分执行这个文件;

写好后保存退出crontab。

重启crontab

chmod命令详细用法

指令名称 : chmod
使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [–help] [–version] mode file…
说明 : Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所调用。
参数 :
mode : 权限设定字串,格式如下 : [ugoa…][[+-=][rwxX]…][,…],其中
u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
–help : 显示辅助说明
–version : 显示版本
范例 :将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file

chmod 777 file
效果相同
chmod ug=rwx,o=x file

chmod 771 file
效果相同
若用chmod 4755 filename可使此程序具有root的权限.
指令名称 : chown
使用权限 : root

使用方式 : chmod [-cfhvR] [–help] [–version] user[] file…

说 明 : Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由 系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才 有这样的权限。

把计 :

user : 新的档案拥有者的使用者 IDgroup : 新的档案拥有者的使用者群 体(group)-c : 若该档案拥有者确实已经更改,才显示其更改动作-f : 若该档案拥有者无法被更改也不要显示错误讯息-h : 只对于连结 (link)进行变更,而非该 link 真正指向的档案-v : 显示拥有者变更的详细资料-R : 对目前目录下的所有档案与子目录进行相同的拥有者 变更(即以递回的方式逐个变更)–help : 显示辅助说明–version : 显示版本

范例 :
将档案 file1.txt 的拥有者设为 users 群体的使用者 jessie :
chown jessie:users file1.txt

将目前目录下的所有档案与子目录的拥有者皆设为 users 群体的使用者 lamport :
chmod -R lamport:users *
-rw——- (600) — 只有属主有读写权限。
-rw-r–r– (644) — 只有属主有读写权限;而属组用户和其他用户只有读权限。
-rwx—— (700) — 只有属主有读、写、执行权限。
-rwxr-xr-x (755) — 属主有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx–x–x (711) — 属主有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) — 所有用户都有文件读、写权限。这种做法不可取。
-rwxrwxrwx (777) — 所有用户都有读、写、执行权限。更不可取的做法。
以下是对目录的两个普通设定:

drwx—— (700) – 只有属主可在目录中读、写。
drwxr-xr-x (755) – 所有用户可读该目录,但只有属主才能改变目录中的内容。
————————————————————————–
运行 .sh 文件类型的文件:
用file命令测试一下看是什么类型的
file xxxx.sh
如果是Bourne-Again shell script 可以sh xxxx.sh 或者chmod +x xxxx.sh 再./xxx.sh
一般 .sh 的直接添加x(可执行属性) chmod +x xxx.sh 然后./xxx.sh就可以了
chmod是一个改变用户拥有指定文件的权限的命令.r:只读,w:写,x执行.也可以用数字