3

我在 SO 上找不到完全相同的问题。我希望有人可以帮助我解决这个问题。

比如说,用户输入http://www.example.com/abc#!def了 ,我想要做的是删除该${REQUEST_URI}部分中的所有符号,然后重定向到http://www.example.com/abcdef. 问题是这些符号可以出现在字符串中的任何位置,例如#ab!cdeg并且abcdef#!都应该重定向到abcdef.

如果我是正确的,mod_rewrite 没有字符串替换功能,所以这似乎是不可能的,但我正确吗?

4

1 回答 1

2

您可以使用 or中的正则表达式捕获 URL 的特定部分,但不能删除任意字符。RewriteCondRewriteRule

此外,您永远不会在 URL 中看到井号字符“#”及其后面的所有内容,因为客户端使用它来导航到文档的特定部分。

使用下一个标志更新:

RewriteRule (.*)[^a-zA-Z](.*) $1$2 [N]

此规则删除所有非^字母字符。

于 2013-03-18T09:11:37.133 回答