centos7 源码nginx1.16.1安装

常见错误

nginx:[emerg]unknown directive ssl

加上  --with-http_ssl_module 重新编辑安装

 

下载

进入官网下载我们需要的版本,复制下载链接,使用wget工具下载

文章当前最新稳定版是1.16.1

wget http://nginx.org/download/nginx-1.16.1.tar.gz

解压

 tar -xzf nginx-1.16.1.tar.gz

 

依赖安装

在你不清楚服务器有没有安装这些依赖的情况下,可以先跳过,报错再回来,或者直接都安装一下也没坏,你喜欢就好

  •  gcc 源码的编依赖 于gcc 环境
    yum install gcc
  • PCRE(Perl Compatible Regular Expressions) Perl库,包括 perl 兼容的正则表达式库
  • yum install -y pcre pcre-devel
  • zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip
  • yum install -y zlib zlib-devel
  •  OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。这个包广泛被应用在互联网的网页服务器上
  • yum install -y openssl openssl-devel

比较懒的可以直接执行这个命令 (~ ̄▽ ̄)~

yum install gcc openssl-devel pcre-devel -y

配置

cd nginx-1.16.1

 

查看你需要配置,建议看看官网的参数说明根据你需要的情景使用配置

./configure  --help  

这里我只是设置了安装目录,其他均采用了默认 

./configure --prefix=/server/nginx  --with-http_ssl_module

出现这个证明已经配置成功

centos7 源码nginx1.16.1安装_第1张图片
编译和安装

 make && make install

看到这个界面证明已经安装成功了 

centos7 源码nginx1.16.1安装_第2张图片

测试启动

cd /server/nginx/sbin    //这个是配置安装包时候的目录
./nginx  //启动
./nginx -s stop  //停止
./nginx -s quit   //退出
./nginx -s reload  //重启

 

这教程基于centos7 ,centos7服务管理都是通过systemctl命令的,所以我们需要添加一下对应nginx的service服务

systemctl服务储存地址   /usr/lib/systemd/system/

执行以下命令新建nginx服务

vim /usr/lib/systemd/system/nginx.service

 并录入一下内容

[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/server/nginx/sbin/nginx
ExecReload=/server/nginx/sbin/nginx -s reload
ExecStop=/server/nginx/sbin/nginx -s stop

[Install]
WantedBy=multi-user.target

配置说明

[Unit]:服务的说明
Description:描述服务
After:描述服务类别

[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:启动、重启、停止命令全部要求使用绝对路径

[Install]服务安装的相关设置,可设置为多用户

要服务生效,我们需要重新加载服务

systemctl daemon-reload

 现在我们可以使用systemctl命令来对nginx进行操作了

systemctl start nginx  //启动
systemctl stop nginx  //停止
systemctl reload nginx  //重启 可以不用停止nginx服务,使修改的配置生效
systemctl restart nginx  //重启
systemctl enable nginx  //设置开机启动
systemctl disable nginx  //禁用开机启动
systemctl status nginx  //查看服务状态

获取所有正在运行的服务 

systemctl list-units --type=service

最后我们访问试试

启动后我们可以访问一下看到这个界面就证明安装成功了

centos7 源码nginx1.16.1安装_第3张图片

 

你可能感兴趣的:(linux,nginx)