htaccess 替换查询和重定向中的字符

2024-01-22

我需要将查询字符串中的“_”替换为“+”而不是重定向:

site.com/abc_def/

to

site.com/search.php?q=abc+def

我试过这个

RewriteRule ^([^/]+)/((.*)\_(.*))?$ /search.php?q=$1+$2 [R=301,L]

以下两条规则应该适合您:

RewriteEngine On

# first replace _ by + recursively
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^_]*)_(.*)$ /$1+$2 [L]

# once all _s are gone, rewrite to /search.php?q=<search>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^_]+)$ /search.php?q=$1 [L,QSA]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

htaccess 替换查询和重定向中的字符 的相关文章

  • R Strsplit 将分隔符保留在第二个元素中

    我已经尝试解决这个小问题近2个小时了 但没有成功 我只想用分隔符分隔字符串 一个空格后跟任何字符 在第二个元素中 我想保留分隔符 而在第一个元素中 它不应出现 例子 x lt 123123 123 A123 strsplit x A Z 结
  • 无法处理从 HTTP/HTTPS 协议到其他不同协议的重定向

    基本上 我试图从 CNet 的 Download com 获取 EXE 所以我创建了网络解析器 到目前为止一切进展顺利 这是直接从他们的网站提取的示例链接 http dw com com redir edId 3 siteId 4 oId
  • 通过匹配模式将字符串替换为另一个文本文件中的行

    我有一个带有对应键 gt 值的文件 sort keyFile txt head ENSMUSG00000000001 ENSMUSG00000000001 Gnai3 ENSMUSG00000000003 ENSMUSG0000000000
  • 将通知消息设置为请求属性,该属性应在 sendRedirect 之后显示

    我创建了两组 servlet 视图和控制器 处理程序 Views 执行简单读取并将数据转发到JSPs 控制器 执行数据库更新或插入并向任一JSP或视图类型 servlet 这里的通知是给用户的状态消息 示例 您已成功更新等等 如果我使用re
  • Redshift 提取两个模式之间的字符串 (regexp_substr)

    我正在尝试提取以下文本deviceSerialNumber 发生这种情况直到 或字符串的末尾 数据看起来像 someddata somedataagain deviceSerialNumber device12345 anotherFiel
  • 正则表达式查找 bcrypt 哈希值?

    我正在寻找使用正则表达式 在 PowerGrep 中 在数据库中查找 bcrypt 哈希字符串 尝试了这个正则表达式 A Za z 0 9 60 但没有找到匹配项 Bcrypt 哈希长度为 60 个字符 以 2y 开头 Example 2y
  • grep 以特定字符串开头的行

    我想找到文件中以特定字符串开头的所有行 问题是 我事先不知道字符串里有什么 该值存储在变量中 天真的解决方案如下 grep my string file txt 因为如果 Bash 变量my string包含任何正则表达式特殊字符 grep
  • 匹配除字符串列表之外的所有内容的正则表达式

    我需要匹配计划标识符的正则表达式 如果它找到任何不允许的字符串 该标识符将终止 我有这样的代码 function make tokens re var tokens specials names sort a b gt b length a
  • 在这些情况下限制破折号的正则表达式模式

    Scenario 我正在使用第三方文件重命名软件 该软件是用 Delphi 编写的 并且具有 pascal 脚本支持 该应用程序允许使用正则表达式来重命名文件 这意味着 如果我需要对文件名执行的操作不能仅使用一个正则表达式来完成 那么我可以
  • 更改 IIS URL 重写规则中的查询字符串值

    到目前为止我已经尝试了多种组合但没有运气 我有一个如下所示的网址 https teams company com Search pages results aspx url https teams2017 company com sites
  • 如何将字符串转换为正则表达式文字

    逃避任意的最好方法是什么std wstring在正则表达式中使用 例如 转换you owe me to you owe me 我的场景 我想使用std tr1 wregex搜索整个单词 所以我想做一些类似的事情 std wstring Re
  • JavaScript 解析 bbcode url

    我已经尝试解析 JavaScript 中的 bbcode URL 标签有一段时间了 例如 url http examp le linktext url 应该成为 a href http examp le linktext a 我对此做了很多
  • 仅匹配单词或字符串中的撇号

    我正在寻找一个可以匹配的Python正则表达式 didn t 并仅返回紧接在撇号前面的字符 例如 t 但不是 d or t 在开始和结束时 我努力了 w w 但它只匹配开头的撇号 更多示例 I m 应该只匹配 m并不是 I Erick s
  • 检查输出是否重定向

    我有一个用 C 编写的控制台应用程序 它处理一些数据然后打印结果 在结果可用之前 会有一个小动画 和不断更新的进度百分比 xx 显然 如果用户重定向我的应用程序的输出 这将被打印到输出重定向到的文本文件中 如果可能的话我想避免这种情况 那么
  • nginx 重写文件夹重定向

    all 我正在尝试在 nginx 中做一些事情来重定向对文件的所有调用 images 成为 assets images 有人可以帮我重写规则吗 给予 301 永久移动状态 以下是使用较新版本的 Nginx 执行此操作的首选方法 locati
  • htaccess 文件中的动态重写

    我正在我的 htaccess 文件中进行一些重写和重定向 我这样做的原因是因为我正在为现有网站开发新的设计和布局 因此我需要重定向以保持谷歌排名等 所以旧的 现有的 URL 看起来像这样 news internet shopper numb
  • 配置 .htaccess 以在 PHP 框架 (Silex) 上工作

    我的 Apache2 本地主机 linux 上有一个工作路径 http localhost lab silex web index php hello name 我想成为 http localhost lab silex hello nam
  • Python 按照层次结构按多个分隔符分割字符串

    我只想根据多个分隔符 例如 and 和 按顺序分割字符串一次 例子 121 34 adsfd gt 121 34 adsfd dsfsd and adfd gt dsfsd adfd dsfsd adfd gt dsfsd adfd dsf
  • 在R中提取其他两个字符串之间的字符串

    我试图找到一种简单的方法来提取出现在两个已知子字符串之间的未知子字符串 可以是任何内容 例如 我有一个字符串 a lt anything goes here STR1 GET ME STR2 anything goes here 我需要提取
  • 删除 .htaccess 中 URL 中各处的多组斜杠

    我目前有一个网站 访客可以访问每个网址 并使用任意数量的斜杠来分隔文件夹名称 例如 如果 URL 应该是 http example com one two three four 然后用户可以通过以下任意方式访问同一页面 http examp

