在云服务器上进行一键Web环境装配实践
in 网站建造技术日志 with 0 comment and 2640 read

在云服务器上进行一键Web环境装配实践

in 网站建造技术日志 and 2641 read

我准备装个轻论坛程序玩儿玩儿看。正好手头有台阿里云学生机,放着也是浪费了。不如练习一下建站。

第一步,购买云服务器

首先购买一台阿里云的云服务器ECS,选择Ubuntu 16.04 64位版本。其他选项全部默认即可,默认会有优惠的。

镜像

然后进行服务器初始化,设定一个初始密码,记住它。

设置密码

这个密码就是服务器的root账户的密码,后面你还可以在控制台重置它。

重置主密码

有了这个密码之后,就可以进行远程ssh链接服务器了。

然后你需要在控制台看一下这台云服务器的公网IP是多少。这个就是你的服务器在互联网上的唯一地址。

公网IP

第二步,远程ssh登陆服务器

方法一,终端登录

Mac和Linux用户直接打开终端输入下面的语句,假如我的公网IP是111.11.1.1。

ssh root@111.11.1.1

然后回车,会让你输入一个密码。这里输入上面提到的主密码,然后回车。注意,输入的时候不会在终端中显示出来,但是完全可以正常输入,放心。

如果这里登录错误,提示“Host key verification failed.”的话,解决方法很简单粗暴,可以直接在终端执行下面的语句。

rm ~/.ssh/known_hosts

更多解决方法可以跳查ssh中“Host key verification failed.“的解决方案一文。

第一次链接的时候,会让你输入No或者Yes,当然选Yes。

一般来说正常登录成功的话,你的终端用户名会变成一个root@sdafljsal-kdjf的形式,后面那串字母是你的主机名(刚才查看公网IP的时候,左边就有这串字母)。

方法二,使用第三方的ssh程序登录

例如Mac平台上一个很方便的程序叫做Termius,我个人就很喜欢。

打开程序之后新建一个HOST连接,输入公网IP,用户名(root),主密码,点击保存即可。

NEW HOST

保存之后就可以点击链接了。第一次链接必须点击Yes。

选Yes

连接成功后会得到这样的显示界面。

显示界面

两种方法的操作很相似,所以演示过程就沿着这里进行。

第三步,安装LNMP.ORG提供的LNMP一键安装包

正式安装前,先安装SSH远程会话管理工具screen

我们只需要输入下面的指令,一步步进行安装即可。

下面这条指令是用来更新软件目录的。

apt-get update

下面这条指令是用来安装screen的。

apt-get install screen

安装完成后,输入下面的指令来创建一个名叫lnmp的screen窗口。

screen -S lnmp

这时候会进入一个新的窗口,屏幕上原有的信息都会隐藏掉。

想要暂时从这个窗口出来,需要按住Ctrl,依次再按A,D。

想要回到这个窗口呢,只需要输入下面一行命令即可。

screen -r lnmp

如果想要直接退出这个窗口呢,输入下面一行命令即可。

exit

至于这个东西具体是什么怎么用,请查阅SSH远程会话管理工具 - screen使用教程一文。

正式下载并安装LNMP1.4

现在我们输入下面的指令,下载并安装lnmp1.4。

wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp

现在会弹出一个选项,选择要安装的数据库类型,输入对应MySQL或MariaDB版本前面的序号,回车进入下一步。我们选择最新版的MySQL。

选择数据库

需要设置MySQL的root密码(不输入直接回车将会设置为root)如果输入有错误需要删除时,可以按住Ctrl再按Backspace键进行删除(个别情况下是只需要Backspace键)。输入后回车进入下一步,如下图所示:

数据库密码

询问是否需要启用MySQL InnoDB,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y ,如果确定确实不需要该引擎可以输入 n,输入完成,回车进入下一步。

InnoDB

输入要选择的PHP版本的序号。我们选择最新版PHP。

选择PHP

回车进入下一步,选择是否安装内存优化。Jemalloc是C写的,TCmalloc则是C++写的。我选择Jemalloc。

选择内存优化

然后按下任意键,就正式进入安装阶段了。

安装

安装的过程很酷炫,很能满足视觉享受。

安装中

这个过程大概会持续几十分钟到几个小时,根据云服务器的速度和网络的速度而定。我是从 2017-12-06 23:01 开始安装的,直到 2017-12-07 0:24 才安装完成,总共花费了83分钟,真是辛苦了。

安装完成

安装完成之后访问主机的公网IP,可以看到LNMP一键安装包的默认首页。

默认首页

第四步,添加FTP程序

安装FTP程序

依次执行下面两条语句,进入lnmp解压后的目录,会显示如下图。

cd lnmp1.4
./pureftpd.sh

FTP

按任意键进行安装。

安装完成后会有如下提示界面。

安装完成

在阿里云安全组中开放端口

在阿里云控制台中,在实例控制界面,选择安全组管理。

在安全组管理界面添加两条规则,20/21以及20000/30000,如下图所示。

第一条规则

第二条规则

然后现在FTP就可以正常工作了。

第五步,设置域名解析

我选择的是在我的一级域名maemo.cc下面,开设一个二级域名club.maemo.cc。

操作起来很简单,只要到阿里云后台的云解析控制面板,对maemo.cc添加一个解析规则即可。

