Linux下搭建Nginx运行环境详细教程

timo-nbktp 1年前 ⋅ 1230 阅读

1 下载Nginx安装包

下载链接:

免费开源版的Nginx官方下载链接:http://nginx.org

可以根据实际情况,下载合适的版本,本文中,以稳定版本1.18.0为例,介绍下Linux下Nginx的安装过程。

商业版本的Nginx下载链接:http://www.nginx.com

2 安装Nginx

2.1 安装Nginx依赖的库

Nginx的安装,需要Linux下安装相关的几个库,否则Nginx配置和编译时会出现错误。
nginx依赖以下模块:gzip模块需要zlib库、rewrite模块需要pcre库、ssl 功能需要openssl

使用以下命令,安装依赖库:
yum install gcc zlib zlib-devel pcre pcre-devel openssl openssl-devel -y

参数解释: gcc编译相关,openssl加密算法相关,xx-devel表示可以进行二次开发
Nginx可以进行二次开发,我们可以修改它里面的东西或者扩展一些东西

出现以上界面,说明基础依赖安装完成。

2.2 上传安装包并解压

执行以下命令进行解压:
tar -zxvf nginx-1.18.0.tar.gz

2.3 使用configure配置Nginx

  • 切换至解压后的nginx主目录
    使用命令:
    cd nginx-1.18.0

  • 在nginx主目录nginx-1.18.0下执行命令:
    ./configure --prefix=/usr/local/nginx --with-http_ssl_module

(其中--prefix是指定nginx安装路径,这里使用的源码包安装方式,解压的是源码,安装位置使用--prefix指定)

使用help命令可以查看configure命令帮助文档: ./configure --help

2.4 执行编译命令

在nginx主目录nginx-1.18.0下执行以下命令进行编译:
make

c语言编译打包完成后,会在xxx/nginx-1.18.0/objs下生成一个nginx可执行程序,此时,在/usr/local下还没生成nginx安装目录

2.5 真正的安装Nginx

执行以下命令进行安装:
make install

这一步骤之后,才是真正意义的完成了Nginx的安装,因为这一步,才会在刚才--prefix指定的安装路径/usr/local下,生成Nginx相关的目录

至此,Nginx就安装完成了。

3 Nginx常用命令总结

3.1 启动Nginx

  • 默认方式启动

进入可执行程序目录下:
cd /usr/local/nginx/sbin

直接执行Nginx二进制程序:
./nginx

也可以使用命令,直接启动:
/usr/local/nginx/sbin/nginx(这种方式,默认使用/usr/local/nginx/conf/nginx.conf这个配置文件启动)

 

  • 指定配置文件的方式启动

使用-c参数指定配置文件:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

3.2 停止Nginx

  • 快速地停止服务

使用以下命令,快速停止Nginx服务:
/usr/local/nginx/sbin/nginx -s stop

使用-s stop可以强制停止Nginx服务,-s参数是向正在运行的Nginx服务发送signal信号量,Nginx程序通过nginx.pid文件,得到master主进程的进程id,再向运行中的master进程发送TERM信号来快速地关闭Nginx服务。

获取master id,使用命令:ps -ef | grep nginx
使用kill命令,强制关闭Nginx服务:
kill -TERM 主pid 或者kill -INT 主pid

可以通过kill命令直接向nginx master进程发送TERM或者INT信号,效果是一样的

 

  • 优雅地停止服务

使用以下命令,优雅的关闭Nginx服务:
/usr/local/nginx/sbin/nginx -s quit 或者 kill -QUIT 主pid

如果希望Nginx服务可以正常地处理完当前所有请求之后再停止服务,那么可以使用这种优雅的方式停止服务。

3.3 刷新Nginx服务的配置

使运行中的Nginx服务刷新(重读)配置项并生效:

/usr/local/nginx/sbin/nginx -s reload

reload --重新加载,reload会重新加载配置文件,Nginx服务不会中断。而且reload时会测试conf语法等,如果出错会rollback用上一次正确配置文件保持正常运行。

总的来说就是:使用-s reload参数可以使运行中的Nginx服务重新加载nginx.conf配置文件,底层其实是先优雅关闭nginx服务,然后重新加载配置文件并启动。

3.4 查看Nginx帮助文档

查看nginx的更多参数的使用,可以使用以下命令查看api帮助文档:
./nginx -h 或者 ./nginx -?

-h 或者 -? 参数会显示nginx命令支持的所有命令行参数

3.5 显示Nginx版本信息

使用-v参数显示Nginx的版本信息:
/usr/local/nginx/sbin/nginx -v

使用-V参数显示更多信息:
/usr/local/nginx/sbin/nginx -V

3.6 检查Nginx配置文件是否正确

使用以下命令:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t

测试配置选项时,使用-q参数不把error级别以下的信息输出到屏幕:
/usr/local/nginx/sbin/nginx -t -q

3.7 日志文件回滚

使用以下命令进行日志的重新生成:
/usr/local/nginx/sbin/nginx -s reopen

使用-s reopen参数可以重新打开日志文件,再重新打开时就会生成新的日志文件,这样使得日志文件不至于过大,nginx日志没有切分,导致日志文件就超级大,不利于排查问题。

注意:操作前需要先把当前日志文件改名或转移到其他目录中进行备份,然后再进行日志的重新生成。

好啦,Nginx安装教程就到这里了。

 

--end--

 

版权 本着开源共享、共同学习的精神,本文转载自 https://blog.csdn.net/smilehappiness/article/details/106663758 , 如果侵权之处,请联系博主进行删除,谢谢~