Parse question mark as normal character after mod_rewrite(mod_rewrite 后将问号解析为普通字符)
问题描述
所以这可能听起来很奇怪,但是我目前有 mod_rewrite 设置来传递 2 个变量.
So this may sound weird, however I currently have mod_rewrite set-up to pass 2 variables through.
RewriteRule ^profiel/(.*)$ index.php?p=profiel&user=$1
在第二个变量 (&user=) 中,它传递一个用户名,该用户名是通过 PHP 中的 GET 检索到的.但是,某些用户名中可能带有问号.但是,如果是这种情况,问号将不会传递给 GET 变量.(例如:www.example.com/profiel/whoami?"最终只是whoami"而不是whoami?")
In the second var (&user=), it passes a username which is retrieved through GET in PHP. However, some of the usernames can have question marks in them. However if this is the case, the question mark won't be passed to the GET variable. (For example: "www.example.com/profiel/whoami?" ends up as just "whoami" instead of "whoami?")
老实说,我不知道如何解决这个问题.任何帮助都会很棒!
I honestly don't know how to solve this problem. Any help would be great!
推荐答案
您可以通过直接从 THE_REQUEST 变量中捕获您的值来使用此规则:
You can use this rule by capturing your values directly from THE_REQUEST variable:
RewriteEngine On
RewriteCond %{THE_REQUEST} /(profiel)/(S+)s [NC]
RewriteRule ^profiel/ index.php?p=%1&user=%2 [L,NC]
这篇关于mod_rewrite 后将问号解析为普通字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:mod_rewrite 后将问号解析为普通字符
基础教程推荐
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
- 如何替换eregi() 2022-01-01
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
