编码URL导致来自浏览器的禁止消息的奇怪问题

Get ready for some strangeness. The following works fine in Firefox:

Redirecting to this URL:

http://localhost/webs/van/front-end/slr/edit_rule.php?rule_name=test&rule_type=alloc_ext&copy=1

However, it does not work in IE8 since it converts the above to this, note the copyright symbol in the address at the end:

http://localhost/webs/van/front-end/slr/edit_rule.php?rule_name=test&rule_type=alloc_ext©=1

So, I thought weird, lets just encodeURIComponent to this:

window.location.href = 'edit_rule.php%3Frule_name%3Dtest%26rule_type%3Dalloc_ext%26copy%3D1';

BOTH, Firefox and IE8 now give me a Forbidden message!?!

You don't have permission to access /webs/van/front-end/slr/edit_rule.php? rule_name=test2&rule_type=alloc_ext&copy=1 on this server.

I don't understand, what is going on?

Thanks all for any help.

& needs to be HTML encoded, not URI encoded. Specifically, replace them with &

Technically, IE8's behavior is wrong, as &copy is missing the semicolon at the end to make it an HTML-encoded character.

IE8 most likely tries to change &copy to copyright symbol - © © Changing parameter name would be an easy fix to do.

I also see a space in the error message you posted after question mark before rule_name, may be it causes some weiredness.