Nginx 位置“不等于”正则表达式

2024-04-21

我该如何设置locationNginx 中的条件是否响应任何不等于列出的位置?

I tried:

location !~/(dir1|file2\.php) {
   rewrite ^/(.*) http://example.com/$1 permanent;
}

但它不会触发重定向。它只是使用服务器配置其余部分中的规则来处理请求的 URI。


根据nginx文档 http://wiki.nginx.org/HttpCoreModule#location

没有不匹配正则表达式的语法。相反,匹配目标正则表达式并分配一个空块,然后使用 location / 匹配其他任何内容

所以你可以定义类似的东西

location ~ (dir1|file2\.php) { 
    # empty
}

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

Nginx 位置“不等于”正则表达式 的相关文章

随机推荐

  • 如何找到当前的可执行文件名? [复制]

    这个问题在这里已经有答案了 可能的重复 如何获取 C 中当前可执行文件的名称 https stackoverflow com questions 616584 how do i get the name of the current exe
  • 线程处理时出现 msgbox 错误,GUI 块 [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我在执行以下 gui 时遇到问题 如果没有消息框 它可以正常工作 但是当有消息框时 它会阻塞 知道为什么 gui 在有消
  • 如何使用 Python 中的 rdkit 确定任何分子的石蜡基 CH3、CH2 和 CH 基团的数量?

    我正在尝试使用以下方法确定任何分子中石蜡基团的数量rdkitPython 中的包 最初 我开始确定石蜡基 CH3 基团 我必须将其扩展到石蜡基 CH2 和石蜡基 CH 基团 In the MWE 我试图通过匹配的子结构来确定这一点 但它无法
  • 如何包装文件对象的读写操作(只读)?

    我试图包装文件对象实例的读写操作 特别是readline and write 方法 通常 我会简单地用包装器替换这些函数 有点像这样 def log stream def logwrite write def inner data prin
  • 如何以编程方式改进破解替换密码?

    我已经编写 正在编写 一个程序来分析加密文本 并尝试使用频率分析来分析和破解它 加密文本采用每个字母替换其他字母的形式 即 a gt m b gt z c gt t 等 所有空格和非字母字符均被删除 大写字母变为小写 一个例子是 原始输入
  • decodeURIComponent 与 unescape,unescape 有什么问题?

    在回答另一个问题时 我意识到我的 Javascript DOM 知识已经有点过时了 因为我仍在使用escape unescape对 URL 组件的内容进行编码 而看起来我现在应该使用encodeURIComponent decodeURIC
  • 使用 python-pandas 索引数据帧时无法获得非唯一标签的正确切片绑定

    我有这样一个数据框df a b 10 2 3 1 0 0 0 4 about 50 000 rows 我希望选择df 5 a 但是当我打电话时df loc 5 a 我得到一个错误 KeyError Cannot get right slic
  • Java 不可变类规则

    下面的类是不可变的吗 final class MyClass private final int array public MyClass int array this array array 不 这不是因为数组的元素仍然可以更改 int
  • 如何用帖子标题 slug 重写 url?

    考虑一个网址 www example com paper ads details php req 43397 rnd 1308546000 我想将此网址更改为 www example com jobs in chanai php where
  • 更改 Eclipse 启动配置中的默认“要运行的程序”

    我时不时地使用以下命令从 Eclipse 中启动 JUnit 测试 运行方式 gt JUnit 插件测试 默认情况下 Eclipse 假设您正在运行需要工作台的东西 并在启动配置的 Main 部分中进行选择 LaunchConfig gt
  • 如何减少 Selenium 中 NoSuchElementException 的等待时间?

    在某些情况下 我知道元素不会显示 但它等待了约 30 秒 如何减少等待时间NoSuchElementException硒 示例代码 String name try name driver findElement By xpath XPath
  • Qt Ui 命名空间

    命名空间有什么意义Ui这是Qt自动生成的吗 这两个命名空间相同吗 在第一个中 其中包含 MainWindow 类的前向声明ui MainWindow h为什么它没有声明为class Ui MainWindow 编译器如何知道 MainWin
  • ActiveRecord::InvalidForeignKey: PG::ForeignKeyViolation: 错误: 表上的更新或删除违反了外键约束

    有一个非常相似的问题SO https stackoverflow com questions 47624334 error update or delete on table users violates foreign key const
  • 模板中带有参数的函数。姜戈

    在我的模板中 我显示用户关注的用户列表 我希望用户能够通过按钮删除他关注的用户之一 我有一个删除关系的函数remove relationship 这是我的 models py 中的函数 class UserProfile models Mo
  • 写入 Core Data 时创建新对象

    我有一个具有一些表单字段的应用程序 提交表单后 它将数据写入我的核心数据对象 但是 当再次提交表单时 它会覆盖现有数据而不是附加到它 这正是我想要发生的情况 guard let appDelegate UIApplication share
  • php 和 simpleXml - 如何更改节点内容

    我正在尝试使用 simpleXML 更改 XML 文件中节点的内容 我知道新节点内容的变量包含正确的内容 但由于某种原因 文件在保存时没有更改 我可能缺少一些基本的东西 因为我是 simpleXML 的新手 这是整个 php 脚本
  • Android 删除接近警报

    我正在开发处理接近警报的应用程序 我可以添加接近警报 但无法删除这些接近警报 我已经在手机和虚拟设备上尝试过我的代码 但无法删除它们 这是我的代码 将位置保存到数据库并添加接近警报的活动 saveButton setOnClickListe
  • 如何处理同时碰撞以使处理顺序无关紧要?

    假设有3个球同时碰撞 我发现解决冲突的顺序会对最终结果产生影响 这当然没有意义 为了解释和简单起见 考虑 1D 中的 3 个球 质量相同 弹性碰撞 顶部的数字是速度 箭头是方向 假设它们当前都互相接触 即发生碰撞 gt 2 gt 1 lt
  • Pydev 中的 Django 会产生多个进程?

    我在 Eclipse 中的 PyDev 中设置了我的项目 每当我调试我的项目时 一切都很顺利 但是一旦我尝试重新启动 Django 服务器 它就会生成一个额外的 runserver 进程 阻塞我用于服务器的端口 8000 有没有解决方法可以
  • Nginx 位置“不等于”正则表达式

    我该如何设置locationNginx 中的条件是否响应任何不等于列出的位置 I tried location dir1 file2 php rewrite http example com 1 permanent 但它不会触发重定向 它只