导读:

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. js 压缩图片 H5

    原理 用 canvas的 toDataURI (type , int )  如果type参数的值为image/jpeg或image/webp,则第二个参数的值如果在0.0和1.0之间的话,会被看作是图 ...

  2. Linux下PHP开启Oracle支持(oci8)

    使用php的常见问题是:编译php时忘记加入某扩展,后来想加入扩展,可是由于安装php后又装了一些东西如PEAR等,不想删除文件夹重装,那么此时就须要自己又一次添加某模块支持了,Linux操作系统下能 ...

  3. zoj_3657,12年长春站c题,模拟

    #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> us ...

  4. nyoj--1009--So Easy[Ⅰ](数学)

    So Easy[Ⅰ] 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 给出任意一个三角形的三个边a,b,c. 要求:求出这个三角形的外接圆半径. 输入 输入数据有多组. ...

  5. struts2入门(搭建环境、配置、示例)

    转自:https://blog.csdn.net/u012862311/article/details/53412716 1.下载Struts2的jar包 下载地址:http://archive.ap ...

  6. Kali linux 2016.2(Rolling)中metasploit的端口扫描

    目前常见的端口扫描技术一般有如下几类: TCP  Connect.TCP SYN.TCP ACK.TCP FIN. Metasploit中的端口扫描器 Metasploit的辅助模块中提供了几款实用的 ...

  7. java中"".equals(A)与A.equals("")一样不?

    不一样如果a为nulla = null;a.equals("")出错nullPointerException如果写为"".equals(a)-->就可以防 ...

  8. CUDA学习笔记(三)

    近期对CUDA的理解,是对库的利用. 1 nvcc.exe是CUDA C编译器. 2 cudart.dll是CUDA运行时API动态链接库. 3 在Sdk目录下,\lib有CUTIL.CUDPP等函数 ...

  9. Node+Deployd+MongoDB安装问题

    首先:祝大家新年快乐!然后:最近在看一本angular教程,教程里面需要装一些软件(node,deployd,mongodb),当三个装完后在doc命令行下运行项目时出现问题了 mongodb已经按照 ...

  10. 关于Mantle使用个人的一些见解

    前一个月,我接触到了Mantle,由于项目采用的是MVC的设计模式,选用好的model也是至关重要的.先介绍下Mantle的使用吧. 首先定义好数据模型: @property (nonatomic, ...