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
本文来自博客园,作者:Marydon,转载请注明原文链接:https://www.cnblogs.com/Marydon20170307/p/18246251