导读:

Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,从2007年被德国人开发出来后可以说在市场的占有率一路飙升,因为它支持高并发,而且还能阻止dos攻击,它是当前较具影响力的一个http服务器软件,像百度等大厂都使用它,所以这是作为一个运维人必须学会的软件。

安装

配置好yum源:

 [root@network yum.repos.d]# cat aliyun.repo
[rhel7]
name=ali base
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0 #阿里云epel
[epel]
name=ali epel
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
enabled=1
gpgcheck=0 #阿里云extras
[extras]
name=ali extras for centos 7
baseurl=https://mirrors.aliyun.com/centos/7/extras/x86_64/
enabled=1
gpgcheck=0
 yum -y install nginx

直接启动就可以使用了

咱们就先来试下

 systemctl start nginx

查看下端口

 [root@network ~]# netstat -ntlp | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 51970/nginx: master
tcp6 0 0 :::80 :::* LISTEN 51970/nginx: master

使用elinks访问一下,或者你也可以用图形化界面的浏览器去访问

 [root@network ~]# elinks http://192.168.10.101

主要文件:

 配置目录      /etc/nginx
主程序 /usr/sbin/nginx
启动脚本 /usr/lib/systemd/system/nginx.service
默认站点目录 /usr/share/nginx/html
日志目录 /var/log/nginx

再了解下主配置目录下的目录结构

 [root@network ~]# tree /etc/nginx/
/etc/nginx/ # 主进程目录
├── conf.d # 子进程目录
│ ├── default.conf # 虚拟主机模板配置文件
│ └── example_ssl.conf # https虚拟主机模板配置文件
├── fastcgi_params # 程序变量
├── koi-utf
├── koi-win
├── mime.types # 文件扩展名与文件类型映射表
├── nginx.conf # 主配置文件
├── scgi_params
├── uwsgi_params
└── win-utf

其他文件就不介绍了,因为我们也很少会用到,挑重点给大家

 基本配置

为了方便了解主配置文件的内容,我们查看并过滤掉空行来了解

 [root@network ~]# cat /etc/nginx/nginx.conf | grep -v "^$"
