从零搭建LNMP环境

我的博客目前迁移到reetsee.com了,目前在google、360、bing等搜索引擎直接搜索『吹水小镇』就可以了,以后文章优先更新到吹水小镇的博客部分。

注意:要获得更好的浏览效果包括代码、图片、字体,请查看原文:从零搭建LNMP环境。这个链接即便你用手机打开也是排版很漂亮的。

转载请注明: 吹水小镇 | reetsee.com
原文链接地址: 从零搭建LNMP环境



画外音——或许这篇文章叫「搭建LNMP教程」会更好?lnmp_logo「LNMP」即Linux,Nginx,MySQL,PHP。我个人的理解是:

  • Linux就是环境所在的操作系统;
  • Nginx则是一个「高性能的HTTP和反向代理服务器」,官网地址:http://nginx.org/
  • MySQL则是一个方便地对数据进行增删改查的数据库管理系统,官网地址:http://www.mysql.com/
  • PHP则是用来处理具体请求的脚本语言,官网地址:http://www.php.net/
运用这4件工具,最简单直接的一个用途就是搭建一个网站,例如现在我的个人网站就是在「LNMP」上面跑的,然后 博客(我使用WordPress)、 新闻等其它内容也可以放到网站中。其实在Nginx开始受到关注之前,「LAMP」是搭建网站比较流行的选择,即 LinuxApacheMySQLPHP。本文的目的就是介绍一下如何从零开始搭建一个LNMP环境,然后初步让一个网页能够通过浏览器走HTTP请求访问。这里我们使用的 不是LNMP的一键安装包,而是难度稍微高「一点」的逐个安装,这样做或许能让你对这个环境的细节有更好的理解,而且对各部分的定制程度可以达到最高。

1 开始前的一些Tips

下面给出的操作步骤对于Linux来说是通用的,缺什么就安装什么,只是不同的Linux所输入的内容可能有些不同而已。我是直接在 阿里云ECS上面操作的,Linux的版本是CentOS 6.3 64位,各位可以直接在阿里云的首页点击右上角的「免费试用」,选择CentOS 6.3 64位系统,然后通过SSH直接登陆到主机进行操作,这样是最方便的。另外一个选择是自己安装一个Linux然后在上面进行操作,这种方法也可以。现在我也下载了一个CentOS 6.5 64位把下面的步骤走一遍。在自己的系统上操作有个麻烦的地方:
  1. 如果你把系统搞坏了那么恢复起来可能要费点事,直接重装也需要一些时间,哪怕是在虚拟机上面操作,但是ECS上面直接点击重置就可以了;
  2. 在下载一些系统的依赖包时(例如使用wget命令下载MySQL)如果你的网速比较慢那么下载会比较久,但是阿里云ECS下载这些资源的速度嗖嗖地,非常快就下载完了。
有不少人会使用Ubuntu,我之前也使用过Ubuntu搭建LNMP,最终搭建成功了,只是安装依赖时有一些些麻烦,下面会讲到。在文中我会在必要地方添加图片,但是会以文字为主,因为实在没有太多图片好添加。其实下面的所有内容都是按照这个这几个流程写的:
  1. 要安装什么程序?——PHP,NGINX,MYSQL;
  2. 安装的这个程序,在编译时需要哪些扩展或者哪些库?(例如PHP安装OpenSSL,NGINX安装openssl);
  3. 下载这些扩展和库,下载完压缩包后解压缩得到这些库的代码,或者进一步地编译这些库并安装到一个指定的路径下;
  4. 编译程序,将需要的库、扩展添加到编译选项中,指定程序的安装路径;
  5. 安装完成,测试。
因此下面的内容就是上面这5步的循环。那么,开始吧。

2 安装Linux

首先最基本的自然是你需要安装了Linux的操作系统,如果你只是尝试一下,可以安装在虚拟机里面,或者如果你已经在使用阿里云ECS那么系统就已经安装好了。为了重新走一次所有的步骤, 我下载并在虚拟机安装了 CentOS 6.5 64位的系统。 当然你也可以使用其它的Linux发行版例如Ubuntu等,在接下来要输入命令的地方不同的Linux按需进行修改即可。在开始前,先安装一些通常来说应该已经有的组件,不过以防没有可以检查并安装一下。对于使用CentOS的用户在root权限下输入命令:
yum -y install gcc automake autoconf libtool make gcc-c++ glibc
对于使用Ubuntu的用户, 如果没记错则是将「yum -y install」替换为「sudo apt-get install」就可以了,原则就是把上面列出来的「gcc automake autoconf libtool make gcc-c++ glibc」这几个东西安装一下。

3 安装PHP

为了开启PHP的一些功能(例如对png格式的支持等),首先需要安装一些库,CentOS命令如下:
yum -y install libmcrypt-devel mhash-devel libxslt-devel \
libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel \
zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel \
ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel \
krb5 krb5-devel libidn libidn-devel openssl openssl-devel
Ubuntu 12.04(其它版本我没有测试过)用户在这里可以先不行动,因为我试过即便在这里使用「sudo apt-get install ...」,后面在编译PHP的时候还是会提示找不到对应的库,原因可能是编译时的默认查找路径不正确。解决办法从理论上来说有2个:
  • 找到PHP编译时查找库的路径,然后修改为「sudo apt-get install ...」安装后的路径;
  • 手动下载其中缺少的库,然后你自己安装到自己知道的一个目录,在编译PHP时手动指定这个库的路径(我当时用的就是这种方法,累死不偿命啊,建议能折腾的研究一下第一个方法,然后把解决方案共享出来)。
库已经安装好了, 要注意的是在编译PHP时可能会说缺少其中的几个库,到时候请各位在百度(或者谷歌)搜一下这个库的官网, 使用wget下载然后解压然后安装到你指定的一个目录,最后在编译PHP时指定这个库安装后的路径即可。为了方便演示,接下来碰到这个问题时,我默认使用以下的几个路径:
  • 所有下载的压缩包放在「/home/reetsee/download/」这个文件夹下;
  • 所有的压缩包解压后的路径也是「/home/reetsee/download/」,即如果压缩包名字是「openssl-1.0.1e.tar.gz」,那么解压后「/home/reetsee/download/」下会有一个名字为「
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值