在互联网网站开发领域,有一个名词,大家一定不陌生,那就是LAMP,经典的Web服务器环境,由Linux+Apache+MySQL+PHP组成,,后来,一个名叫Nginx的Web服务器开源出来了,因其更高的并发性,系统资源利用率更高,在市场上的占有率也逐步提升,在Netcraft网站上看到的数据,在1995年到2015年间,每种服务器的使用趋势:

  

  可以看到,Apache依然是最受欢迎的Web服务器,Nginx属于后起之秀,很快占有市场。Nginx的几大特点如下:

  1. 对静态资源的高速并发缓存和访问

  2. 可作为反向代理或负载均衡服务器

  3. 缓存服务器和邮件服务代理

  4. 资源消耗更小

  5. ......

  LNMP也在逐步走进各个互联网公司的使用场景,因此,LNMP平台搭建系列就介绍一下LNMP的搭建,本篇为Linux系统安装篇。


  Linux系统的由来、发展之类的文章,网上、书上很多,这里就忽略了,直接开始操刀安装Linux系统吧~

  1. 系统选择:

    目前服务器端使用较多的操作系统为CentOS版本的Linux系统,且6.5版本居多,因为我之前一直使用的7.0版本64位的,也在编译安装各种软件踩了不少坑,就用CentOS7.0_x86_64位的吧,都大同小异,只是在权限配置文件路径方面有点差异,都可以使用,并且7.0版本也发布几年了,可以在新的项目引入,获取在老项目逐步引入,毕竟,稳重为大。

  2. 安装:

    安装有虚拟机方式和实际电脑方式,这里为了方便截图什么的,就使用VMWare虚拟机吧,新建虚拟机这些步骤按照提示来就行了,不难,设置好CPU、内存、硬盘大小和网络连接方式就可以了。

    新建完虚拟机后,打开虚拟机的光驱,使用加载ios文件方式来安装,如下:

    

    然后启动虚拟机:

    如果出现这个错误,升级VMWare即可:

    

    启动后出现界面如下,选择“Install CentOS 7”:

      

    选择安装过程的语言,这里使用默认的英文即可:

    

    点击“Continue”进入下一步:

    

  在这里设置一下时区:Asia/Shanghai,语言自己选择,这里默认就英文了,因为是服务器安装,这里选择最小原则,使用最简版本安装,这样安装的软件也少,开启的服务也少,这样服务器会更安全,后面使用需要什么软件我们再进行安装配置就可以了。

  然后,选择"Installation Destination"进入系统分区界面,默认会自动分区,这里选择手动分区的方式,如下:

  

点击"Done"就会进入分区界面:

  在分区模式那里现在默认选择“LVM”模式,它是Linux环境下对磁盘分区的一种管理方式,普通的磁盘分区管理方式在划分分区后就无法调整其大小,如果某个分区空间耗尽后,就需要使用符号链接到其他分区或使用分区工具调整,但是这样很麻烦,而LVM可以在无需停机情况很方便地对分区大小进行调整,这里暂时选择标准的分区模式。

  点击"+",弹出一个框进行新分区分配选择:

  

这里使用的分区方案如下(硬盘20GB):

  1. 引导分区: /boot: 250MB

  2. 交换分区:swap (注意,这个是没有挂载点的) : 物理内存的1.5倍,这里是3GB

  3. 根分区:   / : 剩余空间大小

  对于数据库服务器,加多一个分区,如/data分区会好一些,备份数据和扩展也方便。

 分区后显示如下:

  

  点击"Done"后出现如下界面:

  

  点击“Accept Changes”应用分区后返回如下界面:

  

  点击“Begin Installation”即可开始安装,如下:

  

  在安装过程中,我们需要设置一下超级管理员的账户密码和新建一个用户并设置其密码。安装完成后出现如下界面,点击“Reboot”即可:

  

  重启完成后,进入如下登录页面,因为使用的是最小安装模式,因此并没有安装图像用户界面:

  

  我们输入刚刚安装过程中新建的用户名和密码进行登录:

  

  我们查看一下它的IP地址,使用命令ifconfig:

  

  出现这个提示,我们安装一下网络工具即可 "sudo yum install -y net-tools",安装过程如下:

  

  安装完后,在查看ip就可以看到了:

  

  到这里,Linux系统的安装就完成了,后面再根据需要进行一个安全运维配置即可,如:

  1. 系统命令备份,建议在首次安装完后马上做,这样后面在监测系统出现内核感染时运行命令时使用的是安全的没被黑客修改过的命令

  2. 安装一些系统监控工具,如htop,ntopng等,可很好查看系统运行状态

  3. 关闭不必要的服务和端口,只保留需要对外开放的端口

  4. 修改ssh远程登录窗口,如果必要,使用公钥/私钥方式登录,可以防止密码保留破解。

  5. ......

  下一篇,将会介绍如何搭建基于Nginx的Web服务器。

