Answer # 1)
It will become part of the url because it is no longer the token that the browser / server / etc. knows how to disassemble.
I mean that "?" plays a significant role in URLs - the server knows what sooner than after. The browser does not need to worry about what is or is not dynamic in the URI - all this is significant (although JavaScript shares the values ββin the location object).
The browser will not send "# ......" to the server, since the hashtag has special connotations for the browser.
However, if you avoid this hash in JavaScript, the browser does not hesitate to send this escaped string to the server as a literal value.
Why not? If your search query legally required a hash symbol (you make a POST request to the facebook wall and you send the phone number), then you will be screwed. Or you do a GET search of some number on 411.com or something else, and they really did not think about their application.
The problem is that the server is not going to understand that the escaped value should be stored separately from the URL if it occurs in the actual path.
It must accept escaped characters, otherwise spaces (% 20) and other daily characters that are otherwise valid in file names / paths / queries / values ββwill cause problems.
So if you are looking for:
//mysite.gov.on.ca/path/to/file.extension%23action%3Dfullscreen
Indeed, you will certainly be 404.
There are a few things you could do, I'm sure. The first one will be in Apache, or whatever you use, you can write RegEx that matches any URL up to the first "% 23", assuming not? in advance.
Fewer mind-related implementations may need to figure out if there is a way to avoid the "#" which are plugins.
Google, for the instance, uses a "hash" strategy ("#!"), Where it requests that the URLs be sent in such a way as to know whether to encode.
Other parameters may be checking the symbol "#" with url.indexOf("#"); and splitting the URL in the hash and sending the valid part.
In fact, it comes down to what you are trying to accomplish - I can indicate why this is a problem, but how best to make it a non-problem depends on what you are trying to do, how you are βtrying to do it, and what is allowed in The context in which you work.