在阿里云服务器(ECS)上从零开始搭建nginx服务器

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介:

  本文介绍了如何在阿里云服务器上从零开始搭建nginx服务器。阿里云服务器(ECS)相信大家都不陌生,感兴趣的同学可以到http://www.aliyun.com/product/ecs去购买,或到体验馆去体验(半个月有效期)。至于如何注册、管理ECS这里就不详细介绍了。因为官方文档已经写的很清楚了。如果还不清楚,打咨询电话询问。

现在假设你已经拥有了阿里云服务器,ip是139.128.33.11(假的,读者需要换成自己的ip地址)。并且没有选择任何安装包。现在ECS是完全空的,除了必须的Linux系统外,其他什么都没有。还有一点,本文选择的是Ubuntu Linux14.04 64位版本。Linux比较节省内存,因为并没有GUI部分,纯控制台操作(看命令行头疼的同学请绕道)。

本文只安装nginx服务器,后面的文章会配置其他环节,如PHP、Java、MySQL等。

在安装之前需要完成如下两项工作。

  1. 1.   找一个工具上传文件(如nginx安装包)

  2. 2.   连接到服务器的Console上,以便执行命令

       由于现在服务器还是空的,所以没有ftp服务启动,因此,只能用sftp,至于什么是sftp,如何用sftpSSH File Transfer Protocol),自己到网上搜索。总之,sftp使用了SSH协议,默认端口号是22。用法和ftp类似。大多数ftp客户端都支持sftp。谁便找一个支持sftp的工具即可。然后利用ECS的用户名(root)和密码连接sftp即可。

       至于连接到服务器的Console上,找一个SSH客户端即可。例如,我在Mac OS X上,直接执行sudossh 139.128.33.11即可。这时系统会要求输入OS X管理员密码,通过后会要求输入ECS的root用户密码,如果输入正确,就会进入ECS Console。并且输入如下的欢迎信息。


Welcome toUbuntu 14.04.2 LTS (GNU/Linux 3.13.0-32-generic x86_64)

*Documentation:  https://help.ubuntu.com/

Welcome toaliyun Elastic Compute Service!


这两项工作都搞定后,需要按如下几步进行操作。

 

PS:下面的所有的命令都是在ECS Console中执行的。

 

第1步:安装pcre

      由于nginx的rewrite需要pcre library,所以首先需要在Linux上执行如下命令安装pcre(下面的命令只针对Ubuntu Linux,其他Linux版本需要使用其他命令)。

1
apt-getinstall libpcre3 libpcre3-dev

第2步:下载和上传nginx安装包

         我们可以通过apt-get安装nginx,不过并不是最新的,对于有强迫症,一定要安装最新版本的同学,可能apt-get并不适合,所以可以直接从官网下载nginx的最新源代码包,安装编译后的版本即可。

读者可以到http://nginx.org/en/download.html 下载nginx的最新版。目前是1.9.3。

下载黑框中nginx的即可。

wKioL1XBiY2i70fdAAFxI_lnoZo175.jpg

    下载完后,利用sftp工具上传到ECS上。如果没有购买外挂硬盘,上传到系统盘也可以。Linux20GB系统盘。还剩下18GB左右,足够做实验了。

现在使用下面的命令解压nginx安装包

1
tar  -xzf nginx-1.9.3. tar .gz

解压后的目录是nginx-1.9.3。现在进入该目录。

第3步:安装相应的library

    由于编译nginx要使用http_stub_status_module和http_ssl_module,所以需要安装zlib和OpenSSL。

使用下面的命令安装zlib。

1
apt-get  install  zlib1g  zlib1g.dev

使用下面的命令安装OpenSSL。

1
apt-get  install  libssl-dev

第4步:使用OpenSSL源代码

        如果编译时出错,可能的原因是OpenSSL的问题,所以最稳妥的方式是将OpenSSL源代码和nginx源代码一同编译。读者可以到https://www.openssl.org/source下载最新的OpenSSL源代码。下载后,用sftp工具上传到ECS上。然后使用tar解压。假设解压后的目录为/usr/local/openssl。