类型为A,解析值就是主机的IP地址。

添加解析

这样子,添加虚拟主机就有域名可用了。

但是需要备案。我没备案。

所以这一步本次实践中先跳过,不然的话一会儿安装过程可能会功亏一篑。

第六步,添加虚拟主机

添加虚拟主机的详细教程可查阅LNMP添加、删除虚拟主机及伪静态使用教程一文。

我们这里进行一步步分解。

输入下列指令创建虚拟主机。

lnmp vhost add

这时候会要求你输入你要绑定的网站的域名。

在你进行实践的时候,把我的域名替换成你自己的即可。

域名

然后输入域名。

输入域名

接下来会确定网站的目录,网站目录不存在的话会创建目录。也可以输入已经存在的目录或要设置的目录(注意如要输入必须是全路径即以/开头的完整路径!!!)。不输入直接回车的话,采用默认目录:/home/wwwroot/域名

网站目录

然后是询问要不要开伪静态。伪静态可以使URL更加简洁也利于SEO,如程序支持并且需要设置伪静态的话,如启用输入y,不启用输入n。

伪静态

然后还要选择伪静态的预设模板,默认是other,直接回车即可。

选择模板

然后会询问要不要开启日志,如启用日志输入y,不启用输入n回车。

日志

如果启用日志,会询问要设置的日志的名称,默认日志目录为:/home/wwwlogs/ 默认文件名为:域名.log,直接回车即可。

log

回车确认后,会询问是否添加数据库和数据库用户。

数据库

如果添加数据库,则会验证MySQL的root密码,这就是前面说过要记下来的密码。

密码

密码验证正确后,会要求输入数据库名称。

数据库名称

然后会让你输入这个数据库的密码。

数据库密码

然后会询问是否创建FTP账户。

创建FTP账户

然后输入FTP用户名和密码。

用户名和密码

然后会询问你是否要添加SSL Certificate,选择不添加。

SSL

(如果选择添加,需要选择是自带认证还是申请免费的认证,选择免费申请。然后输入你的邮件地址,进行申请。)

Certificate

最后一步,按任意键启动虚拟主机。

最后一步

虚拟主机建立成功后,会有这样的提示。

建立成功

第七步,获取Carbon Forum论坛程序

这是一个国产的轻论坛程序,目前作者还在维护中。

直接到官网Carbon Forum下载即可。

下载后将会得到一个ZIP文件,直接解压,得到Carbon-Forum-master文件夹。

第八步,通过FTP上传网页程序

FTP客户端有很多,我使用Yummy FTP Pro来进行。

链接协议选择SFTP,然后输入服务器的公网IP,root和主密码。

另外在Local Path栏设置本地文件夹,可以提前把要上传的内容(Carbon-Forum-master文件夹)放在这个文件夹里。

Yummy FTP Pro

点击连接,链接成功后就能看到文件目录了。

连接成功

你可能会发现右边(服务器端)窗口是空的,这没有关系,因为文件夹下面现在还没有内容。

上传

现在把下载好的Carbon-Fourm文件夹打开,将其中的内容上传到服务器上。直接拖,或者点击上传按钮皆可。

上传完毕

检查

上传完毕后到Terminus里面查看到底有没有上传成功。依次执行下列命令。

cd /home/wwwroot
ls
cd 111.11.1.1
ls -l

可以看到文件已经在这个目录下了。

文件已经在这里了

所有权

上传网站后建议执行下列语句,对网站目录进行权限设置。/path/to/dir替换为你网站目录。

chown www:www -R /path/to/dir

比如我的网站,就输入下面的语句。

chown www:www -R /home/wwwroot/111.11.1.1

为了安全可以将一些不需要PHP运行的上传文件之类的目录去掉执行权限,参考:http://www.vpser.net/security/lnmp-remove-nginx-php-execute.html

第九步,修改nginx.conf

为了安装这个论坛程序,这一步是必须的。

具体说明在这里:Carbon Forum安装和升级说明

我们还是用Yummy FTP Pro,通过sftp登录服务器(账号密码与ssh相同),然后打开下面这个目录。

/usr/local/nginx/conf/vhost

可以看到目录下面已经有了111.11.1.1.conf

我们把这个文件复制到本地,然后用编辑器打开。

复制到本地

然后我们找到之前下载到的Carbon-Forum-master文件夹,打开里面的nginx.conf文件。

然后将这个文件里面的全部内容复制,到111.11.1.1.conf中,粘贴到下面这行语句的下方。

include enable-php.conf;

粘贴

保存这个文件,然后在sftp中将它上传到服务器,替换原有的111.11.1.1.conf文件。

替换完成

然后输入下面的语句,重启nginx服务。

lnmp nginx restart

第十步,进行程序的安装

在浏览器中打开

http://你的域名/install

带入到我的域名,即是

http://111.11.1.1/install

安装完成后第一个注册用户会自动成为管理员。

打开之后的安装界面如下。

安装界面

这里的密码全都记好,不要忘记。

点击安装,开始安装。

然后就会弹出安装成功的提示了。

安装成功

因为安装后第一个注册的用户会自动成为管理员,所以记得要及时注册。

用户注册

下面是注册界面了。

Register

早速体验行!

赶紧发了一个帖子www

Hello, world!

以上!这个论坛就建立完成啦

然后该休息一下了www

Responses