1 背景
Nginx是一款轻量级的Web服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。本文介绍三种基于linux环境下的安装nginx的方法,安装版本为现阶段官网推出的最新稳定版本。
环境说明
软件项目 | 版本 |
---|---|
操作系统 | Centos7.9 |
nginx | 1.20.2 |
docker | 20.10.9 |
2 linux 的四种安装方式
其中yum、源码安装、docker安装依赖互联网接入,rpm可以离线安装。
3 安装步骤
安装之前查看端口,默认nginx使用的80端口,如果80端口已经占用启动过程中可能会报错,针对端口占用情况,可以停止占用端口的服务或者nginx改用其他端口启动,停用和改端口方法不再本文介绍。参考《Centos7防火墙设置》
netstat -nltp | grep 80
3.1 yum 安装ningx
# 下载nginx包
wget https://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
# 建立nginx的yum仓库
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum info nginx
yum --showduplicates list nginx | expand
安装nginx,默认安装最新的稳定版本 及 nginx 1.20.2
yum install nginx
3.2 源码编译安装nginx
Nginx 源码包安装步骤相比其他安装方法比较繁琐,但是操作不复杂,需要提前安装一些 Nginx 依赖库。
3.2.1 依赖库安装
yum -y install gcc gcc-c++ autoconf automake make
2、安装 pcre
yum -y install pcre pcre-devel
3、安装zlib
zlib 库提供了很多压缩和解压缩的方式,nginx 使用 zlib 对 http 包内容进行 gzip 压缩
yum -y install zlib zlib-devel make libtool
4、安装openssl
yum -y install openssl openssl-devel
3.2.2 nginx 安装
groupadd nginx
useradd nginx -g nginx -s /sbin/nologin -M
wget https://nginx.org/download/nginx-1.20.2.tar.gz
解压
tar -zxvf nginx-1.20.2.tar.gz
cd nginx-1.20.2
# 检查平台安装环境
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --user=nginx --group=nginx
参数说明:
#所属用户nginx
–group=nginx
#所属组nginx
# 支持HTTPS
编译源码并安装
make # 编译
make install # 安装
user nginx nginx;
3.2.3 ningx操作
/usr/local/nginx/sbin/nginx
/usr/local/nginx/sbin/nginx -s reload
停止服务
/usr/local/nginx/sbin/nginx -s stop
查看进程
ps -ef | grep nginx
curl IP
nginx版本信息查看
/usr/local/nginx/sbin/nginx -V
目前nginx都是通过命令执行的,在nginx运行过程中,需要nginx作为系统的服务运行。以systemctl命令运行服务
vi /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
创建服务
systemctl enable nginx.service
systemctl status nginx
3.3 rpm安装包安装nginx
3.3.1 下载rpm安装包
wget https://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.20.2-1.el7.ngx.x86_64.rpm
3.3.2 安装nginx包
rpm -ivh nginx-1.20.2-1.el7.ngx.x86_64.rpm
3.3.3 配置权限
groupadd nginx
useradd nginx -g nginx -s /sbin/nologin -M
chown -R nginx:nginx /etc/log/logrotate.d/nginx
chown -R nginx:nginx /etc/nginx
chown -R nginx:nginx /etc/nginx/conf.d
chown -R nginx:nginx /etc/config.d/default.conf
chown -R nginx:nginx /etc/nginx/fastcgi_params
chown -R nginx:nginx /etc/nginx/mime.types
chown -R nginx:nginx /etc/nginx/modules
chown -R nginx:nginx /etc/nginx/nginx.conf
chown -R nginx:nginx /etc/nginx/scgi_params
chown -R nginx:nginx /etc/nginx/uwsgi_params
chown -R nginx:nginx /usr/lib/systemd/system/nginx-debug.service
chown -R nginx:nginx /usr/lib/systemd/system/nginx.service
chown -R nginx:nginx /usr/lib64/nginx
chown -R nginx:nginx /usr/lib64/nginx/modules
chown -R nginx:nginx /usr/libexec/initscripts/legacy-actions/nginx
chown -R nginx:nginx /usr/libexec/initscripts/legacy-actions/nginx/check-reload
chown -R nginx:nginx /usr/libexec/initscripts/legacy-actions/nginx/upgrade
chown -R nginx:nginx /usr/sbin/nginx
chown -R nginx:nginx /usr/sbin/nginx-debug
chown -R nginx:nginx /usr/share/doc/nginx-1.20.1
chown -R nginx:nginx /usr/share/doc/nginx-1.20.1/COPYRIGHT
chown -R nginx:nginx /usr/share/man/man8/nginx.8.gz
chown -R nginx:nginx /usr/share/nginx
chown -R nginx:nginx /usr/share/nginx/html
chown -R nginx:nginx /usr/share/nginx/html/50x.html
chown -R nginx:nginx /usr/share/nginx/html/index.html
chown -R nginx:nginx /var/cache/nginx
chown -R nginx:nginx /var/log/nginx
启动nginx
systemctl start nginix
curl IP
卸载 nginx
# 查看nginx安装文件
rpm -qa | grep nginx
nginx-1.20.2-1.el7.ngx.x86_64
# 卸载nginx安装文件
rpm -e nginx-1.20.2-1.el7.ngx.x86_64
3.4 docker 中安装nginx
docker安装可以选择在线和离线安装,在线安装使用docker命令安装,离线安装使用docker安装完毕后,打包至离线服务器进行安装,本文以在线安装为例进行展开操作。docker 安装在此不做过多介绍,docker安装参考《centos7 设置阿里云yum源、docker源和docker镜像加速》中的docker安装部分
# 获取nginx镜像
docker pull nginx:1.21.6
# 查看镜像
docker images
运行nginx
docker run --name nginx -p 80:80 -d nginx
使用过程中会挂载 配置文件、站点、日志信息,在现有基础上新增挂载参数即可。
验证
curl IP
4 nginx 其他
4.1 nginx常用操作
启动nginx
systemctl start nginx
停止 nginx
systemctl stop nginx
重启 nginx
systemctl restart nginx
重新加载配置
systemctl reload nginx
systemctl enable nginx
systemctl disable nginx
查看版本
nginx -V
4.2 目录说明
目录 | 说明 |
---|---|
/etc/nginx/ | 所有相关配置文件目录 |
/etc/nginx/nginx.conf | nginx主配置文件 |
/etc/nginx/conf.d/ | 独立的nginx服务配置文件目录 |
/var/log/nginx/ | nginx日志文件目录 |
/var/log/nginx/access.log | 访问日志(IP/浏览器信息/处理时间/请求URL) |
/var/log/nginx/error.log | 错误日志(服务器和请求处理中的错误信息) |
/usr/share/nginx/html | 默认的站点位置,可以根据实际情况进行设置调整 |
原文地址:https://blog.csdn.net/shallow72/article/details/123878716
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_16105.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!