It's important to realize what a URL is and what it is not.
When you type an URL into an address bar, it is parsed, and a request is sent from the browser to the server. In the case of Apache (I dont' know about others), it takes the address and moves along from left to right, matching up directories and files. It returns the first one it finds. After if finds a matching file, everything after that is basically garbage. It can be ignored, or in the case of PHP it can be used as variables.
At this point, a URL becomes more than just a location of a file. In fact, it's no longer a location of a file at all, but a command line.
With a URL, we can ask to execute some code and give it some variables.
With PHP, a question mark is used to signal "the following is all variables". This makes it convenient for PHP coders.
A & is used to tell PHP "this is the end of one variable and the begnning of the next one".
The variables are just text (when passed using the URL) and can mean something or nothing at all. It's up to the code that is executing to determine the relevance, not the web server.
So, if mypage.php?page=downloads.php is the URL, the web server searches along directorys, and matches the first one it finds. This is: mypage.php. However, in the case that mypage.php does not exist on the server, it will return: Error 404 File not found. This first part, where the server matches the filename, everything after the ? is ignored. It's not part of the filename, it's variables for the file to use.
Assuming the webserver finds mypage.php, the page mypage.php will have a variable (depending on settings) called $page. Because of the URL, $page will equal downloads.php.
It's just text, and it doesn't have any significant meaning.
The page can process this text in any way it wants and either:
1. Do nothing display a blank page.
2. The code (not the server) can look for a file called downloads.php and dispaly something
3. Can look for a file called myboogers.html and display it.
4. Almost anything else imaginable.
You see, the text in the variable is pretty meaningless. A real file called download.php may or may not exist, and it doesn't matter. If it does exist, it may or may not be in the same folder as mypage.php.
Because it's after the ?, the server doesn't even care that it exists.