change your path to only be a controller / action, leave ~ / like this, I believe, makes IIS look for a literal path to the file that matches. therefore, depending on your routing and what this page is called, you can:
<location path="UploadController/UploadAction">
or if this is the default action and is requested as mysite / UploadController, try:
<location path="UploadController">
source share