随机推荐

  • Python局部变量初始化

    我对 python 相当陌生 我想知道局部变量是如何工作的 让我们从一个简单方法的示例开始 def do sth local dict a 1 b 2 c 3 我们假设 local dict 的使用方式类似于 const 变量 问题是 每次
  • 这个要点
  • 没有以圆圈显示是什么?
  • 我试图在我的网页上显示一些项目符号列表圆圈 但它似乎没有显示 我尝试使用 firebug 但我找不到问题所在 我浏览了整个 css 文件 但我没有不知道问题出在哪里 我希望列表与圆圈垂直 请你帮我 这是代码 Browser resets h
  • 安全套接字连接的最佳实践

    安全套接字连接 无 SSL 的最佳实践是什么 我将通过 TCP 套接字连接移动敏感数据 登录名 密码 帐户 并想知道是否有一种好的 快速的加密 解密方法并避免恶意注入 如果您对 SSL 过敏 请使用 SSH 但原理是相同的 密钥通过非对称算
  • options 参数中可选参数的默认值

    我想传递一个对象作为类构造函数的参数 选项对象的某些键是可选的 在打字稿中是否有更好 更惯用的方法来完成以下任务 谢谢 class Car color number numberOfWheels number constructor opt
  • Python Seaborn 图表 - 阴影区域

    抱歉我的菜鸟问题 但是如何在seaborn图表的上下线之间添加阴影区域 颜色 我正在处理的主要代码如下 plt figure figsize 18 10 sns set style darkgrid palette sns color pa
  • 如何修复“未找到初始内容”错误?

    在客户端的一些代码上使用 Flash Builder 4 6 单击调试 也尝试运行 并收到此错误 Process terminated unexpectedly initial content not found Launch comman
  • 如何在使用通配符的目录指令中使用 apache2 mod_rewrite?

    我编写了一个 Web 应用程序 在托管该 Web 应用程序的专用服务器下运行 此 Web 应用程序的实例可在不同的域中使用 每个域都有自己的 Web 应用程序文件副本 允许根据需要进行自定义 我在 Debian Squeeze 下运行 Ap
  • Google Sign in API - 获取照片 Uri 为空

    我使用 Google Sign in API 来请求用户个人资料 例如用户显示名称 头像照片 我有null值 GoogleSignInAccount getPhotoUrl 获取值 GoogleSignInAccount getDispla
  • 检测 PHP 代码块的超时

    如果 PHP 中的代码块花费太长时间 有没有办法可以中止该代码块 也许是这样的 Set the max time to 2 seconds time new TimeOut 2 time gt startTime sleep 3 time
  • React 无法更新状态

    I can t figure why I can t update my state see setCoords The request returns with a 200 code and the elements I m trying
  • 如何列出詹金斯管道脚本中目录中的所有目录

    我想从詹金斯管道脚本中获取特定目录中存在的所有目录 我们应该怎么做 如果您想要特定目录下的所有目录的列表 例如mydir使用 Jenkins Utility 插件你可以这样做 假设mydir位于当前目录下 dir mydir def fil
  • Node.js、socket.io https 连接

    服务器端代码 var io require socket io listen 8150 io sockets on connection function socket 客户端代码 var socketIO io 8150 socketIO
  • 无法在类库包中的 Entity Framework 7 beta4 上运行迁移

    我无法在类库包中执行迁移命令 我的 dnvm 版本是 来自 global json sdk version 1 0 0 beta5 12021 我正在将其导入到我的项目 JSON 中 dependencies EntityFramework
  • TypeScript 映射类型:获取数组的元素类型

    假设有一个容器类型 其数组属性为未知 生成类型T1 T2等 短T interface MultiContainer Item1 T1 Item2 T2 是否可以使用派生以下类型映射类型 https www typescriptlang or
  • Android SQLite 数据库单元测试

    我是 Android 应用程序开发的新手 我刚刚制作了一个笔记应用程序 我想对数据库的 insertNote readNote 和 updateNote 方法进行单元测试 我该怎么办 这是我的数据库的代码 谢谢 public class D
  • 迁移文件中 Django 的“primary_key”字段中的“serialize=False”是什么意思?

    我找不到原因serialize False在 Django 文档或源代码中的主键字段上设置 有什么特殊原因要设置吗 Thanks Azd325 听起来很简单 该字段不会成为序列化对象的一部分 不过 我猜您的问题与正在迁移的模型有关 并且生成
  • 如何将 IntelliJ IDEA 随机开放端口仅绑定到本地主机?

    当我在 macOS 上运行 IntelliJ IDEA 2021 1 2 终极版或社区版 时 我观察到所有网络接口 eth0 lo 上打开了 3 个随机端口 一个随机端口由 idea 进程打开 另外两个端口由 IntelliJ IDEA 启
  • AngularJS 路由控制器未重新加载

    我有一个非常简单的 AngularJS 应用程序 其中有两条路线 search results 当我从一条路线导航到另一条路线时 一切都按我的预期进行 获取所需的任何资源并完美显示内容 问题是 当我从一条路线导航到同一条路线 即 resul
  • 扫描附近的蓝牙设备

    如果手机打开了蓝牙 应用程序可以读取附近可发现设备的 ID 列表吗 如果是这样 哪个函数返回这样的列表 Thanks 看一看here http developer android com guide topics wireless blue
  • htaccess 替换查询和重定向中的字符

    我需要将查询字符串中的 替换为 而不是重定向 site com abc def to site com search php q abc def 我试过这个 RewriteRule search php q 1 2 R 301 L 以下两条