人的内心中也有数不清的岛屿,住着一个个的你,一个个的我。
网站迁移
对于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视频无压力。:)
网站截图的实现
业务很简单,就是把网页转成图片保存下来。之前也用过html2canvas来实现这一功能,测试下来除了发现截图糊了一点外倒也没什么毛病,但是这次实现完在Chrome上测试时却出现了网络错误的提示(大概是图片太大的缘故orz),于是想到走后台来实现这一功能,找了一下发现以下方案,大概就是先组装好这个页面来让WebBrowser来访问,最后把整个WebBrowser界面以字节流的方式输出给用户浏览器。具体代码如下: 继续阅读网站截图的实现
devstack
sudo apt-get update
sudo apt-get upgrade
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