LNMP平台搭建---Linux系统安装篇的更多相关文章

  1. LNMP平台搭建---Nginx安装篇

    在上一篇博文<LNMP平台搭建---Linux系统安装篇>中,我们安装了CentOS版本的Linux操作系统,现在,我们来安装一个Web服务器,大标题写着LNMP,其中的N就是Nginx, ...

  2. LNMP平台搭建---MySQL安装篇

    在前两篇中,安装了一个基本的Web服务器,但是只能提供静态网页查看,要做成动态网站,就必须要数据库或其他编程语言支持了,这里先介绍MySQL数据库的安装. MySQL是一个开源的数据库,在互联网行业应 ...

  3. LNMP平台搭建---PHP安装篇

    在前面三篇中,我们安装了Linux系统.Web服务器Nginx.MySQL数据库服务器,这篇就来将搭建动态网站的最后一步:PHP安装. Nginx服务器只能响应静态资源请求,对于动态资源请求就不行了, ...

  4. Linux系统下LNMP一键搭建Linux、PHP、MySQL环境(适合新手搭建linux下的web生成环境)

    一. 首先要解释一下,什么是LNMP,LNMP起源于LAMP,LAMP是Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的缩写,这里将Web服务端的Apache替换 ...

  5. 轻松学习Linux系统安装篇之fdisk命令行工具的使用

    fdisk 的介绍:          fdisk 命令是磁盘分区表操作工具:和以前Dos和windows下的分区工具功能一样:fdsik 能划分磁盘成为若干个区,同时也能为每个分区指定分区的文件系统 ...

  6. LNMP平台搭建之一:nginx编译安装

    参考博客:https://www.cnblogs.com/zhang-shijie/p/5294162.html   jack.zhang 一.环境说明 系统环境:centos6.5 [root@lo ...

  7. Linux 下LNMP环境搭建_【all】

    LNMP = Linux + Nginx + Mysql + PHP 1.0 Linux环境搭建 Linux 系统安装[Redhat] 1.1. FastCGI介绍 1.什么是CGI(common g ...

  8. lnmp平台菜鸟入门级笔记

                  LNMP平台搭建 Mysql安装  MySQL安装 回复收藏  分享    1 下载MySQL数据库l到/usr/local/src/[root@xin tmp]# cd ...

  9. LNMP环境搭建

    LNMP环境搭建 Linux + Nginx + MySQL + PHP PHP是一种脚本语言,当前中国乃至世界上使用PHP语言开发的网站非常普遍 Nginx是一个web服务软件,和apache是一类 ...

随机推荐

  1. phpcms标签云

    {pc:get sql="SELECT keyword FROM v9_keyword WHERE siteid=$siteid AND searchnums > 5 ORDER BY ...

  2. android GestureDetector 手势基础

    1. 当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(Vi ...

  3. Ngui 五种点击事件实现方式及在3d场景中点透的情况

    http://www.unity蛮牛.com/thread-22018-1-1.html ngui作为unity界面插件之一中,无疑是最好用,使用最多的了从自学unity到现在界面一直使用它 由于它的 ...

  4. 服务器如何处理http请求

    1.需求 了解服务端如何处理http请求,了解基本的处理流程 2.实战 处理http请求分为7个步骤 2.1 Tcp连接 建立一条tcp链接,(若之前不存在持久链接keep-alive),把客户端的i ...

  5. mysql 查询某个日期时间段,每天同一时间段的数据

    mysql 查询某个日期时间段,每天同一时间段的数据: SELECT * FROM t_a01_eltable WHERE DATE_FORMAT(acqtime,'%Y-%m-%d')>='2 ...

  6. 4-python学习——数据操作

    4-python学习--数据操作 参考python类型转换.数值操作(收藏) Python基本运算符 数据类型转换: 有时候,可能需要执行的内置类型之间的转换.类型之间的转换,只需使用类名作为函数. ...

  7. Python自动化之sqlalchemy关联查询

    外键关联 from sqlalchemy import ForeignKey from sqlalchemy.orm import relationship class Address(Base): ...

  8. SQL Sever2008r2 数据库服务各种无法启动的解决办法

    一.Sql Server服务远程过程调用失败解决 以前出现过这个问题,那时候是因为把实例安装在了D盘,后来D盘被格式化了.然后,这些就没了.今天早上打开电脑,竟然又出现这个问题,可是Server200 ...

  9. ssh authentication魔鬼细节--.ssh文件夹权限

    换到7后出现莫名奇妙问题,ssh验证始终不起作用. 服务器 centos7#mkdir ~/.ssh centos7#touch ~/.ssh/authorized_keys centos7#chmo ...

  10. phpcmsV9.5.8整合百度编辑器Ueditor1.4.3教程

    最近在搞phpcms视频功能,官方的视频功能实在是坑,刚开始是想将优酷的上传功能集成到ckeditor,在coding上有个项目,上传已经集成好了,还没有做上传后视频的获取和显示 项目地址:https ...