去amh云主机平台记录

背景

之前一直都是用 php 做网站开发,自己弄了个学生版云服务器,把网站都放在上面,当时不擅长 linux,一键搭建了一个 amh,可以非常方便的搭建常用的网站运行环境,但是需要收费 6元/月,但是把所有网站数据交给他处理,还是有点不放心,而且我这个 cenos 系统运行有差不多 3年了,最新一直被提醒有漏洞,内存运行异常,所以打算彻底重装一次,不再用第三方服务,当然之前的网站也需要再搭建起来。

感觉有点没事找事,程序员就喜欢瞎折腾吧。

流程

备份数据库和网站代码源文件

amh 提供自动备份工具,利用该工具进行立即备份,会同时备份到服务器和第三方云存储,我配置的是七牛云。如果没有配置第三方云存储,则需要下载到自己电脑上,然后上传到重装后的系统上去。

下载备份文件操作

在自己电脑上运行 scp work@xxx.xxx.xxx.xxx:/home/wwwroot/xxxx /desktop/xxxxx

重装服务器

重装系统在阿里云上叫更换系统盘,然后我选择 Ubuntu 16 版本镜像,重装后设置密码

上传备份的文件

依然使用 scp 命令

解压

后台解压,避免终端关闭后中断:( tar -zxvf file.tar.gz.amh &)

安装 apache、php、mysql

apache

1
2
3
// 以 root 身份登录,可以省去 sudo
apt-get update
apt-get install apache2

apache 常用操作 sudo service apache2 restart | stop | start·

php

ubuntu 16 apt-get 工具默认支持 php 7版本以上的安装,如果需要安装 php 5,需要配置镜像源

1
2
3
4
5
sudo add-apt-repository ppa:ondrej/php
apt-get install php5

// 可以顺便安装常用模块
apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

mysql

1
sudo apt-get install mysql-server

创建 apache 虚拟主机

  1. copy /etc/apache2/sites-avaliable/default , 命名为 mysite

  2. 修改配置文件:mysite,改成需要的域名和 web 源文件位置

  3. 建立链接文件
    sudo ln -s /etc/apache2/sites-available/mysite /etc/apache2/sites-enabled/mysite

  4. 重启 apache 服务器

service apache2 restart

配置 php 拓展

大部分 php 系统都会依赖第三方拓展,基本上都可以用 apt-get 安装,如下拓展是 thinkcmf 系统必须要的

  • curl

  • GD 图像库 apt-get install php5-gd

  • MBString apt-get install php5-mbstring

在安装拓展的时候,基于 php 5 的拓展会遇到知不道包的问题,需要更换镜像源,包名的 php不携带版本号,则默认装最新版本,例如 php-gd。
拓展模块安装后需要重启 apache 页面才生效

数据库

恢复数据库

  • 登录数据库:mysql -u root -p
  • 执行sql:mysql> source sql-file

创建用户

  • 添加用户:CREATE USER 'user-name'@'localhost' IDENTIFIED BY 'user-password'
  • 配置用户数据库权限:GRANT all privileges ON database-name.* TO user-name@localhost identified by 'user-password';
  • 刷新权限配置:flush privileges;

参考链接