说明:

1、这篇学习记录的目的是如何在CentOS 7上面安装Nginx,包括两种安装方式,yum源安装和源代码编译安装;

2、CentOS 7初学者,某些观点带有猜测之意,文中不足之处,还请批评指正,定会虚心受教。

第一部分 yum源安装

  yum源安装相对比较容易,不必处理复杂的依赖关系。初次安装,我就先采用yum安装方式。根据nginx的wiki上面的安装介绍。

第一步 添加yum源

  为了获得最新版的nginx,nginx安装说明建议直接从nginx官网下载,需要新建一个源。新建文件 /etc/yum.repos.d/nginx.repo,内容如下:

[nginx]                                                  //源名称,会被yum识别
name= nginx repo //文件功能说明,只是便于理解这个文件的作用
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ //地址,非常重要,其中7(针对7.x)是版本,x86_64是CPU基本体系
gpgcheck=0 //gpg校验,0代表不校验,1代表校验
enabled= //启用,0代表不启用,1代表启用

  其中baseurl中的$releasever、$basearch是取得系统中的版本、CPU基本体系,这两个变量使用在yum文件中,具体的变量定义可以查找资料。

  当编辑好文件后,执行命令,如下:

[test@localhost etc]$ yum repolist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.bit.edu.cn
* extras: mirror.bit.edu.cn
* updates: mirrors.btte.net
源标识 源名称 状态
base//x86_64 CentOS- - Base 8,465
extras//x86_64 CentOS- - Extras
nginx/7/x86_64 nginx repo 13 //说明新加的源生效

updates//x86_64 CentOS- - Updates 1,605
repolist: 10,187

  当系统中配置了很多源,并且会有相同的软件,我们就需要指定源安装,如下:

[test@localhost etc]$ sudo yum install nginx --enablerepo=nginx
[sudo] password for test:
.... ================================================================================
Package 架构 版本 大小
================================================================================
正在安装:
nginx x86_64 1:1.6.2-1.el7.ngx nginx 353 k 事务概要
================================================================================
安装 软件包 总下载量: k
安装大小: k
Is this ok [y/d/N]: y
......
正在安装 : :nginx-1.6.-.el7.ngx.x86_64 /
----------------------------------------------------------------------..... ----------------------------------------------------------------------
验证中 : :nginx-1.6.-.el7.ngx.x86_64 / 已安装:
nginx.x86_64 :1.6.-.el7.ngx 完毕!

查看nginx默认配置文件 /etc/nginx/conf.d/default.conf,内容如下:

server {
listen ; //监听端口80
server_name localhost;               //服务器名称 #charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main; location / {
root /usr/share/nginx/html; //网站根目录位置
index index.html index.htm;          //网站首页默认页面名称
}
......

查看nginx服务状态,如下:

[test@localhost /]$ sudo systemctl status nginx.service
nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled)
Active: inactive (dead) //服务未开启

开启nginx服务,如下:

 sudo systemctl start nginx.service
//再次查看状态,如下

nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled)
Active: active (running) since 二 2015-01-27 22:53:46 CST; 44s ago                 //服务已开启
......

当我们用另外一台PC访问该服务器时,却发现,无法打开,是因为默认情况下防火墙开启,禁止访问80端口(此时,我们联想到之前SSH,端口22,防火墙默认放行)。我们需要添加防火墙规则。同时,我们也可以先关闭防火墙,测试是否配置正确。

备注:听说之前的防火墙牌子是iptables,CentOS 7 默认是firewall,服务名称是firewalld。

添加防火墙规则如下:

sudo firewall-cmd --add-port=/tcp          //http协议基于TCP传输协议,放行80端口

此时我们可以使用命令,来查看firewalld开放端口情况,前后比较如下:

之前:
[test@localhost /]$ sudo firewall-cmd --list-all
public (default)
interfaces:
sources:
services: dhcpv6-client ssh //这是默认放行的
ports: //这里是空的
...... 之后:
[test@localhost /]$ sudo firewall-cmd --list-all
public (default)
interfaces:
sources:
services: dhcpv6-client ssh
ports: 80/tcp //这是我们添加规则后的效果
........

当我们的浏览器输入服务器地址后,看到Nginx的欢迎页面,证明安装成功!下面是成功返回的页面:

