专栏首页无道编程Linux[CentOS]下编译安装Nginx 步骤

Linux[CentOS]下编译安装Nginx 步骤

介绍

Nginx 是一个很牛的高性能Web和反向代理服务器, 它具有有很多非常优越的特性:

  • Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一. 能够支持高达 50,000 个并发连接数的响应
  • Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务, 也可以支持作为 HTTP代理 服务器对外进行服务. Nginx采用C进行编写, 不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多.
  • 作为邮件代理服务器: Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器), Last.fm 描述了成功并且美妙的使用经验.

以上摘抄自网络

目前在手的服务器是一台1M的学生机,安装的服务器是Apache,以前也是相安无事,但自从流量较多后,时不时卡顿,服务器负载经常10-30。

于是切换至Nginx,不知道是不是心理作用,真的感觉不那么卡顿了。【应付并发真牛!】

下面记录下安装步骤。

安装

官网

官网下载页面:http://nginx.org/en/download.html

我们这里直接选择wget安装就是,不用先下载到Windows再上传。

安装依赖

先安装编译需要的依赖:

yum -y install pcre-devel gcc gcc-c++ autoconf automake make zlib-devel openssl openssl-devel

下载/解压Nginx

下载

wget -c http://nginx.org/download/nginx-1.16.1.tar.gz

这里选择1.16.1 稳定版 你也可以先下载好,再上传到Linux也行。

解压

tar -zxvf nginx-1.16.1.tar.gz

配置编译

配置

cd nginx-1.16.1 # 进入到解压目录
./configure --prefix=/usr/local/nginx

参数说明:

  • --prefix 用于指定nginx编译后的安装目录

这里可以安装其它模块,比如支持https(ssl)的模块,我们先一切从简即可。

显示如下内容,则说明配置没错了:

编译安装

make && make install

出现以上内容,基本就完成了。

进入安装目录,启动服务器

cd /usr/local/nginx

初始安装完成,该目录只有4个文件夹:conf html logs sbin

  • conf 配置文件目录
  • html 网站的静态文件目录
  • sbin 一些可执行文件目录,例如启动nginx就要执行该文件夹下面nginx命令

进入sbin

cd sbin

启动

./nginx -c /usr/local/nginx/conf/nginx.conf

后面的-c参数是说指定配置文件

执行成功后,并无任何显示,可用ps -ef | grep nginx查看进程:

访问服务器IP,看到如下界面,则说明安装成功了:

补充

关闭/重启

重启

nginx -s reload

关闭

./nginx -s stop

就没有进程了,还有关闭方法: 通过kill nginx的进程号 【进程即ps -ef | grep nginx命令查询出来的进程号】

软链接

目前启动、重启、关闭我们都要进入/usr/lcoal/nginx/sbin下目录通过./nginx 执行,更简单的办法就是创建一个软链接到/usr/bin/nginx

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

然后,在任意目录执行nginx都行了。

其他命令

  • 检测配置文件是否合法:nginx -t
  • 查看版本:nginx –V

添加新的模块

如上我们配置nginx时,没有加一个模块。那么如何在安装nginx后添加一个新模块呢?

步骤

1、进入nginx的源码目录

2、重新执行配置

./configure --prefix=/usr/local/nginx --with-http_ssl_module

本次我们加上了http_ssl_module模块,当然还是是安装到usr/local/nginx

3、执行make

注意!!!千万别执行make install,不要回覆盖安装!!!!!

执行make完毕后,会有一个objs目录,然后在objs目录会有一个新的nginx执行文件:

4、备份旧的nginx程序,并将新的nginx复制到旧的目录

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak #备份旧的
cp -f  nginx /usr/local/nginx/sbin/nginx # 复制新的nginx到/usr/local/nginx
# 执行上面这条复制命令,确保在objs目录,不然路径不对

5、测试新的nginx程序是否正确

cd /usr/local/nginx/sbin #进入/usr/local/nginx/sbin 
./nginx -t

6、重启nginx

./nginx -s reload

7、查看模块是否已安装

./nginx -V 

8、重启Nginx

./nginx -s quit
./nginx

到此,新增模块就完毕了!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JetBrains 家产品 自定义授权信息

    以上这篇文章包含两种激活方式:1、授权码。2、激活补丁。具体请访问以上文章,有详细教程。

    无道
  • 虚拟机Docker安装MySQL5.7并配置宿主机访问

    Windows下VMware的Linux的Docker安装MySQL5.7,并配置Windows下可连接该MySQL。

    无道
  • 播放音乐按钮(带旋转效果)

    无道
  • centos7 nginx安装/启动/进程状态/杀掉进程

        下载RPM:wget http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.10.0-1.el7...

    hailang2zh
  • CentOS7 离线安装 Nginx 1.6.2 和 反向代理

    Nginx官方文档:https://www.nginx.com/resources/wiki/start/

    静谧星空TEL
  • Centos7.3 卸载 Nginx(彻底卸载) 并重新安装 Nginx(RPM源yum安装)

    兮动人
  • windows下nginx的安装及使用

    http://nginx.org/en/download.html 下载稳定版本,以nginx/Windows-1.12.2为例,直接下载 ng...

    kirin
  • Nginx下载安装及基本命令

    高稳定 高性能 资源占用少 功能丰富 模块化结构 支持热部署 #安装(Windows10环境)

    JavaEdge
  • 自从上了K8S,项目更新都不带停机的!

    ReplicaSet确保任何时间都有指定数量的Pod副本在运行。通常用来保证给定数量的、完全相同的Pod的可用性。建议使用Deployment来管理Replic...

    macrozheng
  • Nginx 遇到的问题

    嘉美伯爵

扫码关注云+社区

领取腾讯云代金券