Nginx的安装和启动

一. 安装Nginx需要的环境

  1.C语言的环境
    yum -y install gcc-c++
  2.安装pcre环境
    1. 下载pcre的压缩包:wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
    2. 解压压缩包 -> tar -zxvf pcre-8.37.tar.gz
      如指定则  tar -zxvf pcre-8.37.tar.gz -C /usr/local
    3. 跳转到pcre的目录下 找到并执行 ./configure
    4. 使用C语言的环境编译并安装
       make && make install
      make install PREFIX=目录 -> 就可以安装到指定目录下
  3.安装各种其他环境maketools....
    yum -y install make zlib zlib-devel gcc-c++ libtool openssl-devel

 

 

二. 安装Nginx

  1.下载nginx的压缩包:wget http://nginx.org/download/nginx-1.12.2.tar.gz
  2.解压压缩包 -> tar -zxvf nginx-1.12.2.tar.gz
  3.检查环境 -> ./configure  error -> log 日志文件暂时不需要)看图一
  4.执行编译并且安装(如果在安装的时候出现问题,则看下面解决办法)
    make && make install PREFIX=/usr/local

 

  

图一

 

 

 

三. nginx安装出现问题(附带解决办法)

1. 问题

 

 

2.解决办法

  1. cd /nginx-1.12.2/src/os
  2. vim unix
  3. 找到并回车键进入  ngx_user.c (图二)
  4. 把这一行注释掉(图三)
  5. cd objs
  6. vim Makefile
  7. 删除 -Werror (图四)
  8. 重新使用 make && make install

 

 

图二

 

 

 

图三

 

 

 

图四

 

 

 

四. Nginx的启动

  1. 找到nginx的目录 (图五)
  2. 启动nginx
    cd sbin/
    ./nginx

  nginx的常用命令
    查看nginx版本号:              ./nginx -v
    检测nginx是否可以启动(检测配置文件):    ./nginx -t  (图六)
    启动 nginx:                 ./nginx
    重启 nginx:                 ./nginx -s reload
    停止 nginx:                 ./nginx -s stop

 

  如果需要启动指定的nginx.conf,则用以下命令 (  -c nginx.conf所在位置,重启也可以加)

    ./nginx -c /nginx/conf/nginx.conf


  3. 查看nginx是否启动成功(图七  master/worker模式)
    ps -ef | grep nginx

  4. nginx默认占领 80端口
    netstat -nao | grep 80

 

 

图五

 

 

 

 图六

 

 

 

图七

 

 

五. 访问不到nginx(附带排查和解决问题)

  

  排查
    1. netstat -ntlp

     如果显示   tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 353314/nginx: maste   则说明没有问题

    2. curl ip

     查看是否可以弄通,如果弄不通就去下面两个问题找



  非阿里云问题
    1. 查看防火墙的开放端口:firewall-cmd --list-ports
    2. 如果80端口未开放,则自己添加(看到 success 就添加成功了)
      firewall-cmd --zone=public --add-port=80/tcp --permanent
    3. 开放指定端口
      firewall-cmd --add-port=8081/tcp --permanent
      重载入添加的端口: firewall-cmd --reload
      查询指定端口是否开启成功: firewall-cmd --query-port=8081/tcp
      移除指定端口: firewall-cmd --permanent --remove-port=8081/tcp
    3. 重启防火墙
      systemctl restart firewalld.service


  阿里云问题
    经过查看以后,发现Nginx启动成功,并且端口开放,最后发现是阿里云安全组配置问题

    1. 选择好自己买的地域
    2. 找到图八
    3. 找到图九
    4. 找到图十配置完成以后不需要重启就可以去使用了

 


  

  图八

  

 

 

   图九

 

  图十

 

posted @ 2021-03-11 11:21  知晓汝名,吓吾一跳!  阅读(1506)  评论(0编辑  收藏  举报
/* 鼠标点击求赞文字特效 */