nginx源码安装和yum安装

409 阅读1分钟

yum和apt安装nginx

Nginx服务安装官网 nginx.org 当前最新版本 1.23.0

官方文档 nginx.org/en/linux_pa…

  1. RHEL/Rocky 通过yum安装

1)编辑源

vi /etc/yum.repos.d/nginx.repo #内容如下

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true




[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

2)安装

yum install -y nginx

3)启动

systemctl start nginx
  1. Ubuntu 通过apt安装 1)安装依赖
sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring

2)导入官方key

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

3)设置源

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

4)设置仓库优先级,保证优先使用Nginx官方的源

echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
    | sudo tee /etc/apt/preferences.d/99nginx

5)安装

sudo apt update
sudo apt install nginx

6)启动

sudo  systemctl  start nginx
  1. 源码编译

1)下载源码

cd  /usr/local/src
sudo curl -O http://nginx.org/download/nginx-1.23.0.tar.gz

2)解压

sudo tar zxf nginx-1.23.0.tar.gz
cd nginx-1.23.0

3)安装依赖

RHEL/Rocky

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

##ubuntu

sudo apt install  -y gcc  make  libpcre++-dev libssl-dev  zlib1g-dev

4)配置

sudo ./configure --prefix=/usr/local/nginx  --with-http_ssl_module

5)编译和安装

sudo make  && sudo  make install

6)编辑system服务管理脚本

sudo vi /lib/systemd/system/nginx.service  #写入如下内容
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target




[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /usr/local/nginx/logs/nginx.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /usr/local/nginx/logs/nginx.pid)"




[Install]
WantedBy=multi-user.target

7)加载服务

sudo  systemctl daemon-reload

8)启动服务

sudo systemctl start nginx