一、官网下载linux版的安装包
二、安装需要的依赖
#gcc安装,nginx源码编译需要(阿里云的centos已经自带,可以用 gcc -v 命令查看,有了就不用安装)
yum install gcc-c++
#PCRE pcre-devel 安装,nginx 的 http 模块使用 pcre 来解析正则表达式
yum install -y pcre pcre-devel
#zlib安装,nginx 使用zlib对http包的内容进行gzip
yum install -y zlib zlib-devel
#OpenSSL 安装,强大的安全套接字层密码库,nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),openssl是web安全通信的基石,没有openssl信息传输是不安全的
yum install -y openssl openssl-devel
三、下载和解压缩
1.使用ftp传输下载好的 nginx-1.19.0.tar.gz 或者wget下载都可以,目录为: /usr/local
#使用wget方式下载
wget http://nginx.org/download/nginx-1.19.0.tar.gz
2.解压文件到 /usr/local 目录,解压后修改改名称为 nginx
#解压文件到 /usr/local目录
tar -zxvf nginx-1.19.0.tar.gz
#修改 nginx-1.19.0 文件夹名称为 nginx
mv nginx-1.19.0 nginx
四、安装和配置nginx
#进入到nginx目录
cd nginx
#使用默认配置
./configure
#编译安装
make && make install
#查找安装路径,手动安装的都是 /usr/local/nginx
whereis nginx
#配置系统全局变量
vi /etc/profile
#编辑文件,在最后一行添加环境变量
#nginx config
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin
#配置生效
source /etc/profile
如果报错没有log下error.log和access.log,就手工创建上logs文件夹和下面这两个文件
nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (2: No such file or directory)
2020/06/01 14:05:53 [emerg] 31908#0: open() "/usr/local/nginx/logs/access.log" failed (2: No such file or directory)
五、nginx命令
如果配置了环境变量,可以全局使用 nginx 命令,如果没有配置,需要 cd /usr/local/sbin 下,用 ./nginx 来执行命令
#启动、停止nginx
cd /usr/local/nginx/sbin/
./nginx #启动
./nginx -s stop #停止,直接查找nginx进程id再使用kill命令强制杀掉进程
./nginx -s quit #退出停止,等待nginx进程处理完任务再进行停止
./nginx -s reload #重新加载配置文件,修改nginx.conf后使用该命令,新配置即可生效
#重启nginx,建议先停止,再启动
./nginx -s stop
./nginx
#查看进程
ps aux|grep nginx
六、nginx加入开机启动(可以不加,到第五步已经可以正常使用nginx了)
# 1.进入到 /lib/systemd/system 目录
cd /lib/systemd/system/
# 2.创建nginx.service文件并编辑
vi nginx.service
# 3.在文件中添加如下命令
[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
# 4.输入 :wq!保存即可
# 5.加入开机启动
systemctl enable nginx
#如果不想开机启动,可以取消
systemctl disable nginx
# 6.以下是服务常用的命令
systemctl start nginx.service #启动nginx服务
systemctl stop nginx.service #停止服务
systemctl restart nginx.service #重新启动服务
systemctl list-units --type=service #查看所有已启动的服务
systemctl status nginx.service #查看服务当前状态
systemctl enable nginx.service #设置开机自启动
systemctl disable nginx.service #停止开机自启动
七、nginx的代理配置可以参考我的 [https://blog.csdn.net/qq575792372/article/details/89419981]文章
文章评论