自动备份WordPress及MySQL

今天决定自己将VPS上的blog及数据库做一个自动备份。
系统:Centos7.2.1511


  • 打包压缩wordpress所有文件及数据库脚本,文件名blogbackup.sh
    阴影部分为数据库的密码
    %e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8b%e5%8d%882-39-09
  • 使用crontab命令添加定时任务
crontab -e                "编辑crontab服务
0 1 * * * ~/blogbackup.sh "每天1点开始执行blogbackup.sh
crontab -l                "列出当前用户服务

TIPS:
crontab命令格式:
minute hour day month dayofweek command
其他命令:
crontab -r 删除服务
service crond start “启动

VPS博客系统备份至MAC

VPS:CentOS 7
MAC:MacOS 10.12.2
在vps上开通博客也开通了一段,写了几篇文章,担心某一天数据会丢失,决定折腾一下博客系统的备份,决定在本地的MAC电脑上也弄一个,并从VPS上讲数据拷贝回来。


1.服务器端数据拷贝

打包压缩wordpress的文件

cd /var/www/
tar -zcvf www.tar.gz ./ "后面的路径使用相对路径,这样在解压缩时就不会出现路径了

导出wp数据库文件

mysqldump -u root -p wp>wp.sql
2.MAC端LAMP环境搭建
  • MAC自带apache,无需安装,直接命令启动
sudo apachectl start   "启动apache服务
sudo apachectl -v     "查看apache版本
  • 关联php
    MAC的配置文件地址在/etc/apache2/httpd.conf
    tips:修改需要使用sudo权限
    找到libphp5.so这一行,将前面的注释取消
    %e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8811-06-52
sudo apachectl restart  "重启服务
sudo cp /Library/WebServer/Documents/index.html.en /Library/WebServer/Documents/info.php "复制并重命名为info.php

打开info.php文件,在It works后面加上,然后再次重启Apache,在浏览器中输入http://localhost/info.php,会出现一个显示php信息的页面。
如正常显示,则表明安装完成。
* 安装mysql
使用brew直接安装

brew install mysql

安装完成后在初始化命令的时候发现无法找到/tmp/mysql.sock文件
后来通过在mysql官网下载DMG文件安装mysql后,通过在系统偏好设置中启动mysql,产生了socket文件,便可正常使用
%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-26-%e4%b8%8b%e5%8d%882-38-17
PS:后面有机会想尝试一下,这个人的方案,这个通过启动plist文件来启动mysql

WordPress使用命令修改后台URL地址

这几天在折腾博客的备份搬迁工作,不小心把后台设置里的2个URL地址给改错了,无法登陆,只能直接修改数据库里面的数据


%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-54-51
URL的地址就是上面这个,当写错访问的站点地址的时候是无法访问的,而且也无法登陆,只能在后台修改

mysql -u roo -p  "登陆数据库mysql
show databases; "查看数据库的名字
use ***;        "***为你当时创建的wordpress数据的名字
update wp_options set option_value=replce(option_value,'旧地址','新地址');   "替换新的URL地址

更换正确的站点地址后,就可以正常登陆访问了

Apache中增加二级域名

环境:Centos7.2.2511
Apache2.4.6


1.打开mod_rewrite功能

在/etc/httpd/conf/http.conf 文件后面增加以下代码
%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-23-%e4%b8%8b%e5%8d%882-26-30
其中/etc/httpd/vhost.map 是apache服务器配置文件所在路径,根据实际情况修改(e.g. /usr/local/etc/)

2.创建vhost.map文件

在/etc/httpd目录创建名为vhost.map的文件,在文件内加入域名以及对应的目录即可,相应格式如下:
%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-23-%e4%b8%8b%e5%8d%882-28-10

PS:增加、修改或删除子域名,仅修改vhost.map内文件就行,无需重启httpd服务。

WordPress安装插件需要FTP问题解决办法

安装完WP后,需要安装一个MarkDown插件,提示需要使用FTP,可是我的VPS上面根本没有FTP,平时传文件都是用的SSH,上网找找了问题,发现问题的根源是wordpress的用户没有wp-content目录的写权限,由于技术有限,决定使用比较无脑的手段来解决这个问题。

修改wp-config.php文件

在文件的最后附加以下代码

define('FS_METHOD','direct');

screen-shot-2016-10-15-at-4-40-06-pm

修改权限

网上很多文章说给文件夹权限修改755什么的,但是我的文件夹所有者是root,我的wordpress又不是root的用户,也不想给他添加进行,所以就直接改成777,每次使用完之后我在改成755或其他的。

chmod 777 -R 'path to wp-content`

参考
1.How to Update WordPress Automatically Without Using FTP

锐速初体验

安装了shadowsocks之后怎么也要安装他的黄金搭档锐速,来提高下速度


安装锐速破解版

wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspeeder-all.sh && bash serverspeeder-all.sh

卸载方法

chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f

检查锐速是否运行

service serverSpeeder status

查看是否又appex0模块

lsmod

参考
【1】serverspeeder锐速一键破解安装版

shadowsocks安装

拥有VPS之后怎么可能不整一下如何上网呢!

系统:Centos 7 64bit

安装shadowsocks

yum install m2crypto 
yum install python-setuptools && easy_install pip
pip install shadowsocks

添加最新的库文件来支持新的加密算法

wget https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
tar zxf LATEST.tar.gz
cd libsodium*
./configure
make && make install

# 修复关联
echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig

运行

/usr/bin/ssserver -p 9000 -k www.abbswim.com -m chacha20

参考:
【1】安装shadowsocks-python并启用chacha20加密

在Vultr家安装LAMP

VPS系统Centos 7 64bit


  • 安装apache
    在终端使用yum安装
    yum install httpd
    安装完成后启动服务
    systemctl start httpd.service
    测试是否安装成功(当出现apache的默认页面时候表示安装成功
    http://your_server_IP_address/
    当需要apache服务开机启动可以执行
    systemctl enable httpd.service
  • 安装MySQL
    在Centos7中MySQL已经使用MariaDB来代替
    yum install mariadb-server mariadb
    安装后启动
    systemctl start mariadb
    进行初始化设置
    mysql_secure_installation
  • 安装PHP
    yum install php php-mysql
    启动服务
    systemctl restart httpd.service
  • 测试php服务
    新建一个php页面,默认空间在/var/www/html
    vi /var/www/html/info.php
    在里面加入
    <?php phpinfo(); ?>
    访问页面看是否能成功显示
    http://your_server_IP_address/info.php

当访问不能成功时可能是由于防火墙原因

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload