阿里云服务器ECS(Ubuntu)搭建nginx服务器 详细步骤教程

假设阿里云服务器的ip是192.168.1.10(读者需要换成自己的ip地址),并且没有选择任何安装包。现在ECS是完全空的,除了必须的Linux系统外,其他什么都没有。还有一点,本文选择的是Ubuntu Linux 14.04 64位版本。Linux比较节省内存,因为并没有UI部分,纯控制台操作。

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

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

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

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

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

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

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

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

Welcome to aliyun Elastic Compute Service!

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

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

apt-get install zlib1g  zlib1g.dev

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

apt-get install libpcre3 libpcre3-dev

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

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

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

下载黑框中nginx的即可。

 云服务器ECS(Ubuntu)搭建nginx服务器 详细步骤教程-阿里云ecs nginx">

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

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

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。

apt-get install zlib1g  zlib1g.dev

使用下面的命令安装OpenSSL。

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头文件,修改前的代码如下:

#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_

#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源代码根目录,然后执行如下的命令

./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://192.168.1.10 如果输出如下图的信息,表明nginx已经配置成功。


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

时间: 2024-09-18 21:22:59

阿里云服务器ECS(Ubuntu)搭建nginx服务器 详细步骤教程的相关文章

阿里云Linux-CentOS系统下-搭建Git服务器详解_Linux

 阿里云Linux-CentOS系统下-搭建Git服务器 步骤总结: 1. 安装git 首先确认服务器是否安装Git 在Xshell中输入命令:$ rpm -qa git 结果如下表示已经安装: 如果未安装就安装git 在Xshell中输入:$ yum install git 2. 创建一个git用户,用来运行git服务: 在Xshell中输入:$ sudo adduser git 此时在阿里云服务器的根目录:/home文件夹下新增一个文件夹git 按这个层级建立文件用于存放客户端用户的公钥:/

阿里云免费虚拟主机搭建WeiPHP微信开发框架图文教程

阿里云免费虚拟主机搭建WeiPHP微信开发框架   准备工作: 一.阿里云免费虚拟主机一台,领取地址:https://wanwang.aliyun.com/hosting/free/   二.微信公众号一枚   三.weiphp安装包,可以到weiphp官网下载   基础配置: 登录我们的免费虚拟主机ftp空间,上传安装好的weiphp安装包.weiphp安装包较大,上传后建议通过主机管理控制台解压.         这里需要注意的是解压缩完成后我们发现安装程序解压到xxx-master目录下,

阿里云系列——4.网站备案后续(详细步骤)---2015-11.12

网站部署之~阿里云系列汇总 http://www.cnblogs.com/dunitian/p/4958462.html   初步核审通过后 1.到这个地址选个地区进行进行拍照验证(选择相应地区)[免费拍照] http://beian.gein.cn/order/map.htm?spm=a3c00.7621338.a3c20.4.ryAMV8&baOrderId=23220367424   卧槽啊,办个备案都到处跑啊~~~~~~~~~先闪了,回来再后续......   -------------

阿里云推荐码9折购买服务器方法

阿里云八折推荐码2017年7月最新上架开始使用 详情请戳 阿里云八折推荐码优惠使用教程 阿里云推荐码活动已经无法使用了 最新优惠活动 是阿里云幸运券 领取本站专属阿里云幸运券 使用并且购买服务器满100元以上 立返现50元现金红包! 本站专属! 活动地址 阿里云幸运券领取 阿里云推荐码9折购买服务器方法  阿里云推荐码推荐码如何获取呢?如何才能获取到自己的推荐码呢? 首先让洞彻阿里云服务器最新优惠活动来给大家讲解一下. 到底是如何获取自己的阿里云推荐码的 好了废话不多说 让我们开始吧    首先

Ubuntu 搭建 LAMP 服务器

/******************************************************************** * Ubuntu 搭建 LAMP 服务器 * 说明: * 想尝试将一些东西以web的形式来进行访问.修改,于是想使用PHP来做 * 这件事情,其中使用JavaScript来自动化测试,mysql保存测试结果. * * 2016-8-4 深圳 南山平山村 曾剑锋 *************************************************

Windows搭建ngrok服务器、Linux搭建ngrok服务器、支持用户管理

                           Windows搭建ngrok服务器.Linux搭建ngrok服务器.支持用户管理 阿里云双11领代金券啦 https://m.aliyun.com/act/activity2017h5?userCode=vc31fdqr&utm_source=vc31fdqr           微信公众号.支付宝支付等开发要求有公网(外网)服务器.每次调试时,上传代码到服务器很不方便.ngrok很好的解决了这一问题.网上的文章大多是讲实通过阿里怎么在Lin

94倍性能进化!阿里云企业级ECS发布会推出最新一代异构计算产品

随着深度学习对人工智能的巨大推动,深度学习所构建的多层神经网络模型的参数空间已从百万级上升到百亿级,这对计算能力提出了新的挑战. 在8月9日的阿里云企业级ECS发布会上,最新一代异构计算通用GPU实例GN5规格族就是一款用于搭建深度学习加速平台的云端利器,相比上一代GPU计算型实例,GN5最高性能提升了整整94倍. "品学兼优"的GN5采用了NVIDIA Pascal架构旗舰级P100 GPU,可在云端按需构建敏捷弹性.高性能和高性价比的深度学习平台,让用户以最简便地方式享用阿里云遍布

AI经济发动机:阿里云新一代ECS实例全面解析

业务安全.稳定.性能.价格,一直都是用户最为关注的要点.阿里云新一代ECS实例对于软件.硬件.存储等都进行了优化,解读各类实例特点,以满足搭载Oracle.SAP HANA.异构计算.AI.边缘计算等需求. 以下为精彩视频内容整理: 100万以上,分布广泛的付费企业级客户,对云的需求不尽相同.在过去几年,我们通过不断地技术打磨和产品演进,帮助客户业务更好地发展.2014年开始很多中大型企业例如58同城开始使用阿里云.面对双11,双12和618等业务的快速增长,底层都是使用弹性计算.我们通过交流,

面向173种应用场景 阿里云发布ECS企业级19款实例

本文将的是面向173种应用场景 阿里云发布ECS企业级19款实例[IT168 云计算]8月9日,阿里云正式发布云服务器ECS企业级产品家族,目前已推出面向173种企业应用场景的19款实例.同时,阿里云也新发布了该系列产品中采用25G网络与Skylake处理器的全新一代实例. 推出企业级产品家族 面向高标准计算需求 这是阿里云首次将云服务器产品线细分出企业级产品家族,与入门级产品家族相比,这一新家族实例具备更强的计算性能与可靠性,适合于核心生产业务需求的计算. "我们对于客户场景做了深入体察,基于