`
huangyongxing310
  • 浏览: 483461 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

test11223

    博客分类:
  • WEB
 
阅读更多
nginx 的启动、停止与重启
https://www.cnblogs.com/waynechou/p/7760251.html

./nginx  #打开 nginx
nginx -s reload|reopen|stop|quit  #重新加载配置|重启|停止|退出 nginx
nginx -t   #测试配置是否有语法错误

nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]

-?,-h           : 打开帮助信息
-v              : 显示版本信息并退出
-V              : 显示版本和配置选项信息,然后退出
-t              : 检测配置文件是否有语法错误,然后退出
-q              : 在检测配置文件期间屏蔽非错误信息
-s signal       : 给一个 nginx 主进程发送信号:stop(停止), quit(退出), reopen(重启), reload(重新加载配置文件)
-p prefix       : 设置前缀路径(默认是:/usr/local/nginx/)
-c filename     : 设置配置文件(默认是:/usr/local/nginx/conf/nginx.conf)
-g directives   : 设置配置文件外的全局指令
复制代码
/usr/local/webserver/nginx/sbin/nginx -s reload            # 重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen            # 重启 Nginx
/usr/local/webserver/nginx/sbin/nginx -s stop              # 停止 Nginx



# 停止 Nginx
/usr/local/nginx/sbin/nginx -s stop  (# 快速停止(kill -9))
/usr/local/nginx/sbin/nginx -s quit (# 正常停止)

#reload(重新加载配置文件)
/usr/local/nginx/sbin/nginx -s reload

# 重启 Nginx
/usr/local/nginx/sbin/nginx -s reopen

/usr/local/nginx/sbin/nginx

start nginx


# 验证配置文件;无法验证其它文件的情况
/usr/local/nginx/sbin/nginx -t

# 查看Nginx的版本号:
/usr/local/nginx/sbin/nginx -V

# 使用另一个配置文件
/usr/local/nginx/sbin/nginx -c conf/web01.conf



错误情况:
nginx: [error] CreateFile() "E:\nginx\nginx-1.9.3/logs/nginx.pid" failed
nginx: [error] Open() "E:\nginx\nginx-1.9.3/logs/nginx.pid" failed
#使用命令创建/logs/nginx.pid文件:
nginx -c conf/nginx.conf



#
可以通过server_name的域名(正则匹配)进行

server name 为虚拟服务器的识别路径。因此不同的域名会通过请求头中的HOST字段,
匹配到特定的server块,转发到对应的应用服务器中去。

所以nginx可以配置多个server监听同一个端口,再由server_name进行匹配由不同的server进行处理



#location
语法规则: location [=|~|~*|^~] /uri/ { … }
= 开头表示精确匹配
^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)。以xx开头
~ 开头表示区分大小写的正则匹配                     以xx结尾
~* 开头表示不区分大小写的正则匹配                以xx结尾
!~和!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则
/ 通用匹配,任何请求都会匹配到。
————————————————
原文链接:https://blog.csdn.net/qq_33862644/article/details/79337348

首先精确匹配 =-》其次以xx开头匹配^~-》然后是按文件中顺序的正则匹配-》最后是交给 / 通用匹配。
当有匹配成功时候,停止匹配,按当前匹配规则处理请求。



【alias】——别名配置,用于访问文件系统,在匹配到location配置的URL路径后,指向【alias】配置的路径。如:
location /test/
{
    alias/first/second/img/;
}
即:请求/test/1.jpg(省略了协议与域名),将会返回文件/first/second/img/1.jpg



【root】——根路径配置,用于访问文件系统,在匹配到location配置的URL路径后,指向【root】配置的路径,并把location配置路径附加到其后。如:
location /test/
{
    root /first/second/img/;
}
即:请求/test/1.jpg(省略了协议与域名),将会返回文件/first/second/img/test/1.jpg,相较于alias,使用root会把/test/附加到根目录之后。


在nginx中配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。 
     首先是location进行的是模糊匹配
    1)没有“/”时,location /abc/def可以匹配/abc/defghi请求,也可以匹配/abc/def/ghi等
    2)而有“/”时,location /abc/def/不能匹配/abc/defghi请求,只能匹配/abc/def/anything这样的请求

转发请求到【proxy_pass】配置的URL,是否会附加location配置路径与【proxy_pass】配置的路径后是否有"/"有关,有"/"则不附加

location /test/
{
    proxy_pass http://127.0.0.1:8080/;
}
即:请求/test/1.jpg(省略了协议与域名),将会被nginx转发请求到http://127.0.0.1:8080/1.jpg(未附加/test/路径)

location/test/
{
    proxy_pass http://127.0.0.1:8080/img;
}
即:请求/test/1.jpg(省略了协议与域名),将会被nginx转发请求到http://127.0.0.1:8080/img/1.jpg(未附加/test/路径,但附加了/test/之后的路径)。

location/test/
{
    proxy_pass http://127.0.0.1:8080/img/;
}

即:请求/test/1.jpg(省略了协议与域名),将会被nginx转发请求到http://127.0.0.1:8080/img/1.jpg(未附加/test/路径,但附加了/test/之后的路径)。


第四种(相对于第三种,最后少一个 / ):

location  /proxy/ {

proxy_pass http://127.0.0.1:81/ftlynx;

}

结论:会被代理到http://127.0.0.1:81/ftlynxtest.html 这个url


————————————————
版权声明:本文为CSDN博主「Michaelwubo」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Michaelwubo/article/details/82852486


location静态资源代理root和alias的区别




http {

include mime.types;

default_type application/octet-stream;

sendfile on;

keepalive_timeout 65;

include /application/nginx/conf/extra/*.conf;   #可以使用include引入别的配置文件

}



Nginx配置
https://www.cnblogs.com/ssgeek/p/9223321.html













分享到:
评论

相关推荐

    test TESTtest TESTtest TESTtest TEST

    test TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TESTtest TEST

    test3test3test3test3test3test3

    test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3

    speedtest服务器搭建教程

    (speedtest服务器搭建教程) 本篇教程旨在指导读者搭建speedtest服务器,通过安装PHPStudy、配置WNMP和Nginx、下载并配置speedtest测速平台,实现本地测速功能。 一、 PHPStudy 安装和配置 PHPStudy 是一个集成...

    eNetTest 网管内网单机测速工具

    eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速...

    parasoft c++Test9.0破解

    最好用的单元测试工具,除了这里你是找不到9.0版本的破解的。 ... 独立的版本破解: ... 把lic_client.jar复制到 ... c:\Program Files (x86)\Parasoft\Test\9.0\plugins\...这个是:plugins-c++Test For Visual Studio.7z

    蓝桥杯test蓝桥杯test蓝桥杯test

    蓝桥杯test蓝桥杯test蓝桥杯test

    测试test测试test

    测试test测试test测试test测试test测试test

    PortTest串口调试工具

    **串口调试工具——PortTest详解** 在计算机通信领域,串行端口(Serial Port)是一种常见的硬件接口,用于设备间的通信。PortTest是一款专为串口调试设计的实用工具,它可以帮助用户检测和测试串口通讯功能,确保...

    binding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobindi

    binding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test....

    BURNINTEST--硬件检测工具

    PassMark BurnInTest V5.3 Copyright (C) 1999-2008 PassMark Software All Rights Reserved http://www.passmark.com Overview ======== Passmark's BurnInTest is a software tool that allows all the major sub...

    testbench的入门和提高

    Testbench是验证数字电路设计的重要工具,特别是在Verilog和SystemVerilog等硬件描述语言(HDL)中。在数字集成电路设计流程中,Testbench扮演着模拟真实世界输入并评估设计功能和性能的角色。以下是对Testbench的详细...

    Parasoft c++Test9.0破解文件

    c:\Program Files (x86)\Parasoft\C++test for Visual Studio\9.0\plugins\ 这个目录中 把plugins-Test for Virsual Studio.7z 中的文件覆盖到 c:\Program Files (x86)\Parasoft\Test for Visual Studio\9.0\...

    test.dmp test.dmp test.dmp

    test.dmp test.dmp test.dmp test.dmp

    Parasoft C++Test 9.5

    Parasoft C++Test 9.5是一款由Parasoft公司开发的专业自动化白盒测试工具,专注于C++编程语言的测试。它集成了多种测试策略,包括静态代码分析、动态测试、单元测试、代码覆盖率分析以及缺陷预防等功能,旨在提高...

    Test Bench 经典教程.rar

    Test Bench是电子设计自动化(EDA)领域中的一个重要概念,主要用于验证数字集成电路的设计。在硬件描述语言(HDL,如Verilog或VHDL)中,Test Bench是模拟真实硬件环境来测试设计功能的一个虚拟平台。它能帮助...

    C++Test学习文档

    C++test 文档库包含以下各项: • C++test 用户手册 ( 当前指南): C++test 用户手册(当前指南):解释如何使用在 Eclipse 上构 建的 C++test 功能(如果您拥有单机版的 C++test),或者如何使用添加到 Eclipse 的...

    .net test.net test.net test.net test

    test rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest rtesttesttesttest ...

    test3test3test3test3test3

    test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3test3

    Parasoft C++ test 9.2官方用户手册_eclipse_中文版

    《Parasoft C++test 9.2官方用户手册_eclipse_中文版》是一本详尽的指南,专为使用C++test工具的开发者提供在Eclipse集成开发环境中的使用方法。C++test是一款强大的静态代码分析和单元测试工具,旨在提高C++软件的...

    Mercury QuickTest Professional 8.2教程

    Mercury QuickTest Professional 8.2 教程 Mercury QuickTest Professional 8.2 是一种功能强大的自动化测试解决方案,采用关键词驱动(Keyword-Driven)测试的理念,能够完全简化测试的创建和维护工作。本教程将对...

Global site tag (gtag.js) - Google Analytics