首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Nginx配置仅匹配基本路径,否则返回404。为什么?

Nginx配置仅匹配基本路径,否则返回404的原因是为了提高服务器的安全性和性能。具体原因如下:

  1. 安全性:通过仅匹配基本路径,可以限制对服务器上敏感文件和目录的访问。如果允许匹配任意路径,可能会导致恶意用户访问到系统文件或者其他敏感信息,从而造成安全漏洞。
  2. 性能:Nginx是一个高性能的Web服务器,通过仅匹配基本路径可以减少不必要的资源消耗和处理时间。如果允许匹配任意路径,服务器需要对每个请求进行更复杂的匹配和处理,这会增加服务器的负载和响应时间。

应用场景:

  • 静态资源服务器:对于只提供静态文件的服务器,仅匹配基本路径可以有效地提供文件访问,并防止对其他路径的访问。
  • 反向代理服务器:作为反向代理服务器时,仅匹配基本路径可以将请求转发到后端服务器,并限制对其他路径的访问。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器(CVM):提供高性能、可扩展的云服务器实例,适用于各种应用场景。详情请参考:https://cloud.tencent.com/product/cvm
  • 腾讯云负载均衡(CLB):实现流量分发和负载均衡,提高应用的可用性和性能。详情请参考:https://cloud.tencent.com/product/clb
  • 腾讯云对象存储(COS):提供安全可靠的云端存储服务,适用于存储和管理各种类型的数据。详情请参考:https://cloud.tencent.com/product/cos
  • 腾讯云内容分发网络(CDN):加速内容分发,提高用户访问速度和体验。详情请参考:https://cloud.tencent.com/product/cdn
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Nginx http相关常用配置总结

为了在请求URI中查找匹配的location,nginx匹配前缀字符串location,如果有多个匹配则会先记住拥有最长匹配前缀字符串的location(即匹配度最高的那个,和其在配置文件中的顺序无关...),然后按location定义在配置文件中出现的顺序,从上到下,匹配正则表达式location,如果找到第一个匹配的location则停止查找,并使用这个location处理该请求,否则使用之前记住的最长匹配前缀字符串...top.gif文件,那么默认的,nginx将会返回404错误。...注意:假设请求携带非 / 的URI,形如http://192.168.1.102:8080/test.html,且匹配location / 则,则只会在html目录下查找该文件,如果找到了则返回否则返回...redirect 返回临时的302重定向 replacement 不以http,https开头(returns a temporary redirect with the 302 code; used

1.4K20

Nginx配置实现请求失败图片的统一转发

这个配置匹配以/media/avatar/开头的图片请求,并将其他类型的错误请求传递给Nginx默认的错误处理程序。...方案自查和单元测试 如果图片里面有多级目录,上面的配置有效吗 是的,上面的Nginx配置对于多级目录的图片路径也是有效的。正则表达式 ^/media/avatar/./.....(png|jpg|jpeg|gif)$ 可以匹配 /media/avatar/ 开头,并且路径中包含任意数量的子目录的图片请求。...error_page 404 =200 /media/avatar/default.png; recursive_error_pages on; } 这个配置与之前的配置基本相同,只是将正则表达式中的图片格式...需要注意的是,如果您的Nginx服务器上存在其他类型的静态文件(如CSS、JavaScript、字体等),这个配置匹配到这些文件并将它们转发到本地默认文件。因此,建议根据您的实际需求进行调整。

1.3K30
  • Nginx 配置

    Nginx 配置 在了解具体的Nginx配置项之前我们需要对于Nginx配置文件的构成有所概念,一般来说,Nginx配置文件会由如下几个部分构成: # 全局块 ......一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径配置文件引入,允许生成worker process数等。 events块:配置影响nginx服务器或与用户的网络连接。...(gif|jpg|png)$ { } } location / { # 如果以上都未匹配,会进入这里 } 文件路径配置 根目录 location / { root /home/barret...127.0.0.1:8888; # 如果请求路径跟文件路径按照如下方式匹配找到了,直接返回 try_files $uri $uri/index.html;...} } 首先 try_files,尝试直接匹配文件;没找到就匹配静态资源;还没找到就交给 Node 处理;否则返回 4xx/5xx 的状态码。

    1.8K22

    第十一章·Nginx常见问题

    Nginx多Server优先级 Nginx禁止IP直接访问 Nginx包含文件Include Nginx路径root与alias Nginx try_file路径匹配 Nginx调整上传文件大小 Nginx...1.如果是写在nginx.conf中,则需要手动注释,比较麻烦 2.如果是include的方式,那么需修改配置文件的扩展名,即可完成注释 Include包含的作用是为了简化主配置文件,便于人类可读。...inlcude /etc/nginx/online/*.conf #线上使用的配置 /etc/nginx/offline #保留配置,不启用(下次使用在移动到online中) Nginx路径root与alias...(png|jpg|gif)$ { alias /code/images/; } } Nginx try_file路径匹配 nginx的try_file路径匹配Nginx会按顺序检查文件及目录是否存在...,它找不到,所以返回后面的内容,即404.html #4.

    70310

    Nginx---静态资源处理

    服务器基础配置实例 前面我们已经对Nginx服务器默认配置文件的结构和涉及的基本指令做了详细的阐述。...通过这些指令的合理配置,我们就可以让一台Nginx服务器正常工作,并且提供基本的web服务器功能。 接下来我们将通过一个比较完整和最简单的基础配置实例,来巩固下前面所学习的指令及其配置。.../usr/local/nginx/html; } 再次访问上述地址,页面会出现404的错误,查看错误日志会发现是因为地址不对,所以验证了: root的处理结果是: root路径+location路径...{ root html; } } 这样的话,当返回404找不到对应的资源的时候,在浏览器上可以看到, 最终返回的状态码是200,这块需要注意下,编写error_page后面的内容,404后面需要加空格...可缓存但必须再向源服务器进行确认 no-cache 缓存前必须确认其有效性 no-store 不缓存请求或响应的任何内容 no-transform 代理不可更改媒体类型 public 可向任意方提供响应的缓存 private 向特定用户返回响应

    2.7K20

    vue的两种路由模式

    为什么在开发环境下,使用history模式的时候刷新都不报错,而打包成静态文件上线后,打开项目空白页面(这个大多数是在配置文件配置:publicPath: '....因为打包成静态文件上线后,这个项目就只是一个静态文件,它只是被你的nginx或其他代理服务器给托管起来了,在这个项目里进行F5刷新,还是会等于请求url,如果匹配不到相应的路径就还是会报404 而在开发环境下...,即#号后面不管是什么,刷新都是跳#号前面的原路径 hash路由 配置nginx 配置nginx后,在nginx根目录新建hashDeom文件夹,里面新建一个index.html,然后即可在浏览器打开...,但是如果当地址栏是localhost:5002/profile时,直接F5刷新,就会发起网络请求,然后nginx刚好有一个/profile路由记录匹配到,因此就会返回/profile返回的数据,而不会匹配到...后端需要匹配到增加一个覆盖全路径匹配/,让匹配不到/home时,让它重定向到一个abc.com页面(比如index.html),这样就不会报404

    2.1K10

    Nginx系列之核心模块(上)

    Nginx系列之核心模块(上) Nginx核心模块为nginx提供核心配置功能,包括静态目录配置、localtion匹配、限速以及各种优化参数,下面针对这几方面详细展开来说nginx的核心模块, 此部分内容分为上下两节...使用root指令通过简单指定路径即可获取请求文件的路径,但是无法达到对请求URI的修改,此时需要使用alias指定来配置。 2....如果错误响应是由代理服务器或FastCGI/uwsgi/SCGI/gRPC服务器处理的,并且服务器可能返回不同的响应代码(例如200、302、401或404),则可以使用以下配置进行处理: error_page...404 = /404.php; 可以看到以上配置中其实是省略了response,默认服务器返回的状态码一致。...以上两个指令配置上下文: http, server。 注意: 如果指令是在server级别指定的,则当server为默认server时才使用其值。

    1.8K10

    Nginx的安装部署以及使用

    nginx -c /usr/local/webserver/nginx/conf/nginx.conf nginx  -t 使用以下命令加载配置文件并重启: nginx -s reload 查看一下防火墙是否关闭...,如果未关闭需要关闭,否则从浏览器访问80端口可能受阻。...】 以上的配置只是最最基本配置,只能让nginx简单得跑起来,我们依然需要以下配置使nginx实现反向代理或者负载均衡。...URI的访问规则比如动态资源如何跳转,静态资源如何跳转等location后面跟着的/代表匹配规则 location / { 站点根目录,可以是相对路径,也可以是绝对路径 root html; 默认主页...一般不可能大于75秒;(只是一般情况,有些长处理可能超时时间较长) proxy_connect_timeout 30; } 后端服务器返回404时显示的页面 error_page 404 /404.html

    91010

    Nginx 静态资源部署

    Nginx模块添加 gzip_static测试 静态资源缓存配置 什么是缓存和Web缓存 Web缓存的种类 为什么要用浏览器缓存 浏览器缓存执行流程 浏览器缓存相关指令 Nginx服务端缓存 # Nginx...因为 Nginx 匹配不上时,直接返回它的欢迎界面。.../local/nginx/html/images/mv.png alias 的处理结果是:使用 alias 路径替换 location 路径,但是不会替换匹配后面的请求,即不会替换 /mv.png 需要在...后指定的资源路径Nginx 就会去这个路径下找资源,「忽略」location 本身的的请求,拼接 location 后面的请求。...{ root html; } } 这样的话,当返回 404 找不到对应的资源的时候,在浏览器上可以看到,最终返回的状态码是 200 而不是 404,这块需要注意下,编写 error_page 后面的内容

    5.5K20

    有遇到布署服务器后刷新404问题吗?

    ; location / { index /data/dist/index.html; } } 配置完成记得重启nginx // 检查配置是否正确 nginx -t // 平滑重启...我们先还原一下场景: vue项目在本地时运行正常,但部署到服务器中,刷新页面,出现了404错误 先定位一下,HTTP 404 错误意味着链接指向的资源不存在 问题在于为什么不存在?.../#/login 只有 website.com 会被包含在请求中 ,因此对于服务端来说,即使没有配置location,也不会返回404错误 解决方案 看到这里我相信大部分同学都能想到怎么解决问题了, 产生问题的本质是因为我们的路由是通过...JS来执行视图切换的, 当我们进入到子路由时刷新页面,web容器没有相对应的页面此时会出现404 所以我们只需要配置将任意页面都重定向到 index.html,把路由交由前端处理 对nginx配置文件....nginx -s reload 这么做以后,你的服务器就不再返回 404 错误页面,因为对于所有路径都会返回 index.html 文件 为了避免这种情况,你应该在 Vue 应用里面覆盖所有的路由情况

    8.1K31

    Nginx ngx_http_core_module模块详解(三)

    以server_name 定义虚拟主机 server{ listen 192.168.109.143:98 root /data/web2/; } #2、以ip加端口定义虚拟主机 定义路径相关的配置...,用于实现从uri到文件系统的路径映射;ngnix会根据用户请求的URI来检查定义的所有location,并找出一个最佳匹配,而后应用其配置 可用位置:server, location...=code; 可用位置:server, location 按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线表示为文件夹),如果所有的文件或文件夹都找不到,会进行一个内部重定向到最后一个参数...最后一个参数是回退URI且必须存在,否则会出现内部500错误 location /images/ { try_files $uri /images/default.gif...PATCH limit_except GET { allow 192.168.1.0/24; deny all; } 除了GET和HEAD之外其它方法允许

    94910

    nginx location配置

    精确匹配(=) location配置的path和客户端请求的path完全一致时匹配成功。 匹配成功后,nginx就会停止搜索其他匹配项。...精确匹配(=) 前缀匹配(^~) 正则匹配(~和~*) 通配符路径(没有任何修饰符,只有一个通配符路径"/") 下面我们使用不同的location配置组合来匹配location:2020/test_a这个请求...为什么返回的不是"null"),这里三个都匹配上了,但是nginx选用的是正则匹配结果,这个我不知道是什么原因,如果有大佬知道原因,还请大佬帮忙解惑。...rewrite,执行完当前location后还是没有找到资源文件,因此返回状态码"404"。...文件是否存在,如果不存在就返回403,如果存在,就使用这个文件路径来生成新的文件url,然后nginx内部重定向到这个文件资源。

    3.6K32

    Nginx篇--解读nginx配置

    # 为什么上面反向代理要除以4,应该说是一个经验值     # 根据以上条件,正常情况下的Nginx Server可以应付的最大连接数为:4 * 8000 = 32000     # worker_connections...uri { ... }     location URI {}:         对当前路径及子路径下的所有对象都生效;     location = URI {}: 注意URL最好为具体路径。         ...精确匹配指定的路径,不包括子路径,因此,只对当前资源生效;     location ~ URI {}:     location ~* URI {}:  模式匹配URI,此处的URI可使用正则表达式...正则表达式,在配置文件中定义的顺序。 如果第3条规则产生匹配的话,结果被使用。否则,如同从第2条规则被使用 location 的执行逻辑跟 location 的编辑顺序无关。...index.htm; } #error_page 404 /404.html;  默认路径为/usr/share/nginx/html 修改完后的目录为

    1.8K40

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券