Linux上安装nginx

环境:centos7   nginx1.16.1(源码安装)html

1、下载nginx源码包nginx

  地址:http://nginx.org/en/download.htmlc++

  Mainline version(主线版本)Stable version(稳定版本)Legacy versions(传统老版本)正则表达式

  下载稳定版:nginx-1.16.1.tar.gz算法

2、安装相关依赖centos

  gcc  gcc-c++  zlib  zlib-devel  openssl  openssl-devel  pcre  pcre-devel缓存

  gcc,gcc-c++  #c,c++编译器,用来编译安装安全

  zlib,zlib-devel  #压缩和解压的函数库,网页文件压缩要用到它服务器

  openssl,openssl-devel  #网络通讯安全协议库,包含众多的密码算法、公钥基础设施标准以及SSL协议网络

3、安装Nginx

  (1).解包

  [root@izm5e8nyz28va3a786y465z src]# tar -zxvf nginx-1.16.1.tar.gz 

  (2).编译配置(进入到解压的文件夹)./configure  --选项   

    ./configure  --prefix=/usr/local/nginx1.16.1  --sbin-path=/usr/sbin/nginx  --conf-path=/etc/nginx/nginx.conf  --error-log-path=/var/log/nginx/error.log  --pid-path=/var/run/nginx/nginx.pid --http-log-path=/var/log/nginx/access.log  --http-client-body-temp-path=/var/tem/nginx/client  --http-proxy-temp-path=/var/tem/nginx/proxy  --http-fastcgi-temp-path=/var/tem/nginx/fcgi  --with-http_ssl_module  --with-http_flv_module  --with-http_gzip_static_module  --with-http_stub_status_module  --with-pcre  --with-openssl

    1. 路径配置(不设置则为默认路径)

    --prefix=/usr/local/nginx1.16.1  #nginx的安装路径,全部其它路径都要依赖该选项

    --sbin-path=/usr/sbin/nginx   #指定nginx二进制文件的路径,不指定则:/usr/local/nginx/sbin/nginx

    --conf-path=/etc/nginx/nginx.conf  #nginx配置文件路径,不指定则:/usr/local/nginx/conf/nginx.conf

    --error-log-path=/var/log/nginx/error.log  #nginx错误日志路径,不指定则:/usr/local/nginx/logs/error.log

    --pid-path=/var/run/nginx/nginx.pid  #pid文件路径,不指定则:/usr/local/nginx/logs/nginx.pid

    --http-log-path=/var/log/nginx/access.log  #http访问日志路径

    --http-client-body-temp-path=/var/tem/nginx/client  #存储客户端请求主主体的临时目录

    --http-proxy-temp-path=/var/tem/nginx/proxy #存储代理服务器接收数据的临时文件 

    --http-fastcgi-temp-path=/var/tem/nginx/fcgi  # 设置存储HTTP fastcgi的临时文件的路径 

    2.模块配置

    --http_v2_module      #用于支持http2协议

    --with-http_ssl_module      #用于支持https协议

    --with-http_flv_module    #视频直播模块

    --with-http_gzip_module   #是nginx默认编译的模块,对网页文件压缩

    --with-http_gzip_static_module   #加载gz静态缓存模块,开启后服务器优先返回gz文件    

    --with-http_stub_status_module  #http服务状态模块

    3. 其它功能启用

    --with-pcre  #开启正则表达式

    --with-openssl  #启用OpenSSL(安全套接字层密码库)启用后可支持https,ssl证书

    3.用户,用户组配置

     --user=www  #nginx工做进程的用户名,默认:user  nobody;

     nobody 是系统用户,是一个不能登录的账号,一个特殊用途的用户 ID,uid<500通常都是系统ID

     --group=www   #nginx工做进程的用户组,默认:group  nogroup

        nginx 只有一个主进程和多个工做进程,主进程主要读取和评估配置文件正确性,以及管理工做进程

      工做进程是真正的网络请求处理的进程

   (3)编译 

     make    

   (4)安装

     make  install 

    小技巧:安装nginx后,怎么加入其它没有编译的模块(不重装nginx)

    1.查看编译安装的配置信息:nginx -V

    

    2.进入以前下载并解压了的源码包目录,从新编译nginx  ,在原来配置参数后加上配置信息

     ./configure  --prefix=xxx  ..... 回车,再 make

    3. 将新生成的nginx二进制文件替换掉原来的nginx二进制文件(中止nginx

      先备份原来的二进制文件:#防止失败

     cp  /usr/local/nginx/sbin/nginx   /usr/local/nginx/sbin/nginx.bak  #防止失败

     替换掉原来的二进制文件:新生成的二进制文件  ./objs/nginx

      cp  ./objs/nginx  /usr/local/nginx/sbin

     4. 查看是否成功

      启动nginx   # nginx  -V

4、nginx服务控制

  1. 启动nginx

  [root@izm5e8nyz28va3a786y465z tmp]# nginx

   nginx: [emerg] mkdir() "/var/tem/nginx/client" failed (2: No such file or directory)

 

  缘由:缺乏这个文件夹

  建立:mkdir  -p  /var/tem/nginx/client

  修改全部者:chown  nobody  /var/tem/nginx/client

  以后,nginx能正常启动

  2.

相关文章
相关标签/搜索