【问题标题】:Remove Duplicate Slashes and Backslashes in URL via .htaccess or PHP [duplicate]通过 .htaccess 或 PHP 删除 URL 中的重复斜杠和反斜杠 [重复]
【发布时间】:2013-04-21 15:08:11
【问题描述】:

我想完全删除 URL 末尾的所有斜杠或反斜杠。

http://www.mp7.org/?site=69.com\\\\\\\\\\\\\

通过 .htaccess 或 PHP。

以下 .htaccess 规则不起作用:

RewriteRule ^(.*)[/\]+$ $1 [L,R=301]

#### mod_rewrite in use
Options +FollowSymlinks
RewriteEngine On

请提供替代解决方案。

【问题讨论】:

标签: php .htaccess url rewrite


【解决方案1】:

您可以执行以下操作:

$string = substr($string, 0, strpos($string, "\\"));

如果前面没有\出现


编辑: 要测试的完整代码:

<?php
$string = "http://www.mp7.org/?site=69.com\\\\\\\\\\\\\\\\\\\\\\\\\\";
$string = substr($string, 0, strpos($string, "\\"));
echo($string);
?>

【讨论】:

  • 嗯,下面的代码会生成空白页: $string = substr($string, 0, strpos($string, "\")); ?>
  • 您必须将$string 更改为网址。如果你想看到一些东西,你必须使用echo($string);print $string;
  • 正如我所说,整个代码返回空白页:mp7.org/?site=69.com\\\\\\\\\\\\\"; $string = substr($string, 0, strpos($string, "\"));回声($字符串); ?>
  • 我发现了问题 \\ = \ 因为 \ 是你在 url 中有 13 \ 的转义字符,如果你想转义所有这些字符,你必须用 26 测试它 \ 查看编辑跨度>
  • 13 \ 给出一个错误,因为最后一个字符转义了“。什么结果会丢失一个”
猜你喜欢
  • 2013-04-14
  • 2018-07-26
  • 2016-01-10
  • 2014-08-02
  • 1970-01-01
  • 1970-01-01
  • 2017-01-12
  • 2014-08-14
  • 1970-01-01
相关资源
最近更新 更多