linux 部署nginx

1.情景展示

在linux下,使用nginx代理前端代码,如何实现?

2.nginx下载

下载地址:https://nginx.org/en/download.html

下载成功后,将其解压到linux服务器上。(可以通过Xftp实现)

3.安装

nginx通常安装在usr/local目录下。

打开Xshell,切换到nginx-1.26.0.tar.gz所在目录。

cd /usr/local

 

解压安装包

tar -zxvf nginx-1.26.0.tar.gz

解压完成后,/usr/local目录下就会多出一个nginx-1.26.0目录。

nginx目录内容如下:

进入nginx目录

执行配置脚本

./configure --prefix=/usr/local/nginx-1.26.0

说明:--prefix是指定安装目录。

如果遇到报错“./configure: error: C compiler cc is not found”,如下图所示:

报错解决办法1:

yum -y install gcc gcc-c++ autoconf automake make

报错解决办法2:

yum -y install make zlib-devel gcc-c++ libtool openssl openssl-devel

报错解决办法3:

yum -y install gcc openssl openssl-devel pcre-devel zlib zlib-devel

gcc编译器安装成功后,再次执行:

./configure --prefix=/usr/local/nginx-1.26.0

 对nginx进行编译和安装。

make & make install

如果报错:make command not found,需要执行以下操作:

sudo yum update

等更新完成后,安装make(也可以先执行安装操作,如果安装失败再执行更新,然后再安装)

sudo yum install make

安装成功后,再次执行:

make & make install

make编译完成后nginx-1.26.0目录下将会多出一个目录:sbin。

sbin目录里面的nginx就是我们启动nginx所需的文件。

查看nginx版本

方式一

sbin/nginx -v

 

 方式二

sbin/nginx -V

说明:

安装的目的是为了在nginx根目录下生成启动nginx的文件:sbin/nginx。

当然,不安装也是可以的,我们只需将完整nginx目录拷贝至当前服务器即可。

3.启动nginx

关于nginx_home/config/nginx.conf文件的详细说明,见文末推荐。

当我们在nginx.conf文件中配置好前后端后,就需要启动nginx服务了。

启动nginx

切换到nginx所在目录并启动nginx

sbin/nginx

或者切换到sbin目录下,执行以下命令:

cd /usr/local/nginx/sbin
./nginx

nginx启动成功后,logs目录下面会多出一个文件:nginxmr.pid。

logs目录下面存放的是nginx的日志信息。

查看nginx执行日志

tail -f logs/access.log

 查看nginx错误日志

tail -f logs/error.log

按Ctrl+c,退出日志查看。

立即停止nginx

sbin/nginx -s stop

说明:

nginx服务停止后,logs目录下的nginxmr.pid文件会被自动删除。

nginx服务停止后,当我们再次执行此命令,报错信息如下:

nginx: [error] open() "/usr/local/nginx/logs/nginxmr.pid" failed (2: No such file or directory)

nginx重载

该命令用于重新加载config/nginx.conf。

当你修改了 Nginx 的配置文件(通常是 nginx.conf 或包含在其中的其他配置文件)并希望这些更改立即生效时,你可以使用 nginx reload 命令。

说明:nginx重载的前提自然是,nginx服务处于启动状态, 否则,也会提示nginxxmr.pid文件不存在。

安全退出nginx服务

sbin/nginx -s quit

quit与stop的区别

具体来说,nginx -s quit命令会通知nginx进程优雅地退出,即它会等待worker进程处理完当前请求后再停止。这样可以确保在nginx停止时,所有的请求都得到了处理,相关的信息也得到了保存。

而nginx -s stop命令则是立即停止nginx进程,无论当前是否有未处理的请求。因此,使用stop命令可能会导致一些信息没有保存。

它俩在其它方面,没有任何区别。 

4.补充说明

查看make版本

make --version

 

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

posted @ 2024-06-13 16:49  Marydon  阅读(36)  评论(0编辑  收藏  举报