编译安装、yum安装、apt安装Nginx1.14.0

安装依赖

yum -y install gcc gcc-c++yum -y install zlib zlib-devel openssl openssl-devel pcre-devel

在Ubuntu 下, 对应需要安装的是

sudo apt install build-essential libpcre3 libpcre3-dev libssl-dev zlib1g zlib1g-dev

 

建立用户及用户组

groupadd -r nginx
# -r 表示创建的是系统组
useradd -s /sbin/nologin -g nginx -r nginx
# -r 表示创建的是系统用户
id nginx
# 即使用其他用户启动nginx, 也必须创建nginx用户和用户组, 否则会出现 nginx: [emerg] getpwnam("nginx") failed 错误

编译和安装

./configure --prefix=/opt/nginx/nginx-1.14.0 --user=nginx --group=nginx --with-http_gzip_static_module --with-pcre --with-http_ssl_module --with-http_flv_module --with-stream --with-stream_ssl_module --with-http_stub_status_module
make
make install

 

如果需要rtmp服务, 需要加上rtmp模块

git clone https://github.com/arut/nginx-rtmp-module.git

./configure --prefix=/opt/nginx/nginx-1.18.0 --user=nginx --group=nginx --with-http_gzip_static_module --with-pcre --with-http_ssl_module --with-stream --with-stream_ssl_module --with-http_stub_status_module --add-module=/home/milton/backup/nginx-rtmp-module

 

建立latest目录和软链, 方便将来替换为新版本

cd /opt/nginx/
ln -s nginx-1.14.0 latest

配置

将nginx加入系统服务

cd /lib/systemd/system/
vi nginx.service

# 内容

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/opt/nginx/latest/sbin/nginx -t -c /opt/nginx/latest/conf/nginx.conf
ExecStart=/opt/nginx/latest/sbin/nginx
ExecReload=/opt/nginx/latest/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

# 内容结束

systemctl enable nginx.service

打开端口启动服务

firewall-cmd --zone=public --list-all
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload

# 启动nginx
systemctl start nginx

Ubuntu18.04下apt安装Nginx1.14.0

Ubuntu18.04下默认的nginx版本就是1.14.0, 可以直接通过 sudo apt install nginx 安装. 安装后会自动加入service并启动, 可以通过 sudo systemctl list-unit-files 检查

默认的配置文件位于 /etc/nginx/nginx.conf, 这是给Ubuntu定制的配置文件, 基础配置部分, 会加载 /etc/nginx/modules-enabled/*.conf , 在 http 部分, 会自动加载 include /etc/nginx/conf.d/*.conf 和 include /etc/nginx/sites-enabled/*, 这样方便用户通过 modules-enabled, modules-available 和 sites-enabled, sites-available 来管理可用站点.

从这里开始配置就和编译安装的一样了.

Centos7下yum安装Nginx

sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx

  

posted on 2018-09-23 21:32  Milton  阅读(1937)  评论(0编辑  收藏  举报

导航