nginx下面完美配置解决404 file not found(让nginx支持PATHINFO路由模式)

2023-11-16

老朱亲自写的,最完美Nginx 配置文件

server {
    listen       80;
    server_name  _;#xxxx.com;

    if ($host ~ "\d+\.\d+\.\d+\.\d") {
        return 404;#禁IP访问
    }
    root /var/www;
    index  index.html index.htm index.php;

    error_page  404              /404.html;
    location = /404.html {
        return 404 'Sorry, File not Found!';
    }
    error_page  500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html; # windows用户替换这个目录
    }

    location / {
        try_files $uri @rewrite;
    }

    location @rewrite {
        set $static 0;
        if  ($uri ~ \.(css|js|jpg|jpeg|png|gif|ico|woff|eot|svg|css\.map|min\.map)$) {
            set $static 1;
        }

        if ($static = 0) {
            rewrite ^/(.*)$ /index.php?s=/$1;
        }

    }

    location ~ /Uploads/.*\.php$ {
        deny all;
    }

    location ~ \.php/ {
       if ($request_uri ~ ^(.+\.php)(/.+?)($|\?)) { }
       fastcgi_pass 127.0.0.1:9000;
       include fastcgi_params;
       fastcgi_param SCRIPT_NAME     $1;
       fastcgi_param PATH_INFO       $2;
       fastcgi_param SCRIPT_FILENAME $document_root$1;
    }

    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny  all;
    }
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nginx下面完美配置解决404 file not found(让nginx支持PATHINFO路由模式) 的相关文章

  • 操作系统什么时候清除进程的内存

    进程在某些操作系统上成功或异常终止 操作系统何时决定擦除分配给该进程的内存 数据 代码等 在退出时或当它想为新进程分配内存时 这个清除内存分配过程在所有操作系统 winXP Win7 linux Mac 上都相同吗 据我了解 页表具有该进程
  • 如何使用AWK脚本检查表的所有列数据类型? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在这里 我正在检查表中第一列的数据类型 但我想知道AWK中表的所有列数据类型 我尝试过 但只能获得一列数据类型 例如 Column 1
  • 在 LINUX 上使用 Python 连接到 OLAP 多维数据集

    我知道如何在 Windows 上使用 Python 连接到 MS OLAP 多维数据集 嗯 至少有一种方法 通常我使用 win32py 包并调用 COM 对象进行连接 import win32com client connection wi
  • 标准头文件中的 C 编译器错误 - 未定义的 C++ 定义

    我正在尝试编译 C 程序 但收到许多错误 这些错误是在标准 C 头文件 inttypes h stdio h stat h 等 中遇到的 错误的来源是以下未定义的常量 BEGIN DECLS END DECLS BEGIN NAMESPAC
  • 无法执行'x86_64-conda_cos6-linux-gnu-gcc':没有这样的文件或目录(pysam安装)

    我正在尝试安装 pysam 执行后 python path to pysam master setup py build 这个错误的产生是 unable to execute x86 64 conda cos6 linux gnu gcc
  • 如何不断刷新屏幕并实时更新[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在linux上写一个C程序 不断刷新屏幕并实时更新 例如类似于top终端中的命令 谁能指出我正确的方向 为了保持它跨终端类型的可移
  • 为什么 Linux 对目录使用 getdents() 而不是 read()?

    我浏览 K R C 时注意到 为了读取目录中的条目 他们使用了 while read dp gt fd char dirbuf sizeof dirbuf sizeof dirbuf code Where dirbuf是系统特定的目录结构
  • 如何查找连接到 AF_INET 套接字的客户端的 UID?

    有什么方法或类似的东西ucred for AF UNIX如果是AF INET插座 TCP在我的例子中 找出连接到我的套接字的客户端的UID 还有 proc net tcp但它显示了UID of the creator插座的而不是连接的cli
  • Composer 安装要求

    我正在尝试将 Composer 安装到 Laravel 项目中 当我做的时候sudo composer install在项目目录中它显示了两个错误 Problem 1 Installation request for simplesoftw
  • 设置 Apache POI 的路径

    我想创建 Excel 文件并使用 java 程序在该文件中写入数据 That is here http www techbrainwave com p 554我在 java 文件所在的位置提取了 Apache POI 并将该路径包含在路径变
  • Linux shell 脚本中的 while 循环超时

    这工作正常 无限循环 while TRUE do printf done 我在尝试着timeout this while loop与timeout命令 所有这些都不起作用 timeout 5 while TRUE do printf don
  • 没有可用的符号表信息

    我正在测试第三方的库 它崩溃了 当我想查看崩溃的原因时 我的 gdb 告诉我没有可用的调试符号 Program received signal SIGSEGV Segmentation fault Switching to Thread 0
  • 在主目录中安装库

    在 Linux Ubuntu 中 我尝试运行一个工具 但它显示错误 库丢失 我无权在系统中安装任何内容 或者根本无法从我的用户帐户执行 sudo 是否可以在我的主目录 没有 sudo 中安装缺少的库 在我的例子中为 libstdc so 6
  • SONAR - 使用 Cobertura 测量代码覆盖率

    我正在使用声纳来测量代码质量 我不知道的一件事是使用 Cobertura 测量代码覆盖率的步骤 我按照以下步骤操作http cobertura sourceforge net anttaskreference html http cober
  • 信号处理程序有单独的堆栈吗?

    信号处理程序是否有单独的堆栈 就像每个线程都有单独的堆栈一样 这是在 Linux C 环境中 来自 Linux 手册页signal 7 http kernel org doc man pages online pages man7 sign
  • diff 文件仅比较每行的前 n 个字符

    我有2个文件 我们将它们称为 md5s1 txt 和 md5s2 txt 两者都包含a的输出 find type f print0 xargs 0 md5sum sort gt md5s txt 不同目录下的命令 许多文件被重命名 但内容保
  • 如何模拟ARM处理器运行环境并加载Linux内核模块?

    我尝试加载我的vmlinux into gdb并使用 ARM 内核模拟器 但我不明白为什么我会得到Undefined target command sim 这是外壳输出 arm eabi gdb vmlinux GNU gdb GDB 7
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • 在 Linux 上更快地分叉大型进程?

    在现代 Linux 上达到与 Linux 相同效果的最快 最好的方法是什么 fork execve combo 从一个大的过程 我的问题是进程分叉大约 500MByte 大 并且一个简单的基准测试只能从进程中实现约 50 个分叉 秒 比较最
  • 无法加载 JavaHL 库。- linux/eclipse

    在尝试安装 Subversion 插件时 当 Eclipse 启动时出现此错误 Failed to load JavaHL Library These are the errors that were encountered no libs

随机推荐

  • 华为OD七日集训第5期 - 按算法分类,由易到难,循序渐进,玩转OD

    目录 一 适合人群 二 本期训练时间 三 如何参加 四 7日集训第5期 五 精心挑选21道高频100分经典题目 作为入门 第1天 逻辑分析 第2天 双指针 第3天 滑动窗口 第4天 贪心算法 第5天 二分查找 第6天 分治递归 第7天 搜索
  • 关于AI和ChatGPT的使用,AI编程(AIGC),AI绘画(3)

    使用AI绘画要注意哪些问题 1 版权和知识产权 使用别人的AI模型进行绘画可能会侵犯其版权和知识产权 需遵守相关法律法规 2 数据隐私 在使用AI绘画应用时 可能需要提供个人图像或图片等数据 要谨慎保护数据隐私 防止被滥用 3 算法可解释性
  • 移动端适配方案的优缺点比较

    当我们说到适配方案的时候越来越多的人会潜意识的翻译成移动端适配方案 确实是这样 在移动端蓬勃发展的今天 移动端的适配显得尤为重要 PC应用的适配已经不是适配方案主要需要考虑的了 随着移动互联网的来临 追求移动端的完美展示才是王道 最近也在做
  • 什么是三目运算符?三目运算符怎么使用?

    1 什么是三目运算符 三目运算符又称为 三元运算符 和 条件运算符 在java C C python JavaScript PHP等编程语言中都有三目运算符 三目运算符的作用就是判断 可以理解为if条件判断的简化版 2 三目运算符的运算规则
  • SQL数据分析概念与基础命令

    Parch Posey 数据库 实体关系图 实体关系图 ERD 是查看数据库中数据的常用方式 下面是我们将用于 Parch Posey 数据库的 ERD 这些图可帮助你可视化正在分析的数据 包括 表的名称 每个表中的列 表配合工作的方式 你
  • 蓝色巨人——IBM公司

    蓝色巨人 IBM之所以被称为蓝色巨人是因为他蓝色的徽标 还有IBM的深蓝超级计算机在第二次人机大战中胜出 IBM是为数不多的在成功逃过数次经济危机 并在历次技术革命中成功转型的公司之一 虽然他是大型计算机制作商 但是他已经过气了 不过他确是
  • 搞懂Vision Transformer 原理和代码,看这篇技术综述就够了(三)

    点击蓝字 关注极市平台 作者丨科技猛兽 来源丨极市平台 审核丨邓富城 极市导读 本文为详细解读Vision Transformer的第三篇 主要解读了两篇关于Transformer在识别任务上的演进的文章 DeiT与VT 它们的共同特点是避
  • 代码查看工具_F12 - 开发者工具详解

    学习使用浏览器自带的 F12 网页开发者工具 可以帮助前端以及测试人员来快速定位调试分析问题 解决问题 一 如何调出开发者工具 在浏览器页面上 F12 键 笔记本电脑 Fn F12 右键选择 检查 N 快捷键 Ctrl Shift i 二
  • Qt 信号和槽的机制(逻辑清晰的来说清楚信号和槽,呕心沥血之作)

    Qt 信号和槽的机制 首先说声对不起 上次在PyQt5中写信号与槽 由于时间原因没有写完 有小伙伴留言说 希望把这章补全 所以 这是一篇迟来的文章 再次向大家说声抱歉 一 桌面程序的结构 Qt的使用场景 主要是应用于桌面程序来使用 不管你使
  • SpringCloud+mybatis+WeMagic Mapper注入失败 NPE空指针异常

    项目背景 Springcloud mybatis webMagic 获取百度热搜榜 搜狗热搜榜等热搜数据并存储到数据库中 使用Mybatis Generator自动生成Mapper后放置在Mapper文件夹 并添加了对应的注解支持 serv
  • 深度学习系列50:苹果m1芯片加速pytorch

    1 介绍 Apple的Metal Performance Shaders MPS 作为PyTorch的后端来加速GPU训练 MPS后端扩展了PyTorch框架 提供了在Mac上设置和运行操作的脚本和功能 MPS通过针对每个Metal GPU
  • 树莓派gpio接ttl转usb串口调试

    树莓派设置修改 以下教程只在树莓派3B 验证测试通过 其它版本未经测试仅供参考 1 gt 修改config txt enable uart 1 找到这行 将值改为1 dtoverlay pi3 miniuart bt 在config txt
  • uni-apph5 端获取当前位置坐标及地理位置逆解析

    1 uni app getLocation在浏览器端获取的地理位置坐标是你电脑里面ip地址位置的坐标 2 调用百度地图api逆解析地址对坐标解析详细地址 代码如下 经纬度 记得改成活的 测试用写死了 uni getLocation type
  • 详解 MySQL InnoDB 实现原理

    MySQL InnoDB 引擎现在广为使用 它提供了事务 行锁 日志等一系列特性 本文分析下 InnoDB 的内部实现机制 MySQL 版本为 5 7 24 操作系统为 Debian 9 1 InnoDB 架构 Innodb 架构图 Inn
  • Java基于Selenium动态抓取页面

    Java基于Selenium动态抓取页面 前情介绍 解决 思路 编码 解决过程中遇到的问题一 解决过程中遇到的问题二 总结 前情介绍 前段时间开发了一个功能 通过HttpClient访问某个页面 获取页面的全部html内容 之后通过抓取过来
  • 【Spring Boot 集成应用】 OAUTH2统一认证单点登录中的各种模式说明

    1 OAUTH2统一认证介绍 OAuth 2 0 是一个行业的标准授权协议 OAuth 2 0 专注于简化客户端开发人员 同时为 Web 应用程序 桌面应用程序 手机等各种设备接入提供特定的授权流程 2 传统登陆认证 传统登陆方式是在每个服
  • python基础笔记(三)_Matplotlib基础语法

    图表绘制工具 Matplotlib 概念 一个python版的matlab绘图接口 以2D为主 支持python numpy pandas基本数据结构 有较丰富的图表库 图表窗口 plt show 直接生成图表 matplotlib inl
  • seate底层原理_Seate

    Seata是阿里开源的一个分布式事务框架 Seata主要有两种分布式事务实现方案 AT及TCC AT模式主要关注多 DB 访问的数据一致性 当然也包括多服务下的多 DB 数据访问一致性问题 TCC 模式主要关注业务拆分 在按照业务横向扩展资
  • Jmeter(三十七) - 从入门到精通进阶篇 - 输出HTML格式的性能测试报告(详解教程)

    1 简介 相对于Loadrunner Jmeter其实也是可以有测试报告产出的 虽然一般都不用 没有Loadrunner的报告那么强大是一方面 但是有小伙伴们私下问 那宏哥还是顺手写一下吧 今天我们就来学习下 如何输入HTML格式的JMet
  • nginx下面完美配置解决404 file not found(让nginx支持PATHINFO路由模式)

    老朱亲自写的 最完美Nginx 配置文件 server listen 80 server name xxxx com if host d d d d return 404 禁IP访问 root var www index index htm