Nginx的编译与安装需要依靠pcre-devel与openssl-devel这两种基本的依赖包如果安装的是这两种基础依赖包的话,那么它将会自动执行安装程序所要求的全部操作,而不是只对其中一个或几个功能进行调用。这样就可以大大提高工作效率因此,Nginx安装前,有必要检查这个依赖包的安装情况
PCRE(opensnewwindow,PerlCompatibleRegularExpressions,Perl兼容正则表达式的意思),安装PCRE就是要使Nginx能够支持有URL重写的Rewrite,没有安装的话Nginx就不能利用Rewrite模块功能
采用yum的安装方法进行PCRE安装:
[root@edaa2f912abf/]
yum装完之后查看装完的结果:
[root@edaa2f912abf/]#rpm-qapcrepcre-develpcre-8.32-17.el7.x86_64pcre-devel-8.32-17.el7.x86_64.
使用yum安装openssl-devel:
[root@edaa2f912abf/]
查看yum的安装效果:
[root@edaa2f912abf/]#rpm-qaopensslopenssl-developenssl-devel-1.0.2k-25.el7_9.x86_64openssl-1.0.2k-25.el7_9.x86_64.
当保证Nginx编译安装过程中依赖的pcre-devel、openssl-devel等软件已安装完成时,即可下载Nginx源码编译安装由于该工具是一款开源软件,所以用户可自行配置相关参数并通过第三方插件进行调试运行。当需要对代码进行修改时,只需将其添加到目标文件即可完成。使用起来非常方便Nginx源码可在Nginx网站http://nginx.org上查询对应版本源码下载地址:
http://nginx.org/download/nginx-1.16.0.tar.gz
下载Nginx源码:
[root@edaa2f912abf/]#mkdir-p/home/tools/&;&;cd/home/tools[root@edaa2f912abftools][root@edaa2f912abftools]total1012K-rw-r--r--1rootroot1009KApr232022nginx-1.16.0.tar.gz.
增加为nginx用户服务的用户:
[root@edaa2f912abftools]
解压软件包:
[root@edaa2f912abftools]#tarxfnginx-1.16.0.tar.gz.
Ngixn源码的编译和安装:
[root@edaa2f912abftools][root@edaa2f912abfnginx-1.16.0][root@edaa2f912abfnginx-1.16.0][root@edaa2f912abfnginx-1.16.0]
其中可选prefix是对安装路径进行配置,若没有对选项进行配置,则可执行文件在安装完成时默认置于/usr-local-bin中,库文件在安装完成后默认置于/usrs-local.lib中,配置文件在安装完成之后默认位于/usrs.local-etc中,而其他资源文件则置于/usr.local.share中,且各类文件较为零散为方便集中管理某软件的多个文档,可对–prefix进行组态,例如:.../configure-prefix+application+nginx+1.16.0可将全部资源文档置于/application或nginx或1.16.0路径上而不被打散这样就很方便对各个不同类型的资源进行管理和使用。同时还能防止由于用户操作不当而使某些资源被占用,造成系统启动困难等问题。这也为以后系统的升级提供了便利使用过高达prefix方案还有一个优点,那就是卸载软件或者移植软件。在某安装软件已经不需要的情况下,只需要简单删除安装目录就能将软件卸载干净;而移植软件则只需要将整个目录复制到其他机器上(同一操作系统)
创建nginx应用的软链接:
[root@edaa2f912abfnginx-1.16.0]
设置软件链接这一操作并非非此即彼,其主要目的在于后续nginx的更新,而用户的操作不会受到任何影响另外,Nginx系统中没有对目录进行管理功能,所以只能通过设置系统管理员来实现对目录的管理和维护。而在其他一些应用场景下,可以直接创建或修改目录对普通用户来说,用nginx创建的目录是/application/nginx.无论随后怎么对Nginx版本进行升级,只要在最新版本的Nginx目录和统一版本/applications/nginxs目录之间创建一个新软链接
在开始之前,为避免报错误,首先查看配置文件的语法:
[root@edaa2f912abftools]nginx:theconfigurationfile/application/nginx-1.16.0//conf/nginx.confsyntaxisoknginx:configurationfile/application/nginx-1.16.0//conf/nginx.conftestissuccessful.
推出Nginx服务:
[root@edaa2f912abftools]
看Nginx服务的成功启动情况:
[root@edaa2f912abftools]#netstat-lntup|grpenginxtcp000.0.0.0:800.0.0.0:*LISTEN3351/nginx:master.
表示已开机成功,开启浏览器进入http://127.0.0.1/查看nginx网页信息