1.安装
1.1将tar压缩包上传(rz -y)
1.2解压缩(tar -zxvf nginx-1.20.2.tar.gz)
1.3进入(cd nginx-1.20.2)
1.4执行configure文件,配置nginx的安装路径(./configure --prefix=/usr/local/nginx)
1.5编译(make)
1.6安装(make install)
1.7到local目录下(cd /usr/local)
1.8到nginx目录下(cd nginx)
1.9使用ll命令查看nginx的四个文件(
conf文件(nginx所有的配置文件都在conf文件下,最重要的nginx.conf也在里面) ,vim nginx.conf(:q不保存退出)
html文件 (有两个页面,50x.html(显示错误信息)和index.html(欢迎页面))
logs文件 (nginx启动成功之后就会有相应的日志文件)
sbin文件 (只有一个文件,nginx,是nginx的启动命令)
2.启动
2.1 普通启动
切换到sbin目录下
启动(./nginx) 可能启动错误(端口被占用,ps -ef | grep nginx查看占用端口,使用kill pid杀死)
没有错误提示就代表启动成功(再次使用ps -ef | grep nginx会发现启动了两个进程 一个master(主进程,用来维护所有worker进程)和worker进程(用来接收请求,完成请求转发),后期有更多个worker进程)
kill pid(换另一种方式启动)
2.2 通过配置文件启动
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf(-c代表指定配置文件)
3关闭nginx
3.1 kill -QUIT 主pid(直到所有请求相应完毕才会关闭nginx) 可能会一直等下去不关闭,也可能马上关闭
3.2 kill -TERM 主pid(类似kill -9 pid,但是kill -9 pid不会杀死子进程,也就是worker不会被杀掉)
4.重启nginx(更改配置文件之后)
./nginx -s reload
5.配置检查(检查语法错误)
启动前一般检查nginx的配置文件有没有问题(/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t),加上-t是为了检查配置文件有没有问题,如果没问题会返回success
如果有问题就去vim nginx.conf(i进入INSERT模式,可以进行编辑,编辑完成之后用ctrl+c退出INSERT模式,输入:wq退出)
例如随便将nginx.conf修改错误之后再执行命令 (/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t)就会出现下面错误
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
再去使用sz nginx.conf(将nginx.conf下载到windows中,在windows中修改)
修改之后使用rz -y上传(rz代表上传,rz -y代表上传并覆盖)
再次检查文件(/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t)
6.nginx的其他命令
Linux上查看nginx版本:/usr/local/nginx/sbin/nginx -V
-v (小写的v)显示 nginx 的版本
-V (大写的V)显示 nginx 的版本、编译器版本和配置参数
部署ace-master项目到nginx
1.下载nginx的配置文件(sz nginx.conf)
2.复制一个location 改为 location /ace { # ace项目路径(访问http://8.130.96.92/ace是没有资源的,为什么?坑在根路径)
root /opt/www; # 根路径 (坑在这里,/opt/www与http://8.130.96.92组成了http://8.130.96.92/opt/www, # 当访问http://8.130.96.92/ace是就访问了http://8.130.96.92/opt/www/ace,所以需要在
# /opt/www下面新建文件夹ace,组成/opt/www/ace,再将login.html放进去,
# 再次访问http://8.130.96.92/ace(相当于http://8.130.96.92/ace/login.html)就显示静态资源了)
index login.html;#不要也行
}
3.上传nginx.conf并覆盖(rz -y)
4.进入opt目录下(cd /opt)
5.删除opt目录下所有文件(rm -rf *)
6.创建www目录(mkdir www) ---->根路径创建完成(nginx里面配置的根路径)
7.将ace下面的login.html放进根路径(opt/www)
8.重启nginx(/usr/local/nginx/sbin/nginx -s reload)
9.访问没有静态资源(看location的注释)
10.访问成功之后,再将ace所有的静态资源全部放进去
11.再次访问 ok