安装环境为:最小化安装的centos7。


开始安装Nginx

1

2

3

4

5

6

7

8

9

10

11

创建群组

groupadd www

创建一个用户,不允许登陆和不创主目录

useradd -s /sbin/nologin -g www -M www

#下载最新版Nginx

wget -C https://Nginx.org/download/Nginx-1.7.8.tar.gz

tar zxvf Nginx-1.7.8.tar.gz

#编译基本能运行的Nginx

./configure --user=www --group=www --prefix=/usr/local/Nginx --with-https_stub_status_module --with-https_ssl_module --with-https_gzip_static_module

make

make install

如果有错误提示:

./configure: error: C compiler cc is not found

解决方法:

1

yum install gcc gcc-c++

如果有错误提示:

./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using –without-https_rewrite_module
option,or install the PCRE library into the system,or build the PCRE library
statically from the source with Nginx by using –with-pcre=<path> option.

解决方法:

1

yum install pcre-devel

如果有错误提示:

./configure: error: SSL modules require the OpenSSL library.
You can either do not enable the modules,or install the OpenSSL library
into the system,or build the OpenSSL library statically from the source
with Nginx by using –with-openssl=<path> option.

解决方法:

1

yum install openssl-devel

以上错误提示依次解决后:再一次的运行

1

2

3

./configure --user=www --group=www --prefix=/usr/local/Nginx --with-https_stub_status_module --with-https_ssl_module --with-https_gzip_static_module

make

make install

编译参数解释:

1

2

3

4

5

6

7

8

9

10

11

12

#指定运行权限的用户

--user=www

#指定运行的权限用户组

--group=www

#指定安装路径

--prefix=/usr/local/Nginx

#支持Nginx状态查询

--with-https_stub_status_module

#开启ssl支持

--with-https_ssl_module

#开启GZIP功能

--with-https_gzip_static_module

因此要顺利的通过Nginx编译安装必须安装的依赖关系有:

1

yum install gc gcc gcc-c++ pcre-devel zlib-devel openssl-devel

2、在 centos7 中为Nginx的启动、重启、重载配置添加脚本

Nginx直接启动的方法:

1

/usr/local/Nginx/sbin/Nginx

但是不是很方便,因此使用下面的脚本来控制Nginx的启动关闭重载更加合理一些。

编辑文件:vim /usr/lib/systemd/system/Nginx.service 添加下面的脚本,注意路径 !

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

[Unit]

Description=Nginx - high performance web server

Documentation=https://Nginx.org/en/docs/

After=network.target remote-fs.target nss-lookup.target

[Service]

Type=forking

PIDFile=/usr/local/Nginx/logs/Nginx.pid

ExecStartPre=/usr/local/Nginx/sbin/Nginx -t -c /usr/local/Nginx/conf/Nginx.conf

ExecStart=/usr/local/Nginx/sbin/Nginx -c /usr/local/Nginx/conf/Nginx.conf

ExecReload=/bin/kill -s HUP $MAINPID

ExecStop=/bin/kill -s QUIT $MAINPID

PrivateTmp=true

[Install]

WantedBy=multi-user.target

systemctl的一些使用方法:

1

2

3

4

5

6

7

8

9

systemctl is-enabled servicename.service #查询服务是否开机启动

systemctl enable xxx.service #开机运行服务

systemctl disable xxx.service #取消开机运行

systemctl start xxx.service #启动服务

systemctl stop xxx.service #停止服务

systemctl restart xxx.service #重启服务

systemctl reload xxx.service #重新加载服务配置文件

systemctl status xxx.service #查询服务运行状态

systemctl --Failed #显示启动失败的服务

因此,添加上面脚本后,centos7 中操作Nginx的方法有

1

2

3

4

5

6

7

8

9

systemctl is-enabled Nginx.service #查询Nginx是否开机启动

systemctl enable Nginx.service #开机运行Nginx

systemctl disable Nginx.service #取消开机运行Nginx

systemctl start Nginx.service #启动Nginx

systemctl stop Nginx.service #停止Nginx

systemctl restart Nginx.service #重启Nginx

systemctl reload Nginx.service #重新加载Nginx配置文件

systemctl status Nginx.service #查询Nginx运行状态

systemctl --Failed #显示启动失败的服务

copyright={
"作者":"墨衣夜行","本文链接":"http://my.oschina.net/letao/blog/524487"
}

在 centos 7 中编译安装 nginx的更多相关文章

  1. CentOS 8.2服务器上安装最新版Node.js的方法

    这篇文章主要介绍了CentOS 8.2服务器上安装最新版Node.js的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. Vue项目打包并部署nginx服务器的详细步骤

    vue项目开发好之后需要部署到服务器上进行外网访问,下面这篇文章主要给大家介绍了关于Vue项目打包并部署nginx服务器的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

  3. ubuntu中利用nginx部署vue项目的完整步骤

    Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行,下面这篇文章主要给大家介绍了关于ubuntu中利用nginx部署vue项目的相关资料,需要的朋友可以参考下

  4. centos+php+coreseek+sphinx+mysql之一coreseek安装篇

    这篇文章主要介绍了centos+php+coreseek+sphinx+mysql之一coreseek安装篇的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下

  5. Centos7 中 Node.js安装简单方法

    这篇文章主要介绍了Centos7 中 Node.js安装简单方法,非常不错具有一定的参考借鉴价值,需要的朋友可以参考下

  6. 使用Node.js配合Nginx实现高负载网络

    这篇文章主要介绍了使用Node.js配合Nginx实现高负载网络,Node的异步加上Nginx的反向代理在性能上实在是给力!需要的朋友可以参考下

  7. nodejs脚本centos开机启动实操方法

    在本篇文章里小编给大家整理的是关于nodejs脚本centos开机启动实操方法,有兴趣的朋友们参考下。

  8. Centos PHP 扩展Xchche的安装教程

    这篇文章主要介绍了Centos PHP 扩展Xchche的安装教程的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下

  9. Linux CentOS系统下安装node.js与express的方法

    这篇文章主要给大家介绍了在Linux CentOS系统下安装node.js与express的方法,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。

  10. CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)

    这篇文章主要介绍了CentOS 7.2 mini版本下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部