网站迁移

对于Wordpress这类网站迁移来说,无非有两块,网站内容和数据库。而简单点来做的话,其实就是打包网站目录从一个服务器到另一个服务器,这块相信没什么好说的。还有的就是数据库了。在同类型数据量不大的情况下,直接把整个数据库生成sql文件来进行导入就行。而在遇到要换数据库和大数据量的情况下,写个脚本也是一种选择。这次从阿里云迁移到搬瓦工传家宝的路上,也是遇到不少坑的。

配置https证书相信大家都不陌生吧,其实主要是之前存在七牛上的一些静态文件需要同步到服务器上。网上大致搜了下,最后决定用qshell里的qdownload命令来下载所有文件。文档里注意的主要是要配置cdn_domain参数,其他倒都是现成的。

最后就是用sql更新下所有原来存放在7牛的url~                🙂

UPDATE wp_posts SET post_content = REPLACE( post_content, '7xjxxk.com1.z0.glb.clouddn.com', 'www.nhzst.com/wp-content/qniu' );

传家宝

偶然有一次搬机房,发现分配到的IP居然走了CN2线路。本就是传家宝系列的母鸡顿时升级。虽然OpenVZ架构差了点,但是该上的都能上了。一个月500G岂不是美滋滋啊。

然后就是阿里云的虚拟主机到期了,一看续费从原来的6块变成60了,果断把域名转出到外面来,当然也耽搁了一段时间,最近工作忙。好不容易有点时间折腾下,把准备好的文件数据库直接往上一拉,速度不是盖的啊,跑满公司100兆了。。。然后就是一波创建数据库的操作,速度感觉反而比原来的虚拟主机快了(毕竟一只鸡里不知道塞了多少东西,资源肯定没真正的虚拟鸡多的。),倒是https还是没能弄上,看看有没有时间再折腾吧。

所以当前机房:Los Angeles, California (DC2 QNET),你们可以TransRoute下,一直走的59.43CN2线路,油管4k视频无压力。:)

网站截图的实现

ImgVer
业务很简单,就是把网页转成图片保存下来。之前也用过html2canvas来实现这一功能,测试下来除了发现截图糊了一点外倒也没什么毛病,但是这次实现完在Chrome上测试时却出现了网络错误的提示(大概是图片太大的缘故orz),于是想到走后台来实现这一功能,找了一下发现以下方案,大概就是先组装好这个页面来让WebBrowser来访问,最后把整个WebBrowser界面以字节流的方式输出给用户浏览器。具体代码如下: 继续阅读网站截图的实现

devstack

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install python-pip

Error:

Traceback (most recent call last):
File “/usr/bin/pip”, line 11, in
sys.exit(main())
File “/usr/lib/python2.7/dist-packages/pip/__init__.py”, line 215, in main
locale.setlocale(locale.LC_ALL, ”)
File “/usr/lib/python2.7/locale.py”, line 581, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting

export LC_ALL=C  #语言环境配置出错

pip install –upgrade pip

sudo pip install -U os-testr

sudo apt-get install git

cd /home

设置stack用户
groupadd stack
useradd -g stack -s /bin/bash -d /opt/stack -m stack
passwd stack(设置密码)

添加stack用户权限
sudo echo “stack ALL=(ALL) NOPASSWD: ALL” >> /etc/sudoers

切换到stack用户
sudo su stack (su stack && cd)

sudo git clone https://git.openstack.org/openstack-dev/devstack

cd devstack/

sudo chown -R stack:stack /home/devstack

Create a local.conf file with 4 passwords preset at the root of the devstack git repo.

[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD

HOST_IP=Your_Ip

./stack.sh