user nginx; # 所有子进程所使用用户身份/etc/passwd里查看
worker_processes 1; # 开机Nginx的进程数
error_log /var/log/nginx/error.log warn; # 错误日志
pid /var/run/nginx.pid; # 记录进程PID号的文件
events {
worker_connections 1024; # 每个进程最大链接数,可以是65535
}
http {
include /etc/nginx/mime.types; # 文件扩展名与文件类型映射表
default_type application/octet-stream; # 默认文件类型
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # 定义maim日志记录类型
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main; # 访问日志
sendfile on; # 搞笑文件传输模式
#tcp_nopush on; # 配置一次发送数据的包大小,必须和sendfile一起使用
keepalive_timeout 65; # 保持链接超时时间
#gzip on; # 压缩
include /etc/nginx/conf.d/*.conf; # 读取目录下以.conf的文件,加载进来
}

一:进程管理

 [root@network ~]# cat /etc/nginx/nginx.conf | grep -v "^$"
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}

就这段,进程管理我们只要看两个数值就可以

进程:worker_processes 1;

这个跟你主机的CPU有关,是与CPU的核心数成倍数的,假如你的CPU核心数是双核,那就配置4进程,如果四核就是配置为8进程,同理

线程:worker_connections 1024;

这个是线程,是单个进程所允许打开的线程数量,最高可以配置65535,但还是得根据你操作系统设置的最大文件打开数量有关

 # 查看当前文件打开数量值
[root@network ~]# ulimit -n
1024
# 设置为65535
[root@network ~]# ulimit -HSn 65535
[root@network ~]# ulimit -n
65535

如果你服务器系统默认设置的是1024,而你nginx设置为65535,启动时不会报错,但在你执行检查语法的时候就会报以下错误

 [root@network ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

二:虚拟主机配置

讲完进程,我们就来配置下虚拟主机,学过Apache就知道它可以配置很多个虚拟主机,且可以通过不通的域名访问到不通的虚拟主机,所以我们也来配置下Nginx的虚拟主机。

先进去到子进程配置文件里,我们拷贝模板文件后来进行修改。
站点的域名就使用www.zhou.com

 [root@network ~]# cd /etc/nginx/
[root@network nginx]# ls
conf.d fastcgi_params mime.types scgi_params win-utf
default.d fastcgi_params.default mime.types.default scgi_params.default
fastcgi.conf koi-utf nginx.conf uwsgi_params
fastcgi.conf.default koi-win nginx.conf.default uwsgi_params.default
[root@network nginx]# vim nginx.conf

把配置文件里不重要的东西我们先给它删了,剩下我们要的配置就可以


修改完创建一个主页文件index.html

 [root@network nginx]# echo "hello nginx" >/usr/share/nginx/html/index.html

重启nginx服务

 [root@network nginx]# systemctl restart nginx

更改hosts文件

 echo '192.168.100.101 www.zhou.com' >>/etc/hosts

快速安装Nginx及配置详解(未完待续)的更多相关文章

  1. Windows-008-VirtualBox 安装 Win7 前沿配置详解

    此文主要讲述在 Windows 系统下安装虚拟机 VirtualBox,及用 VirtualBox 安装 Win7 Professional 64bit 操作系统的前沿配置为例,配以图文进行详细的讲解 ...

  2. Java从入门到精通——数据库篇Mongo DB 安装启动及配置详解

    一.概述     Mongo DB 下载下来以后我们应该如何去安装启动和配置才能使用Mongo DB,本篇博客就给大家讲述一下Mongo DB的安装启动及配置详解. 二.安装 1.下载Mongo DB ...

  3. Nginx 核心配置详解

    目录 Nginx 核心配置详解 Nginx 四层访问控制: Nginx账户认证功能: 自定义错误页面: 自定义访问日志: 检测文件是否存在: 长连接配置: 作为下载服务器配置: 作为上传服务器: 其他 ...

  4. nginx.conf配置详解

    ######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...

  5. Nginx的配置详解

    人无再少年,花有重开日——风城玫瑰 德里克·罗斯 Nginx是一款轻量级的HTTP服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的IO性能,时常用于服务端的反向代理和负载均衡. Ngin ...

  6. Nginx location配置详解

    上一篇博客Nginx配置详解已经说过了nginx 的基本配置情况,今天来详细讲述一下nginx的location的配置原则, location是根据Uri来进行不同的定位,location可以把网站的 ...

  7. Mysql系列五:数据库分库分表中间件mycat的安装和mycat配置详解

    一.mycat的安装 环境准备:准备一台虚拟机192.168.152.128 1. 下载mycat cd /softwarewget http:-linux.tar.gz 2. 解压mycat tar ...

  8. nginx安装升级及配置详解

    1.简介 2.安装配置 3.配置文件介绍 4.启动.停止.平滑重启.升级 一.Nginx简介 Nginx(engine x)是俄罗斯人Igor Sysoev编写的一款高性能的http和反向代理服务器. ...

  9. 【转】 linux 安装nginx及编译参数详解

    版权声明:本文为博主原创文章,未经博主允许不得转载. 从官网下载一个nginx 的tar.gz 版. 安装方式使用make 安装 第一步:解压 tar -zxvf  nginx-1.7.4.tar.g ...

随机推荐

  1. Log4j-----Log4j使用指南

  2. hadoop1.1.0的伪分布搭建步骤

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFuYnVyZW4wMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...

  3. js php 数组比較

    php 与 javascript 数组除了定义以及 操作上有非常大的差别,还有非常多其他的差别.如今我们就来讨论讨论.    1.大家都知道php比較两个数组是否全相等(值,索引)相等 $a=arra ...

  4. YII显示sql进行调试

    进行插入測试: 一个简单控制器: function actionJia(){ $goods_model = new Goods(); //进行加入有别于查询不能使用以下这样的方式 // $goods_ ...

  5. ubuntu 14.04 桌面版关闭图形界面

    ubuntu 14.04 桌面版关闭图形界面 问题: 怎样将ubuntu14.04设置为文本模式启动? 解决方式: 改动改GRUB 的配置文件(不建议直接改 grub.conf) $sudo vim ...

  6. 深入理解Android之Java虚拟机Dalvik

    一.背景 这个选题非常大,但并非一開始就有这么高大上的追求. 最初之时,仅仅是源于对Xposed的好奇.Xposed差点儿是定制ROM的神器软件技术架构或者说方法了. 它究竟是怎么实现呢?我本意就是想 ...

  7. [Swift] 随机数 | Random numbers

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  8. error C4996: 'setmode': The POSIX name for this item is deprecated解决方案

    在使用VS2012编译zlib库官方提供的案例程序 zpipe.c 中代码时报错: 信息如下: 错误 1 error C4996: 'setmode': The POSIX name for this ...

  9. plt.rcParams[]

    plt.rcParams[] pylot使用rc配置文件来自定义图形的各种默认属性,称之为rc配置或rc参数.通过rc参数可以修改默认的属性,包括窗体大小.每英寸的点数.线条宽度.颜色.样式.坐标轴. ...

  10. NodeJS学习笔记 (22)全局对象-global

    https://github.com/chyingp/nodejs-learning-guide