CentOS 7学习笔记(二)之Nginx安装的更多相关文章

  1. iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】

    在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...

  2. Linux学习笔记二:Ubuntu安装SSH(Secure Shell)服务

    Ubuntu默认是没有安装SSH(Secure Shell)服务,如果想要通过ssh链接到Ubuntu,我们需要手动安装ssh-server. SSH分客户端ssh-client,服务端ssh-ser ...

  3. CentOS 7 学习(二) 配置Nginx反向代理

    CentOS 7 学习(二) 配置Nginx反向代理 Nginx可以通过php-fpm来运行PHP程序,也可以转向apache,让apache调用php程序来运行. 不过对于Nginx来说,其反向代理 ...

  4. 学习笔记(1)centos7 下安装nginx

    学习笔记(1)centos7 下安装nginx 这里我是通过来自nginx.org的nginx软件包进行安装的. 1.首先为centos设置添加nginx的yum存储库 1.通过vi命令创建一个rep ...

  5. Docker学习笔记二(linux下安装Docker)

    Docker学习笔记二(linux下安装Docker) 1.在线安装linux Docker 这种方式首先要保证linux 环境下可以上网,当然,小编是在自己的电脑上安装了虚拟机,在虚拟机上安装了,l ...

  6. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  7. kvm虚拟化学习笔记(二)之linux kvm虚拟机安装

    KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...

  8. NumPy学习笔记 二

    NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  9. Typescript 学习笔记二:数据类型

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

随机推荐

  1. [Javascript] Functor law

    Functor laws: 1. Identity: map(id) == id 2. Composition: compose(map(f), map(g)) == map(compose(f,g) ...

  2. iOS开发——UI篇OC篇&UIView/UIWindow/UIScreen/CALayer

    UIView/UIWindow/UIScreen/CALayer 1.UIScreen可以获取设备屏幕的大小. 1 2 3 4 5 6 7 // 整个屏幕的大小 {{0, 0}, {320, 480} ...

  3. 日志分析(四) Elasticsearch的精确查询

    在需要做精确查询时,往往不希望做全文模糊搜索,这时,需要告知Elasticsearch在处理我们提供的字符串时,需要做精确匹配. 此时,在需要做精确匹配的字符串上,加上””,如”/user/info” ...

  4. linux epoll模型

    原文:http://yjtjh.blog.51cto.com/1060831/294119 Linux I/O多路复用技术在比较多的TCP网络服务器中有使用,即比较多的用到select函数.Linux ...

  5. 终于找到了无毒版的fences1.0(2.0版本要收费的)

    今天终于安装了fences1.0,桌面不用那么乱哄哄的啦 我在博客里上传了安装文件,方便大家下载安装,这是无毒的哦,网上有很多都是不能通过病毒检测的. 地址如下:点击这里下载 使用方法: 创建块:安装 ...

  6. mysql重连,连接丢失:The last packet successfully received from the server--转载

    原文地址:http://nkcoder.github.io/blog/20140712/mysql-reconnect-packet-lost/ 1.1 错误信息: Caused by: com.my ...

  7. Asp.Net 之 使用Form认证实现用户登录 (LoginView的使用)

    1. 创建一个WebSite,新建一个页面命名为SignIn.aspx,然后在页面中添加如下的代码 <div class="div_logView"> <asp: ...

  8. [课程相关]homework-05

    零.准备工作 队伍成员:梁杰,夏天晗,谢祖三. 周五晚上吃完饭,我们就开始了讨论. 这次的要求是写服务器,客户端以及游戏结果动态显示.很明显是三个部分,我们也就顺其自然, 一人一个部分.我负责服务器, ...

  9. poj 2186 强连通分支 和 spfa

    思路: 建图时,分别建正向图edge和转置图T.用正向图edge来DFS,找出第一个被发现的强连通分支(如果该图存在题目要求的点,那么一定就是第一个被发现的).然后用spfa跑转置图T,判断被发现的点 ...

  10. 限制特定ip访问oracle

    在9i中真正起作用的是sqlnet.ora文件,我们修改sqlnet.ora其实是最好最快的方法. 在sqlnet.ora中增加如下部分 ----------------------------- # ...