• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >Linux > Nginx基础应用详解

Nginx基础应用详解

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含nginx配置文件详解,nginx配置详解,nginx安装配置详解,nginx详解,nginx反向代理详解等服务器相关知识,网友希望可以进行参考

Nginx基础应用详解


Nginx是一款轻量级的Web和反向代理服务器,它的诞生主要是为了解决C10K的问题,它具有较多的特性;
Nginx的特性:

 1、模块化设计,具有较好的扩展性
 2、具有高可靠性
 3、支持热部署:可以在不影响用户使用的情况下,升级老版本;可以不停机更新配置文件、更换日志文件、更换服务器程序版本
 4、低消耗内存:10K个keepalive连接模式下的非活动连接仅消耗2.5M内存
 5、是event-driven事件驱动模型:具有一个主进程,多个子进程,每个子进程响应多个请求
 
Nginx的基本功能:
 1、静态资源的web服务器
 2、可以作为http协议的正反向代理服务器
正向代理:Nginx作为服务器,可直接响应资源给客户端
反向代理:Nginx作为代理器,客户端不直接和服务器交流,而是通过和代理服务器的代理器来交流;通过代理器来读取服务器中的资源,从而响应给客户端
 3、支持pop3/imap4协议反向代理服务器
 4、支持FastCGI、UWSGI等
 5、支持模块化:例如ssl、zip


Nginx的程序架构图:

Master:Master为主进程,主要作用是加载配置文件、管理worker进程、可进行平滑升级
Worker:worker为子进程,由master主进程生成,一个worker进程可以处理多个客户端请求;主要作用是接受客户端请求、http代理、FastCGI代理、Memcache代理、在磁盘内缓存以及管理磁盘内的缓存

准备环境:

虚拟机1:nginx IP:172.18.42.200
虚拟机2:httpd(后端主机) IP:172.18.42.201
虚拟机3:httpd(后端主机) IP:172.18.42.202

一、实现“ngx_http_auth_basic_module”认证机制
1、虚拟机1安装nginx服务
[root@node0 ~]# yum install nginx

2、编辑nginx主配置文件
[root@node0 ~]# vim /etc/nginx/nginx.conf  ##nginx的主配置文件
server {
listen 80;  ##监听的端口
server_name localhost;
root /www/lweim/;  ##指定读取资源路径
location /nginx {
  auth_basic "Show your Information";  ##指定提示页
  auth_basic_user_file /etc/nginx/.ngxpasswd;  ##指定密码文件路径
}
}
[root@node0 nginx]# htpasswd -c -m /etc/nginx/.ngxpasswd lweim  ##创建虚拟用户“lweim”
-c:当.nginxpasswd这个文件不存在时需使用
-m:使用md5算法
[root@node0 ~]# echo "172.18.42.200 Nginx 1" > /www/lweim/nginx/index.html

3、访问web页面

二、实现“ngx_http_stub_status_module”基本状态信息
1、编辑配置文件 
[root@node0 ~]# vim /etc/nginx/nginx.conf
server {
  listen      80;
  server_name  localhost;
  root /www/lweim/;
  location /status {  ##指明状态页面目录
  stub_status on;  ##开启状态页
  }
}
[root@node0 ~]# mkdir /www/lweim/status/  ##创建状态页目录

2、访问web

Active  connections:处于活动状态的客户端连接数量
Accepts:已经接受客户端的总请求数量
Handled:已经处理客户单的总请求数量
Request:客户端发出的总请求数量
Reading:正在读取客户端请求报文首部的连接数量
Writing:正在向客户端发送响应报文的连接数量
Waiting:正在等待客户端发出请求的空闲进程数

更多Nginx相关教程见以下内容:

CentOS 6.2实战部署Nginx+MySQL+PHP

Ubuntu 16.04下安装部署 Nginx+uWSGI+Django1.9.7 

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程

CentOS 6.3下Nginx性能调优

CentOS 6.3下配置Nginx加载ngx_pagespeed模块

CentOS 6.4安装配置Nginx+Pcre+php-fpm

Nginx安装配置使用详细笔记

Nginx日志过滤 使用ngx_log_if不记录特定日志

三、实现“ngx_http_ssl_module”https请求
1、在未修改配置文件之前尝试访问“https://172.18.42.200”

2、修改配置文件
server {
  listen  80;
  server_name  localhost;
  root /www/lweim/;
}
 
server {
  listen  443 ssl;  ##https监听在tcp的443端口
  server_name  localhost;
 
  ssl_certificate    /etc/nginx/ssl/ngx.crt;  ##指明ngx.crt的文件路径
  ssl_certificate_key  /etc/nginx/ssl/ngx.key;  ##指明ngx.key的文件路径
 
  ssl_session_cache  shared:SSL:1m;
  ssl_session_timeout    5m;
 
  ssl_ciphers  HIGH:!aNULL:!MD5;
  ssl_prefer_server_ciphers  on;
 
  location /nginx {
  }
}

Ssl  on | off:是否启用当前虚拟主机的ssl功能
Ssl_ certificate  file:当前虚拟主机使用的PEM格式的证书文件
Ssl_certificate_key  file:当前虚拟机使用的证书文件中的公钥配对的私钥文件路径,依然是PEM格式
Ssl_protocols [SSLv2] [SSLv3] [TLSv1] [TLSv1.1] [TLSv1.2]:表示ssl协议的版本;摩恩为后3个
Ssl_session_cache off | none | [ builtin [ : size ] ]  [ shard : name : size ]:指明ssl会话缓存的机制
  builtin:使用openssl内建的缓存机制,对此机制为各worker独有
  shared:在各个worker进程共享的缓存
name:缓存空间的名称
size:缓存空间的大小以字节为单位,每1MB内存可缓存4000个会话
Ssl_session_time  timeout:ssl会话时长,指ssl  session  cache中缓存条目时长

3、再次访问web

更多详情见请继续阅读下一页的精彩内容:

  • 1
  • 2
  • 3
  • 下一页

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Nginx基础应用详解

相关文章

  • Centos中完全删除mysql的方法
  • Ubuntu 16.04 源码编译安装PHP7
  • centos7下lamp快速搭建环境
  • rsync+inotify实现数据同步及常见问题
  • nginx TCP 转发配置
  • centos6.8搭建NDS服务器(bind)
  • centos nginx 环境下 搭建 letsencrypt
  • Centos7 Zabbix3.4邮件告警配置(解决邮件内容为xx.bin附件问题)
  • Centos7安装并配置mysql5.7完美相关教程
  • Ubuntu启用VNC服务的配置

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Centos环境下配置postfix邮件
    • 详解Linux环境变量配置全攻略
    • centos7部署LAMP+xcache
    • Linux lsof命令使用详解
    • 详解CentOS 8 VMware虚拟机设置静态ip网卡上网
    • CentOS7上安装MySQL Workbench
    • Linux下如何永久修改主机名的方法步骤
    • Centos7.2安装Nginx实现负载平衡
    • Windows 10 下安装 Apache 2.4.41的教程
    • CentOS6下Apache服务器开启webDAV模块

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有