纪念我们终将失去的青春

在云服务器部署AMH数据库及qiandao.today的过程

《在云服务器部署AMH数据库及qiandao.today的过程》首先你要有一台云服务器或者VPS,安装centos或者自己熟悉的linux系统,这里我用的是Centos6.5×86。

很多人都是新手,所以就采用新手的方案一键装个主机管理面板AMH4.2免费版,之所以安装这个面板,是因为它的安装过程同时完善了很多后面我们需要的依赖库,真的适合新手和懒人!

AMH的安装比较简单,直接官方安装即可。

AMH4.2 编译安装:

AMH 4.2 为独立的一套LNMP/Nginx虚拟主机面板,安装请使用纯净系统。编译安装方式 (安装时间15至25分钟)

1) 使用 root 账号登录 Linux 服务器。

2) 执行 amh 安装脚本。

wget http://amh.sh/file/AMH/4.2/amh.sh && chmod 775 amh.sh && ./amh.sh 2>&1 | tee amh.log

3) 根据提示输入选择1~3选项。1为安装amh,2为卸载amh,3为退出不做操作。

输入1回车,如果程序无法识别主机IP,还需要手工输入主机IP,接着输入MySQL与AMH密码即进入安装流程,安装过程大约需10至20分钟(以服务器性能为准),最后如看到安装成功提示,说明系统已安装完成。

成功安装后有必要请删除日志文件:amh.log,如安装失败需协助安装请把错误日志反馈给官方。

访问http://ip:8888 即可进入AMH web端管理,默认账号为admin。

接下来开始搭建签到站:

qiandao.today:一个自动签到框架 base on an HAR editor

[gt href=’https://github.com/binux/qiandao’]开源地址[/gt]

以下文中代码前带#的为注释,不一定正确,可以忽视,仅做参考和备注用。

升级python 2.6.6 -> 2.7.13

安装pip

1) 升级Python2.7

查看当前系统中的 Python 版本

python --version

返回 Python 2.6.6 。

检查 CentOS 版本

cat /etc/redhat-release

返回 CentOS release 6.9 (Final) 。

下载、编译和安装 Python 2.7.13

wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
tar zxf Python-2.7.13.tgz
cd Python-2.7.13
./configure
make && make install

默认 Python 2.7.13 会安装在 /usr/local/bin 目录下。查询命令

ll -tr /usr/local/bin/python*
#返回结果:
 /usr/local/bin/python2.7
 /usr/local/bin/python2.7-config
 /usr/local/bin/python -> python2
 /usr/local/bin/python2 -> python2.7
 /usr/local/bin/python2-config -> python2.7-config
 /usr/local/bin/python-config -> python2-config

而系统自带的 Python 是在 /usr/bin 目录下。查询命令

ll -tr /usr/bin/python*
#返回结果
 /usr/bin/python2.6-config
 /usr/bin/python2.6
 /usr/bin/python
 /usr/bin/python2 -> python
 /usr/bin/python-config -> python2.6-config

更新系统默认 Python 版本

先把系统默认的旧版 Python 重命名。

mv /usr/bin/python /usr/bin/python2.6.6

再删除系统默认的 python-config 软链接。

rm -f /usr/bin/python-config

最后创建新版本的 Python 软链接。

ln -s /usr/local/bin/python /usr/bin/python
ln -s /usr/local/bin/python-config /usr/bin/python-config
ln -s /usr/local/include/python2.7/ /usr/include/python2.7

以上步骤做完以后,目录 /usr/bin 下的 Python 应该是

ll -tr /usr/bin/python*
#返回结果:
/usr/bin/python2.6-config
/usr/bin/python2.6
/usr/bin/python2.6.6
/usr/bin/python2 -> python
/usr/bin/python -> /usr/local/bin/python
/usr/bin/python-config -> /usr/local/bin/python-config

查看新的 Python 版本

python --version

返回结果: Python 2.7.13 。

yum不兼容Python2.7,需要指定为原版本

vi /usr/bin/yum
将"!/usr/bin/python"改为"!/usr/bin/python2.6.6"

2) 准备基础环境
2.1) 安装setuptools

为新版 Python 安装 setuptools

wget https://bootstrap.pypa.io/ez_setup.py -O - | python

setuptools 正确安装完成后,easy_install 命令就会被安装在 /usr/local/bin 目录下了。这里也需要做软链接,否则easy_install的使用会出错。

rm -rf /usr/bin/easy_install
ln -s /usr/local/bin/easy_install /usr/bin/easy_install

2.2) 安装pip

为新版 Python 安装 pip

easy_install pip

正确安装完成后,pip 命令就会被安装在 /usr/local/bin 目录下了。为了pip正常使用,也需要做软链接

rm -rf /usr/bin/pip
ln -s /usr/local/bin/pip /usr/bin/pip

2.3) 安装virtualenv

su
pip install virtualenv
pip install virtualenvwrapper

virtualenv用于创建隔离的Python运行环境,依赖不同库和版本时避免混乱。
virtualenvwrapper为virtualenv上的扩展,提供更方便的命令。

3)按照github说明安装qiandao.today。

yum install python-devel
pip install tornado u-msgpack-python jinja2 chardet requests pbkdf2 pycrypto
pip install mysql-connector==2.1.6

在AMH中建立mysql数据库,设置用户名密码等后在AMH中装个phpMyAdmin模块将qiandao.sql数据库中导入

修改qiandao源码中config.py,添加自己的数据库信息,同时将

db_type = os.getenv(‘DB_TYPE’, ‘sqlite3’)

改为

db_type = os.getenv(‘DB_TYPE’, ‘mysql’)

将签到源码上传到服务器自己的目录中,比如qiandao,给于可执行权限

chmod +x -R /qiandao

先试运行一下,可以看到IP和端口

python /qiandao/run.py

一切完善后再用到后台运行脚本(注意自己run.py的路径),也可添加到开机自启动列表/etc/rc.d/rc.local中

nohup python /qiandao/run.py >/dev/null 2>nohup.out &

注册一个账号后设置管理员,可直接用命令或者在数据库中,将用户的 role值赋予为admin

/qiandao/chrole.py [email protected] admin

停止运行的方法:

执行命令:
ps -ax|grep run.py 
回车 
查询其进程如
2633 pts/1 S 0:01 python /qiandao/run.py 
说明PID为2633,那么就强制杀死此进程命令:
kill -9 2633   #-9的意思是强制

4)配置反代。

5)下载获取cookie插件并修改适配网站。

 

点赞
  1. 哈哈哈哈说道:

    按照教程云服务器和amh都弄好了,后面的就弄不好了,能帮弄一下嘛?

  2. 说道:

    ln -s /usr/local/bin/easy_install /usr/bin/easy_install
    这一行多了个空格 e asy

  3. 小贝说道:

    怎么配置反代啊。。。

    1. 情绪21℃说道:

      AMH中有个反代模块,安装后非常简单,很适合新手

  4. 西凉说道:

    我可不可以转载你的教程

    1. 情绪21℃说道:

      转呗 :oops: ,记得留个出处链接哦~~

发表评论

电子邮件地址不会被公开。 必填项已用*标注