php - 从 url 中删除 %2523 并重定向到新的,而不使用 .htaccess
问题描述
我不知道如何从 php 中的 GET 生成的 URL 中删除 %2523。我想在没有那个的情况下将用户重定向到页面。有时它在字符串开头有#,这就是它生成“%2523”的原因。
例如,想要将它们从以下位置重定向:
本地主机/目录/值/%2523string
至
本地主机/目录/值/字符串
我当前的 .htaccess 文件:
Options -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/catalog/value\.php\?value=([^/]*)\s [NC]
RewriteRule ^ /catalog/value/%1? [R=301,L]
RewriteRule ^catalog/([^/]*)$ /value/value.php?color=$1 [L]
希望你能帮助我,从昨天开始尝试,但仍然没有任何效果。
解决方案
最后我通过在 .htaccess 开头添加这个来解决这个问题:
RewriteRule ^([^%]*)\%23(.*)$ /catalog/value/$2 [R=301,L]
推荐阅读
- c++ - C++ char Arrays 与数组进行比较并分配单个值;
- java - 将项目添加到收藏夹数据库时更改图标颜色
- javascript - 如何在这个 JavaScript 中放置一个循环?
- r - RStudio 的 Anaconda Navigator 安装问题
- swift - 如何将应用程序的方向锁定为 iPhone *only* 的纵向?
- python - 如何根据关键字将字符串拆分为新的数据框行
- flutter - 在 Flutter 应用程序中以向后滑动手势关闭键盘
- node.js - 如何将文件上传到 Cloudinary 中的某个文件夹?节点JS
- json - 按类别过滤 JSON 结果 - React Hooks
- windows - Snort (Windows):为什么我的本地规则没有显示在控制台上?