删除尾部斜杠

时间:2014-07-20 06:07:58

标签: mod-rewrite

我四处寻找答案,但找不到适合我的答案。

我有这个:

RewriteRule ^(.*)/?$ example.php?option=$1 [L]

我想要的是:

http://example.com/foo/bar/ > http://example.com/example.php?option=foo/bar
http://example.com/foo/bar  > http://example.com/example.php?option=foo/bar

但是发生了什么:

http://example.com/foo/bar/ > http://example.com/example.php?option=foo/bar/
http://example.com/foo/bar  > http://example.com/example.php?option=foo/bar

因此,当有一个尾部斜杠时,它会将它添加到它发送给PHP文件的选项中,但我不希望它将其删除。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我实际上找到了完成这项工作的方法!在example.php中我添加了这个:

$option = $_GET['option'];
$option = rtrim($option, '/');

这将从选项字符串中删除所有尾部斜杠,但不会删除中间的斜杠。正是我需要的。

如果有人在RewriteRule中找到了这样做的方法,请发帖,因为如果有人需要在非php环境中执行此操作,它可能会有用。