nginx conf 文件:检测浏览器语言是否为“de”,然后重定向到页面....否则重定向到其他页面

2024-04-19

我想在横幅中创建一个链接以重定向到两个页面之一。该链接指向subdomain.example.com/email。如果浏览器语言是“de”,则转到www.example.de/banner否则去www.example.com/banner。我的 nginx conf 语言能力不好,但我知道任何德语浏览器语言的前两个字符都是“de”(参见https://www.metamodpro.com/browser-language-codes https://www.metamodpro.com/browser-language-codes)。没有其他语言有这个。

location /email {
    if $http_accept_language === "de" { return 301 https://www.example.de/banner }
    else { return 301 https://www.example.com/banner}
}

更清洁且可扩展的解决方案使用map指示。

例如:

map $http_accept_language $redirect {
    default    https://www.example.com/banner;
    ~de        https://www.example.de/banner;
}

server {
    ...
    location /email {
        return 301 $redirect;
    }
    ...
}

See 这个文件 http://nginx.org/en/docs/http/ngx_http_map_module.html#map了解详情。

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

nginx conf 文件:检测浏览器语言是否为“de”,然后重定向到页面....否则重定向到其他页面 的相关文章

随机推荐

  • 启用 addEventListener 回调来执行 put 操作

    我需要做一个全球性的addEventListener喜欢的东西 我正在使用 React Native 需要监听深层链接重定向事件 我无法弄清楚 redux saga 的方式来做到这一点 我需要启用一个put来自 addEventListen
  • btree 实现中的分段错误

    任何人都可以帮助消除这个分段错误 我已经在这个代码上工作了一个星期仍然无法调试它 这段代码是Btree的实现 插入部分工作正常 但删除部分出现分段错误 我无法调试它 有人可以帮忙吗 我已经根据此链接给出了输入 已将字母值转换为 ASCII
  • 使用 django-piston 时出现 400 Bad Request 错误

    我正在尝试使用 Piston 为 Django 提供 REST 支持 我已经按照提供的文档实现了我的处理程序 问题是我可以 读取 和 删除 我的资源 但无法 创建 或 更新 每次我点击相关 api 时 都会收到 400 Bad reques
  • 返回 NULL 的 Trello.NET 对象

    迪伦梅斯特 我尝试了 Trello NET 包装器 但在成功接受 AppKey 和 Token 后它总是返回 NULL 我确信 AppKey 和 Token 是正确的 因为当我故意输入错误的 AppKey Token 时 就会出现错误 我安
  • 如何在boto3中为AWS EC2实例设置标签

    我是新来的Boto3 并且想要创建 VPC 子网和一些 ec2 实例 基本架构是拥有一个 VPC 2 个不同可用区 us east 1a 和 b 内的 2 个子网 并应用一个允许SSH and ping 我的问题是如何指定其他选项对于每个资
  • Django - 用户 is_active

    这是我的用户身份验证方法 def user login request if request method POST username request POST get username password request POST get
  • C# 对由线程池处理的相关任务进行排队

    我想将需要按顺序处理的多个流中的相关任务 在每个流中 排队 这些流可以并行处理 具体来说 假设我需要两个队列 并且我希望每个队列中的任务按顺序处理 以下是示例伪代码 用于说明所需的行为 Queue1 WorkItem wi1a enqueu
  • 如何按整数值对哈希图进行排序[重复]

    这个问题在这里已经有答案了 HashMap
  • 为什么单个 Ajax 调用工作正常,但连续的 Ajax 调用失败?

    Setup 我有一个数据表 其每一行都是可单击的 单击一行时 将进行 ajax 调用并返回一些数据 有时 ajax 调用需要一点时间 具体取决于返回的数据量 一切正常 Problem 当逐行快速单击时 就会出现问题 简而言之 在上一个 aj
  • JAXB XML 适配器通过注释工作,但不通过 setAdapter

    我完全了解如何使用XML适配器 http download oracle com javase 6 docs api javax xml bind annotation adapters XmlAdapter html to 转换不可映射的
  • 使用 @Assisted 注入与多个相同类型的参数(@Named params)

    我的问题归结为使用 Assisted 和工厂的两个字符串参数 问题是 因为 Guice 将类型视为参数的识别机制 所以两个参数是相同的 并且我收到配置错误 一些代码 public class FilePathSolicitingDialog
  • 将 UIView 保持在 Circle Objective-C 内

    我怎样才能拥有我的颜色选择器 UIView 留在 300px 300px 的色轮内 我正在使用UIPanGestureRecognizer将颜色选择器拖动到色轮周围UIImageView 色轮的直径为300px 这是我的图像UIViewCo
  • 使用 SqlBulkCopy 插入 sql_variant 列时如何设置列类型

    我正在使用 SqlBulkCopy 从 net DataTable 对象插入 更新到包含 sql variant 列的 SQL Server 表 然而 当我需要的是 datetime2 时 SqlBulkCopy 坚持将放入该列的 Date
  • Devise 和 I18n - 重置密码路由问题

    我将 I18n 添加到使用 Devise 的 RoR 应用程序中 如果我尝试重置密码 现在会收到错误消息 错误是 Routing Error No route matches action gt edit controller gt dev
  • 如何从子活动中完成父活动

    我是 Android 开发新手 我创建了一个主 Activity gt A 它有 4 个按钮 4 个按钮之一是 EXIT 按钮 单击退出按钮后 我开始另一个活动 gt B 这将通过 A 活动的意图打开 B 活动 活动 B 包含 您想退出吗
  • 删除扰乱格式的特殊字符

    我目前正在创建一个聊天 似乎无法找到一种方法来阻止用户发布特殊字符 这些字符会扰乱聊天的格式并使最终用户退出聊天 我基本上是想完全删除它们 我知道我现在拥有的代码 从技术上讲 如果它有效 应该只能替换它们 但是我只是想让它首先工作 这是我用
  • 在ESC/POS命令中选择字符代码表

    我需要在打印收据上打印非英文字符 使用热敏 POS 收据打印机 Xprinter XP 58III 热敏 POS 收据打印机支持通用 ESC POS 命令 据我所知 这应该通过设置字符代码表来完成 就我而言 目标代码页是 21 用于设置代码
  • 从 Go 连接到 MySQL 的推荐方式是什么? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个可靠的解决方案来从 Go 连接到 MySQL 数据库 我见过一些库 但很难确定完整性和当前
  • TransactionScope 无法与 DB2 提供程序一起使用

    我一直在尝试使用交易范围 with a DB2数据库 使用DB2 Net提供商 v 9 0 0 2 和 c 2 0 根据 IBM 的说法 应该支持它们 我已经尝试了在 IBM 论坛上可以找到的所有建议 例如here http www ibm
  • nginx conf 文件:检测浏览器语言是否为“de”,然后重定向到页面....否则重定向到其他页面

    我想在横幅中创建一个链接以重定向到两个页面之一 该链接指向subdomain example com email 如果浏览器语言是 de 则转到www example de banner否则去www example com banner 我