PHP重定向没有编码URL

时间:2013-08-31 01:43:02

标签: php codeigniter urlencode url-encoding urldecode

我有一个具有身份验证系统的codeigniter应用程序。有时,用户会被注销,并会转发到site.com/login?redir=feature/9+1/abc。登录后,它们应转发到site.com/feature/9+1/abc

转发用户时出现问题:网址中的+更改为%20%是一个不允许使用的网址字符,因此我的用户会看到一条错误消息,指出网址中包含无效字符。即使我将%添加到允许的字符列表site.com/feature/9%201/abcsite.com/feature/9+1/abc不同,用户也会看到404错误。

有没有办法可以使用PHP转发用户/feature/9+1/abc而不是/feature/9%201/abc

2 个答案:

答案 0 :(得分:1)

将登录网址修改为site.com/login?redir=feature/9%2B1/abc。这应该可以解决问题。

答案 1 :(得分:0)

它可能对你有用,因为它对我有用

在发送和尝试使用urldecode函数时尝试urlencode函数http://php.net/manual/en/function.urlencode.php