CentOS7 安装Nginx

有一个月没写博客了,是该记录一些东西了,之前一直使用的是Ubuntu系统,然后就想换个系统继续折腾下。就换成CentOS7的最小化安装。

目录:

  1. Nginx和依赖包
  2. 安装依赖包
  3. 安装Nginx
  4. 运行Nginx及无法访问的问题

一:Nginx和依赖包

  1.   Nginx安装包  下载地址:http://nginx.org/en/download.html
  2.   OpenSSL SSL协议加密解密的工具包 下载地址:https://www.openssl.org/
  3.   PCRE 由c语言编写的正则表达式库 下载地址:http://www.pcre.org/
  4.   zlib数据压缩库 下载地址:http://www.zlib.net/

  下载完成之后,全部扔到linux中去吧,如果上传文件的过程中出现Access Denied(拒绝访问),看看文件的权限是不是只读的。下面是我的文件目录

    

 

二:安装依赖包

  注:1. 开始安装前,先说明下如果以下安装的过程中出现了:error: You need a C++ compiler for C++ support.说明你的系统中没有安装c++的编译环境, 使用命令: yum install gcc-c++  安装即可。(由于系统是新安装的基本啥都没有,后面安装过程出现了此问题)

    2. 在执行以下操作时候,最好切换到root权限,避免有时候需要在命令前 重复添加 sudo。 例如 sudo make install

  

     1.先使用命令  tar -zxvf fileName (文件名称)。逐一的解压每个文件,如下图

  

  

     2.安装OpenSSL

  cd到OpenSSL目录内,执行以下命令

    • ./config         生成Makefile文件(这里的是config文件不是Configure)
    • make                    读取Makefile中指令编译
    • make install       安装到系统中(需要root权限)

  

     3.安装PCRE 和zlib

  PCRE 和zlib安装的方式一样,只是和OpenSSL的文件config名称不一样而已

    • ./configure
    • make
    • make install

  安装完上面的三个依赖包,下面安装我们的正主Nginx

  

三:安装Nginx

  安装Nginx过程和上面的基本相同,只是在执行configure文件的时候需要设置一些参数

1 ./configure 
2 --prefix=/opt/nginx 
3 --with-pcre=/home/mgame/soft/pcre-8.41 
4 --with-openssl=/home/mgame/soft/openssl-1.1.0f 
5 --with-zlib=/home/mgame/soft/zlib-1.2.11 

  下面是以上配置的意思,如果需要更多信息,可以翻阅官方文档:http://nginx.org/en/docs/configure.html

1 --prefix=/opt/nginx       Nginx安装目录(默认/usr/local/nginx)
2 --with-pcre=/home/mgame/soft/pcre-8.41   PCRE解压目录
3 --with-openssl=/home/mgame/soft/openssl-1.1.0f   OpenSSL解压目录
4 --with-zlib=/home/mgame/soft/zlib-1.2.11  zlib解压目录

  注意了,以上的都是解压后的文件夹目录,不是安装后的目录。 当执行完成上的命令,执行下面的命令

  编译: make 

  安装: make install 

  至此Nginx和依赖包都安装完成,下面试试能否成功启动Nginx

注:如果出现Access Denied(拒绝访问),请使用root权限安装

 

四:运行Nginx及出现无法访问的问题

1.启动Nginx

  先移动到Nginx安装目录内的sbin文件夹下

  

  在运行Nginx的时候如果没有root权限会出现以下错误

  

  看到后面括号内的提示没有 (Permission denied) ,拒绝访问,没有权限,运行的时候在命令前面加 sudo ./nginx  或者使用root权限

  当执行  sudo ./nginx 命令后,并没有提示成功,可以使用 ps -aux | grep nginx 命令,看看是否启动Nginx了,如果出现如下图所示的样子时候说明已经成功了

  

  

  然后,打开浏览器输入linux的地址,出现如果所示的样子,那么nginx已经可以完成安装了

  

 

 2.无法访问的问题

  (1) 关闭SELinux安全子系统

  命令  vim /etc/selinux/config  编辑config文件,将SELINUX=enforcing的值设置为disabled(重启生效),如下

  

  (2)设置防火墙开启80端口(Nginx监听的是80端口)

  先使用命令  sudo firewall-cmd --list-all 查看当前防火墙状态

  

  此处看到没有打开80端口,那么使用命令打开80端口,并重启防火墙

1 sudo firewall-cmd --add-port=80/tcp --permanent    打开80端口
2 sudo firewall-cmd --reload  重启防火墙

  现在可看看是否开启80端口了

  

  如果出现以上的信息,那么nginx基本上可以访问了。以上学习笔记到此为止,如果能帮到大家,不胜荣幸!文章有诸多不足的地方,欢迎多多指正。谢谢!

  在程序员的路上一直在行走,虽然缓慢,但未曾停下。

posted @ 2017-07-24 20:30  斜月清风  阅读(2467)  评论(0编辑  收藏  举报