I was retagging [Run a shell script with an html button](http://superuser.com/questions/292818/run-a-shell-script-with-an-html-button) and got a following message when trying to save changes:

> Links cannot contain 'mywebsite' (try a full domain or wrap it in a code block).

Here's how it looks. You can see the problematic link too, notice that it's not a markdown-formatted link but just a plain-text URL.

![Screenshot of the error message.][1]

*mywebsite* was already there before I edited it, so I guess the feature that prevents using it has been implemented in the last two years. I couldn't find any information why is using it actually prohibited.

Sometimes it's useful to reference an abstract site like *mywebsite*. *example.com* can be used - that's what I did to save that edit, but *mywebsite* seemed to fit much better, referring specifically to **that** website, not **some** website like *example.com* does. *localhost* is too specific, implying that the server is running on the same machine, which is not necessarily true.

I think revealing actual URL of the website usually isn't necessary. Sometimes websites being covered in the question don't even have an URL because they are tested locally. The tip in the error message doesn't seem helpful too and can teach users bad formatting habits. (Why can't I use it? Why wrap it in a code block if it's not a code?)

### Questions.

- Why is *mywebsite* disallowed?
- Why are code blocks an exception? Are there any other allowed formatting contexts that aren't mentioned in the error message? (quote blocks?)
- Why not disallow *example.com* except for code blocks?
- What about *localhost* or *127.0.0.1*?


  [1]: https://i.sstatic.net/0SI48.png