网站环境部署

我们使用SSH终端和FTP工具连接上Linux服务器之后,就可以对Linux服务器进行管理。这个时候会涉及到一些Linux的命令,我们会对每一行命令有详细的说明,不理解也没有关系,先直接执行命令看到效果即可。

LEMP 是由 Linux服务器、Nginx服务器代理、MariaDB/MySQL 数据库和 PHP环境 组成,也被叫做LNMP。大家了解概念即可。

apt包管理

和Windows操作系统一样,我们要实现一些功能就需要安装一些软件,Linux同样也是如此,不过Windows的软件要从应用中心下载,而Linux则通常是用命令行来下载。apt就像是Linux的应用中心一样。

大家先使用SSH终端连接上服务器之后,输入以下命令。

这个命令的意思是从软件源下载最新的软件包列表文件,update更新本地软件包缓存信息,可以保证我们下载的软件包是最新的,所以我们要经常执行这个命令。

sudo是以系统管理员的身份执行命令的意思,有时候我们执行命令会出现权限不够的情况,可以在命令前加一个sudo。

这里的apt是软件包管理工具,很多网上的资料会用sudo apt-get update,apt-get和apt差不多,使用apt-get的地方基本都是可以替换为apt的,推荐使用apt。

apt可以安装软件,当然也可以卸载软件,那apt还有哪些命令呢?我们可以使用以下命令来查看。

如何卸载软件大家可以根据说明自己来研究,这里不做硬性要求。

–help和–version是Linux非常通用、好用而且会经常使用的命令,前者会为你提供关于该软件的帮助,后者会为你提供该软件的版本。

安装Web服务器Nginx

后端开发语言(PHP、Java、Python、.net等)如果做web应用,必须借助于web服务器,才能提供Web服务。

常见的web服务器还有IIS(Windows系统)、Apache(PHP工程师使用最多)、Tomcat(Java开发工程师用的最多)。

接下来再输入以下命令,来安装Web服务器Nginx,这里的Web服务器是一个软件,一个工具,不是硬件哦。

输入该命令后,当出现:

然后在命令行里再输入Y或y即可安装nginx。
这里的install是安装的意思,我们只要知道软件的名称,就可以使用install命令安装软件,是不是非常方便?

测试Nginx是否安装成功

当我们安装完Nginx后,打开浏览器访问你的网站公网IP,也就是直接在浏览器地址栏里输入公网IP即可,应该会出现一个Welcome to nginx的英文页面,这表示你的Web服务器已经安装成功了。

这一步记得一定要测试哦,测试没有问题了,再进行下面的。

如果安装完Nginx却打不开你的网站,那很可能是你的安全组80端口没有打开或防火墙有问题。不过如果你按照操作步骤来执行,阿里云和腾讯云通常不会有这个问题。

找到网页服务器的根目录

使用FTP工具找到网页根目录

使用FTP工具连接服务器,找到网页服务器的根目录,在/var/www/html这里,在html文件目录下有一个index.nginx-debian.html网页文件,这也是为什么我们用IP或域名打开我们的网站会显示Welcome to nginx!的原因。

使用SSH命令行终端进入网页根目录

在我们的SSH命令行终端连接上服务器之后,输入以下命令就可以进入该网页的根目录了。

意思是进入当前路径下的var文件夹里的www文件夹里的html文件…

cd更改目录(文件夹)就是改变命令行工具所在的位置,这个是我们在命令行工具最常用的命令之一啦。

意思是进入当前路径下的名称为newdoc文件夹。也可以输入完整的路径,比如:

还可以输入

意思是返回当前目录的上一层。

那网页的根目录下面有什么呢?我们可以输入命令来查看

输入之后,html文件夹下面有什么文件都会被显示出来。

安装PHP

要写一个网站,可以用很多开发语言,这里我们用的是PHP,PHP是写网站最为流行而相对比较简单的后端开发语言。而MySQL则是互联网最为流行的数据库,网站里的文章、账号体系、设置等等都会需要用到数据库。

要让服务器可以解析执行PHP的代码以及连接数据库MySQL,需要安装一些软件,我们在命令行里输入以下命令即可:

碰到Do you want to continue? [Y/n] 直接输入Y或y然后按Enter即可.

安装php模块

由于我们之后需要安装的wordpress的一些功能会依赖php的以下常用模块,大家可以复制下面的命令安装这些模块。

  • php-curl:php的curl可以实现模拟http的各种请求,这也是php做网络爬虫的基础,也多用于接口api的调用
  • php-gd :GD库是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片,也可以给图片加水印
  • php-mbstring:各种语言都有自己的编码,他们的字节数是不一样的,mbstring扩展就是为确保不同编码的语言在PHP程序中能够正常显示提供解决方案(比如让网站链接支持中文)
  • php-xml : 内建的 DOM 解析器使在 PHP 中处理 XML 文档成为可能。
  • php-gettext:php通过gettext模块支持国际化(i18n),可以实现程序的多语言界面的支持

查看服务器安装了哪些软件

我们要了解一下我们的Ubuntu服务器到底安装了哪些软件,可以在命令行里面输入:

输入该命令之后,命令行窗口就会列出我们服务器上安装的软件的名称、版本以及简介。

dpkg是什么意思呢?dpkg和apt一样也是一个包管理器,只是两者有不同,dpkg可以用来安装服务器本地下载好了的软件,而apt则可以从应用中心下载软件来安装。大家可以在命令行输入

命令窗口显示的是整个应用中心有哪些软件可供下载。

以上内容我们所部署的是后端开发语言PHP的开发环境,大家在基于此来学习php的开发。如果你想学Java、Python、Node等开发语言,掌握上述的操作命令以及之后会介绍的Nginx、MySQL都是非常有必要的。Linux服务器几乎是所有开发语言实战编程的大门。

本节任务

  1. 了解如何使用apt命令安装软件,通过使用apt –help了解apt如何更新、卸载软件;
  2. 了解sudo的含义;
  3. 安装Nginx,并测试Nginx是否安装成功;
  4. 使用FileZilla找到网页服务器的根目录;
  5. 使用SSH终端工具进入到网页服务器的根目录,并能够熟练使用cd命令;
  6. 安装php以及php的一些常见模块;