第5步:隐藏nginx的版本

     尽管这一步不是必须的,不过为了安全,在编译nginx之前,通常会隐去nginx的版本,这样也可以给攻击者带来一定的麻烦。

现在进入<nginx源代码根目录>/src/core,然后用vi打开nginx.h头文件,修改前的代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef _NGINX_H_INCLUDED_
#define _NGINX_H_INCLUDED_
#define nginx_version      1009003
#define NGINX_VERSION      "1.9.3"  
#define NGINX_VER          "nginx/" NGINX_VERSION
  
#ifdef NGX_BUILD
#define NGINX_VER_BUILD    NGINX_VER " (" NGX_BUILD")"
#else
#define NGINX_VER_BUILD    NGINX_VER
#endif
#define NGINX_VAR          "NGINX"
#define NGX_OLDPID_EXT     ".oldbin"
#endif /* _NGINX_H_INCLUDED_ */
修改后的代码如下:
#ifndef _NGINX_H_INCLUDED_
#define _NGINX_H_INCLUDED_

修改后的代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
#ifndef _NGINX_H_INCLUDED_
#define _NGINX_H_INCLUDED_
  
#define nginx_version      1009003
#define NGINX_VERSION      ""
#define NGINX_VER          "super" NGINX_VERSION
#ifdef NGX_BUILD
#define NGINX_VER_BUILD    NGINX_VER " (" NGX_BUILD")"
#else
#define NGINX_VER_BUILD    NGINX_VER
#endif
  
#define NGINX_VAR          "super"

#define NGX_OLDPID_EXT     ".oldbin"

第6步:配置nginx

     编译Linux/OS X下的源代码,基本都一个套路,先configure,然后make install。如果PATH没有设置“.”,还需要使用“./configure”。

现在进入nginx源代码根目录,然后执行如下的命令

1
. /configure   --prefix= /mnt/disk1/nginx--with-http_stub_status_module  --with-http_ssl_module --with-openssl= /usr/local/openssl

     其中“/mnt/disk1/nginx”表示要安装到的目标目录。  “ /usr/local/openssl”是OpenSSL源代码目录。这样nginx会和OpenSSL一同编译。

第7步:编译nginx

如果前几步都没问题,执行make install编译安装nginx。编译好后,会将目标文件都放到/mnt/disk1/nginx目录中。

第8步:检查配置文件是否正确

进入/mnt/disk1/nginx/sbin目录,然后执行nginx -t   如果输入如下信息,表明配置文件是正确的(每次修改配置文件后,启动nginx服务之前,最好都执行一下这个命令)。

nginx: the configuration file/mnt/disk1/nginx/conf/nginx.conf syntax is ok

nginx: configuration file/mnt/disk1/nginx/conf/nginx.conf test is successful

 

第9步:启动nginx服务

进入/mnt/disk1/nginx/sbin目录,执行nginx命令即可启动nginx服务。如果发现80端口已经被占用,可能是nginx服务已经启动。执行pkill nginx即可杀掉nginx服务。可以使用ps -ef | grep nginx命令查看内存中是否还有nginx进程。

 

第10步:测试nginx服务

现在打开浏览器,在地址栏输入http://139.128.33.11 如果输出如下图的信息,表明nginx已经配置成功。

wKiom1XBiLPC5h4JAAD8s5fZZIw459.jpg

       现在随便输入一个path。如http://139.128.33.11/abcd 由于该路径不存在,所以会输出404错误,不过由于nginx版本已经隐去,所以只会看到如下图的输出信息。

wKiom1XBiNKwDGBkAABoHMWayN0152.jpg










 本文转自 androidguy 51CTO博客,原文链接:http://blog.51cto.com/androidguy/1681846,如需转载请自行联系原作者


