🦄 2024 独立开发者训练营,一起创业!查看介绍 / 立即报名(剩余10个优惠名额) →

博客

路径(十六):在本地 CentOS 7 上搭建 Web 开发环境 — nginx 的基本配置

nginx 是由一些模块组成的,不同的模块定义了各自的一些指令(Directives),指令控制了模块的行为,在 nginx 的配置文件里可以去配置这些指令。主要的配置文件是 nginx.conf ,在这个配置文件里,会用到 include 指令,把其它地方的配置文件包含到这个主要的配置文件里,用这种方法可以让配置文件更有条理,也更容易维护。

找到 nginx.conf

在不同的系统下 nginx.conf 的位置可能不太一样,使用搜索可以很容易找到它:

find / -name nginx.conf

路径(十五):在本地 CentOS 7 上搭建 Web 开发环境 — Web 服务器 nginx

一台服务器,接待用户请求的就是 Web 服务器,是一种软件,比如 Apache,Nginx。Web 服务器除了为用户提供静态的文件,像 html,CSS,JavaScript,图像文件 等等,它还会跟脚本解释器沟通,给用户提供动态的内容。

nginx

一款受欢迎的高性能 Web 服务器。

安装 nginx

Nginx 的稳定版包含在 CentOS 7 的软件仓库里,所以可以直接用 yum 去安装它。

yum install nginx -y

路径(十四):在本地 CentOS 7 上搭建 Web 开发环境 — PHP

Web 应用如果是用 PHP 语言写的,比如 Drupal,WordPress,Laravel 等等,你需要在服务器上安装 PHP 的解释工具。你还需要让 Web 服务器可以跟 PHP 解释工具能够交流,这样 Web 服务器才能为用户输出请求的内容。在后面,我们要去安装一个叫 Nginx 的 Web 服务器,它跟 PHP 的交流方式可以使用 PHP-FPM 。

安装 PHP-FPM

先用包管理工具搜索一下仓库里有没有可以安装的 PHP-FPM。可以搜索同时包含 php 与 fpm 关键词的包,像这样:

yum search php fpm

路径(十三):在本地 CentOS 7 上搭建 Web 开发环境 — 数据库管理系统 MariaDB / MySQL

Web 应用需要数据库管理系统去管理它们的数据,这个系统可以是 MySQL、PostgreSQL,SQLite 等等。安装哪个要看你的 Web 应用的需求,有些项目可能支持多种数据库系统。下面我们先去安装一个 MySQL 。

MariaDB / MySQL

MariaDB 是 MySQL 的一个分支,是加强版的 MySQL,主要是是由社区成员贡献开发。领头开发 MariaDB 的是 MySQL 的创始人 Michael Widenius,因为 MySQL 之前卖给了 sun 公司, sun 又被 Oracle 收购,MySQL 的开发又很封闭,所以就有了社区版的 MySQL ,也就是 MariaDB,它可以完全取代 MySQL。Maria 是 Michael Widenius 女儿的名字。

CentOS 7.0 已经用 MariaDB 替换掉了 MySQL,所以默认你只能用包管理工具安装 MariaDB。

安装 MariaDB

yum install mariadb-server mariadb -y

安装完成以后,查看 mariadb 的状态:

service mariadb status

路径(十二):在本地 CentOS 7 上搭建 Web 开发环境 — 准备工作

在本地搭建一个 Web 开发环境,把你想创建的 Web 应用放到这个环境上去运行,比如你可以把 Drupal,WordPress,Laravel 放上去运行。搭建本地的开发环境可以作为学习 Web 开发的第一件要干的事。放弃所有一键安装的开发环境,比如 WAMP,XAMPP,MAMP ... 这些都过时了,听起来容易,但是对我们没什么好处。我们在本地创建一个虚拟机,虚拟机的操作系统可以跟你的 Web 应用正式运行的服务器的操作系统一样,比如可以使用 CentOS 或者 Ubuntu ,这台虚拟机用 Vagrant 去管理。

Web 应用在本地开发时候的运行环境,最好可以跟它正式运行的服务器环境,也就是生产环境一致。比如在你在生产环境,应用的 Web 服务器与数据库是两台不同的服务器,你在本地也可以模拟出这种情景,可以使用 Vagrant 为一个项目创建多台虚拟机。另外软件的版本也要保持一致,如果在生产环境上 Web 服务用 Nginx 提供,PHP 的版本是 5.6,在本地你也可以在虚拟机上安装 Nginx 的服务器,5.6 版本的 PHP。

在以后我们可能会用到 Docker,它可以把应用的各个组件分离出来,然后各自装箱(Container),比如把 Web 服务器放到一个箱子里,数据库放到一个箱子,缓存服务放到一个箱子,应用都是在这些箱子里运行的,你可以把这些箱子放到任何支持这些箱子的平台上去运行。这样你就不需要担心应用在不同的环境下的不同反应了,你知道你的应用是怎么运行的,因为是你自己装的箱,箱子里的结构是你自己设计的。

