`

nginx

 
阅读更多
1.
nginx 如何处理请求?

基于域名来路由处理请求:
根据配置文件 '/conf/nginx.conf' 配置的域名, 由与域名匹配的请求头的'HOST'条目来决定请求由哪台服务器处理. 如果没有找到匹配的服务器名称, 使用第一台服务器作为默认的服务器.也可以通过 'default_server' 指定其它服务器作为默认服务器. 注意: 'default_server' 参数适用于版本 0.8.21+.
如果没有配置域名,默认为空, 而不是主机名.

server {
    listen       80         default_server ;
    server_name  nginx.org  www.nginx.org;
    ...
}

server {
    listen       80;
    server_name  nginx.net  www.nginx.net;
    ...
}

server {
    listen       80;
    server_name  nginx.com  www.nginx.com;
    ...
}


当然,如果不想处理没有配置的服务器名称,可以直接返回 444.

server {
    listen       80         default_server ;
    server_name  nginx.org  www.nginx.org;
    return       444;
}



混合IP和域名来跌幅处理请求: 先根据IP和端口进行匹配,再进行域名匹配.

server {
    listen        192.168.1.1:80;
    server_name   nginx.org  www.nginx.org;
    ...
}

server {
    listen        192.168.1.1:80  default_server;
    server_name   nginx.net  www.nginx.net;
    ...
}

server {
    listen        192.168.1.2:8000  default_server;
    server_name   nginx.com  www.nginx.com;
    ...
}


配置文件的某些属性支持通配符和正则表达式.
通配符包括 '*' '?'
正则表达式以 '~'开头,表示这是一个正则表达式.正则表达式最好用双引号包围, 避免'{' '}'这样的符号解析出错.

server_name  "~^(?<name>\w\d{1,3}+)\.nginx\.net$";


正则表达式支持变量替换:
标准语法 : ?<name>

server {
    server_name   ~^(www\.)?(?<domain>.+)$;

    location / {
        root   /sites/$domain;
    }
}



2.
SSL 配置:
server {
    listen               443;
    server_name          www.nginx.com;
    ssl                  on;
    ssl_certificate      www.nginx.com.crt;
    ssl_certificate_key  www.nginx.com.key;
    ...
}



3.
SSL 优化

worker_processes  4;

http {
    ssl_session_cache    shared:SSL:10m;
    ssl_session_timeout  10m;

    server {
        listen               443;
        server_name          www.nginx.com;
        keepalive_timeout    70;

        ssl                  on;
        ssl_certificate      www.nginx.com.crt;
        ssl_certificate_key  www.nginx.com.key;
        ...


worker_processes 数不能少于CPU数量.
启用SSL缓存,延长SSL缓存生存时间.
ssl_session_cache    shared:SSL:10m;
ssl_session_timeout  10m;

1m大约可包括4000个sessions.


证书链:
$ cat www.nginx.com.crt bundle.crt > www.nginx.com.chained.crt

server {
    listen               443;
    server_name          www.nginx.com;
    ssl                  on;
    ssl_certificate      www.nginx.com.chained.crt;
    ssl_certificate_key  www.nginx.com.key;
    ...
}



4.
启用关闭调试日志
error_log  /path/to/log  debug; #开启

http {
    server {
        error_log  /path/to/log; #关闭
        ...



5.
启动与关闭

start nginx

nginx -s stop	quick exit
nginx -s quit	graceful quit
nginx -s reload	 changing configuration, starting a new worker, quitting an old worker gracefully
nginx -s reopen	reopening log files


查看进程数:






注意: nginx 不要安装在中文目录下,否则会出现下面的错误信息.
nginx No mapping for the Unicode character exists in the target multi-byte code page.

6.
访问主页
http://localhost/

出现:
Welcome to nginx!
表示成功了.

























分享到:
评论

相关推荐

    nginx 离线安装包nginx 离线安装包

    5. **启动Nginx**:使用`/usr/local/nginx/sbin/nginx`(或相应安装路径)启动Nginx服务。 6. **验证运行**:访问服务器IP地址,如果看到Nginx默认的欢迎页面,表示安装成功。 常见使用场景: 1. **Web服务器**:...

    nginx版本升级步骤

    **Nginx版本升级步骤详解** 在Web服务器领域,Nginx以其高性能、低内存消耗以及高并发处理能力而备受青睐。随着新版本的发布,可能会包含性能优化、安全修复和新特性,因此定期更新Nginx版本是必要的。本文将详细...

    centos8 nginx1.20.1 与nginx配置文件

    现在,我们可以下载Nginx的源代码包`nginx-1.20.1.tar.gz`。你可以通过wget或者浏览器将文件下载到本地,然后解压: ```bash wget http://nginx.org/download/nginx-1.20.1.tar.gz tar -zxvf nginx-1.20.1.tar.gz cd...

    Nginx-1.23.2.zip

    Nginx是一个高性能的Web服务器和反向代理服务器,它以其高效的并发处理能力、低内存占用和稳定性而闻名。在1.23.2版本中,Nginx继续提供了优化和改进,以满足不断变化的互联网需求。这个版本可能是对之前版本的bug...

    nginx arm64版本nginx-linux-arrch64.zip

    这个名为"nginx-linux-arm64.zip"的压缩包提供的是专为ARM64架构(也称为AArch64)编译的Nginx版本,适用于基于Linux操作系统的64位ARM处理器设备,如树莓派、某些云服务器或嵌入式系统。无需繁琐的编译过程,只需...

    nginx替代方案,nginx代替apache与jboss

    ### Nginx 作为 Apache 和 JBoss 的替代方案 #### 背景介绍 随着互联网技术的不断发展,网站流量的增长对服务器性能提出了更高要求。Apache 和 JBoss 是两种广泛使用的 Web 服务器和应用服务器,但在高并发场景下,...

    nginx-upstream-jvm-route 和 nginx 对应版本,亲测可用

    此资源有两个文件,含 nginx-upstream-jvm-route 和 nginx 对应版本,都是tar.gz文件。 安装方法网上很多就不写了,亲测可用。 不用担心版本不匹配造成安装失败,再浪费积分去到处下载尝试的烦恼。 此资源有两个文件...

    nginx-1.13.3,nginx1.13.3不存在信息泄漏漏洞安全稳定nginx版本

    **Nginx 1.13.3 版本详解** Nginx 是一款高性能的 HTTP 和反向代理服务器,广泛应用于网站托管、负载均衡以及应用程序交付等领域。它以其高效、稳定和轻量级的特性著称,尤其在处理静态内容和高并发请求时表现优秀...

    Linux离线安装nginx安装包

    在Linux系统中,离线安装Nginx是一个常见的需求,特别是在没有互联网连接或者网络环境受限的服务器上。本文将详细讲解如何通过离线方式在Linux上安装Nginx,同时也会涉及Nginx依赖的软件如openssl和gcc的安装过程。 ...

    实战nginx.pdf

    实战nginx.pdf。主要内容包括:第1章 Nginx简介;第2章Nginx服务器安装与配置;第3章Nginx基本配置与优化;第4章Nginx与PHP;第5章Nginx与JSP、ASP.NET..第6章Nginx http负载均衡和反向代理;第7章Nginx 的rewrite...

    windows平台nginx编译nginx-http-flv-module

    1. **下载源码**:首先,从Nginx官网获取稳定版本的源代码,例如nginx-1.17.10。同时,从GitHub或其他可靠的来源下载HTTP FLV Module的源代码。 2. **安装编译工具**:Windows上需要安装MinGW或Visual Studio等编译...

    升级gitlab中nginx版本.docx

    "GitLab系统中Nginx版本升级和配置" 在实际生产环境中,GitLab系统的Nginx版本升级和配置是一个非常重要的任务。为确保系统的稳定性和安全性,需要对GitLab系统中的Nginx版本进行升级和配置。本文将详细介绍如何...

    Nginx课件完整版.pdf

    Nginx课件完整版.pdf Nginx是一款功能强大的网络服务器软件,能够提供高性能的Web服务器、反向代理、负载均衡等功能。本资源摘要信息将对Nginx的主要知识点进行详细的介绍。 什么是Nginx? Nginx是一个基于C语言...

    arm架构nginx编译器安装

    在IT领域,尤其是在服务器配置和优化的过程中,ARM架构和Nginx扮演着至关重要的角色。ARM(Advanced RISC Machines)架构是一种广泛应用于嵌入式设备、移动设备以及高性能计算的处理器架构,以其低功耗和高效能而...

    nginx带nginx-http-flv模块windows编译版rtmp

    **Nginx与Nginx-RTMP及Nginx-HTTP-FLV模块** Nginx是一款高性能、轻量级的Web服务器/反向代理服务器,被广泛应用于高并发场景,尤其在处理静态文件、HTTP缓存以及反向代理等方面表现出色。Nginx以其高效的事件驱动...

    在linux系统上升级nginx版本

    在 Linux 系统上升级 Nginx 版本 Nginx 是一个流行的开源 Web 服务器软件,可以运行在多种操作系统上,其中包括 Linux。随着 Nginx 的不断更新和发展,升级 Nginx 版本成为一个不可避免的问题。本文将指导您在 ...

    nginx免安装版(包含nginx服务启动和停止bat)

    **Nginx免安装版详解** Nginx是一款高性能、轻量级的Web服务器和反向代理服务器,常用于静态内容的处理和高并发场景。本资源提供的“nginx免安装版”是经过预配置和优化的版本,无需复杂的安装过程,可直接在...

    nginx-1.19.3_nginx-http-flv-module.rar

    标题中的"nginx-1.19.3_nginx-http-flv-module.rar"表明这是一个关于Nginx服务器的软件包,特别地,它包含了Nginx的1.19.3版本,并且已经集成了`nginx-http-flv-module`模块。这个模块是用于支持HTTP FLV(Flash ...

    Nginx 1.22.0 Linux 版本,解压安装。

    Nginx 1.22.0 Linux 版本,解压安装。 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型...

    ubuntu 1804 nginx 离线安装包

    在Ubuntu 18.04系统中安装Nginx服务器是一项常见的任务,特别是在无互联网连接的环境下,离线安装显得尤为重要。本资源提供了一个适用于这种场景的解决方案,它包括了Ubuntu 18.04环境下Nginx的离线安装包。这个离线...

Global site tag (gtag.js) - Google Analytics