相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
弹性计算 监控 安全
阿里云ECS云服务器推荐配置,选择流程
阿里云ECS云服务器推荐配置,选择流程,阿里云服务器配置选择方法包括云服务器类型、CPU内存、操作系统、公网带宽、系统盘存储、网络带宽选择、安全配置、监控等,阿里云百科分享阿里云服务器配置选择方法,选择适合自己的云服务器配置
|
1月前
|
弹性计算 缓存 测试技术
阿里云ECS云服务器2核4G能支持多少人同时访问?2核4G5M并发量评测
阿里云ECS云服务器2核4G能支持多少人同时访问?2核4G5M并发量评测,2核4G服务器并发数性能测试,阿小云账号下的2核4G服务器支持20人同时在线访问,然而应用不同、类型不同、程序效率不同实际并发数也不同,2核4G服务器的在线访问人数取决于多个变量因素
|
2月前
|
存储 弹性计算 安全
ECS快照问题之服务器无法启动如何解决
阿里云ECS用户可以创建的一个虚拟机实例或硬盘的数据备份,用于数据恢复和克隆新实例;本合集将指导用户如何有效地创建和管理ECS快照,以及解决快照过程中可能遇到的问题,确保数据的安全性和可靠性。
|
7天前
|
弹性计算 应用服务中间件 Linux
阿里云ECS服务器上从零开始搭建nginx服务器
阿里云ECS服务器上从零开始搭建nginx服务器
|
1月前
|
域名解析 弹性计算 数据可视化
如何使用云服务器ECS搭建网站?阿里云云服务器ECS部署网站新手教程
本文介绍了在阿里云ECS上自助建站的流程。建站方式包括自助建站、模板建站和定制建站,适合个人或小企业用户。建站步骤涉及准备服务器、配置安全组规则、部署网站、购买和备案域名以及解析域名。此外,文章还提及了产品计费和常见问题,提供相关服务如架构设计、迁云服务和基础设置服务等。
381 0
|
1月前
|
弹性计算 缓存 数据库
2024年阿里云2核4G服务器一年多少钱?轻量165元,ECS云服务器199元
2024年阿里云2核4G服务器一年多少钱?轻量165元,ECS云服务器199元
|
1月前
|
弹性计算 缓存 数据库
2核4g服务器云服务器ECS-阿里云优惠活动报价
2核4g服务器云服务器ECS-阿里云优惠活动报价,阿里云2核4G服务器多少钱一年?2核4G配置1个月多少钱?2核4G服务器30元3个月、轻量应用服务器2核4G4M带宽165元一年、企业用户2核4G5M带宽199元一年。可以在阿里云百科查看当前最新2核4G服务器精准报价、优惠券和活动信息
|
1月前
|
存储 弹性计算 ice
阿里云ECS云服务器怎么样?2024年阿里云ECS云服务器配置价格表
阿里云云服务器ECS的价格表因不同的配置、实例类型、地域和促销活动等因素而有所不同。以下是一些常见的阿里云云服务器ECS价格表信息: 1. 按量付费:按量付费是一种灵活的计费方式,您可以根据实际需求选择实例规格、操作系统、存储和带宽等配置,并按照实际使用情况进行计费。按量付费的价格通常比预付费要高一些,但灵活性更高,适合短期或临时使用云服务器的用户。
|
2月前
|
弹性计算 固态存储 大数据
2024年阿里云服务器租用费用_阿里云云服务器ECS价格表(2核2G - 8核64G)
阿里云服务器分为云服务器ECS和轻量应用服务器,云服务器s6公网带宽可选1M到5M,系统盘40G起可选高效云盘、SSD云盘或ESSD云盘,阿里云服务器租用费用,轻量应用服务器和云服务器ECS优惠价格表,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服务器30元3个月,幻兽帕鲁4核16G和8核32G服务器配置,云服务器ECS可以选择经济型e实例、通用算力u1实例、ECS计算型c7。
|
2月前
|
弹性计算 大数据 测试技术
2024年阿里云服务器价格配置表汇总(轻量服务器、ECS服务器、游戏服务器、GPU服务器)
今天整理了阿里云服务器价格,包含了阿里云轻量应用服务器、阿里云ECS云服务器、阿里云游戏服务器、阿里云GPU云服务器。阿里云服务器租用费用,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服务器30元3个月,幻兽帕鲁4核16G和8核32G服务器配置,云服务器ECS可以选择经济型e实例、通用算力u1实例、ECS计算型c7、通用型g7、c8i、g8i等企业级实例规格。
161 0

热门文章

最新文章