路径(十一):管理 Linux 上的软件

管理 Linux 系统上的软件可以使用包管理工具,不同版本的 Linux 用的包管理工具不太一样。比如 Redhat,Fedora,CentOS 上面用的是 yum 或者 rpm。Debian,Ubuntu 可以使用 aptitude。使用包管理工具,可以用命令,去查询,下载,安装,删除系统上的软件。下面我们在 CentOS 系统上学一下 yum 这个包管理工具,你可以用 Vagrant 在本地创建一个 CentOS 系统的虚拟机

Packages

Packages,包。包就是包裹,包裹里面包含了一些东西。这里说的包指的是软件包,它里面不仅仅包含软件本身,还有相关的文档,管理脚本,软件所依赖的其它东西的列表。包管理工具会使用包里的内容去定位,安装,升级,还有删除软件。包有不同的格式,Redhat  跟 CentOS 上用的是 .rpm 格式的包,Debian,Ubuntu 用的是 .deb 格式的包,你可以把这个格式想成是一种包装跟发行软件的标准。

路径(十):Vim

Vim 是一款神奇的文本编辑器,Vi 也是一款编辑器,Vim 是这款编辑器的改进版。我本身没有仔细学习过这款编辑器,直到昨天我想写一点关于 Vim 编辑器的用法的文章,因为以后,我们多少都得用到它。你知道这款编辑器要用一整本书去介绍它,我找到一本叫 《 Pro Vim 》,还有 《 Learning the vi and Vim Editors 》,这本书已经是第七版了。我打算读读它们,然后给大家总结点更详细的使用这款编辑器的方法,也许我会放弃 :)

如果你完全没有兴趣学一下这款编辑器,你至少要知道怎么使用这用最原始的方法去编辑或者创建一个文件。

安装

Vim 可以在很多平台上使用,Windows,Mac,Linux 都可以。

Windows

choco install vim

路径(九):用 Vagrantfile 配置虚拟机 — 网络

把虚拟机作为一台服务器,你就需要让主机(你的电脑)与虚拟机之间通过网络连接在一起,网络中的其它的设备也可能要跟虚拟机连接。这就需要去配置一下虚拟机的网络的设置,让主机或者其它设备可以访问到虚拟机。可以通过 Vagrantfile 去配置虚拟机的网络,Vagrant 提供了三种方法,端口转发,公有网络,还有私有网络。

端口转发

forwarded_port,端口转发,就是你可以设置主机与虚拟机之间的端口的映射关系,这样请求主机上的这个端口,就会把请求转发到虚拟机上的对应的端口上。比如,你想在访问主机 8080 端口时候,转发到虚拟机上的 80 端口,下面咱们去试一下,先打开 Vagrantfile ,然后搜索:

# config.vm.network "forwarded_port"

去掉这行代码最前面的 # 号, 这个配置就是端口转发,看起来是这样的:

路径(八):用 Vagrantfile 配置虚拟机 — 共享目录

用 vagrant init 命令初始化项目以后,会在你的项目的目录下面创建一个叫 Vagrantfile 的文件。虚拟机在启动的时候,会检查这个文件上的内容,你可以在这个文件里面修改跟虚拟机相关的配置,比如虚拟机的用户名,网络的配置,使用的内存大小,共享的目录等等。用你喜欢的编辑器打开项目的目录,然后再打开 Vagrantfile 这个文件。

这个文件里的内容的语法是 Ruby 语言,你不用懂 Ruby 语言,只需要简单的修改就能通过这个文件去配置虚拟机。在这个文件里,所有最前面用 # 开头的,都是被注释掉的内容,有些说明了相关的配置的使用方法,有些是配置语法本身。还有几行代码前面不带 # 号。

config.vm.box = "chef/centos-6.5"

上面的的配置说明了这个项目用的虚拟机的 Box 叫什么,我这里是 chef/centos-6.5 ,你看到的可能跟这个不太一样。

路径(七):用 Vagrant 管理虚拟机

我们需要一种更好的管理虚拟机的方法。比如你可能想创建几个 Linux 系统的虚拟机,因为你开发的项目最终是要运行在 Linux 系统的服务器上。所以,你打算在本地也用 Linux 系统为项目搭建一个开发环境,手工去安装不同类型的 Linux 操作系统太麻烦了。你需要 Vagrant。

Vagrant 可以让我们用命令直接从云上下载虚拟机的镜像,你想要什么系统都行,Centos,Ubunto ...   只需要一行命令,然后再用命令去操作虚拟机,启动,暂停,关闭,重启,你可以更方便的管理所有的在本地上电脑上的虚拟机镜像,手工去配置它们,可以再重新打包成新的镜像,方便你跟你的团队在其它的项目上重复使用。

安装 Vagrant

Vagrant 提供了一个虚拟机的管理层,虚拟机本身还是需要用到虚拟机的软件,比如 VMware,Virtualbox 等等,推荐用 Virtualbox 。使用系统的包管理工具去安装软件。

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点