# Markdown links not working without https://?

**URL:** https://meta.discourse.org/t/markdown-links-not-working-without-https/384591
**Category:** Support
**Tags:** composer
**Created:** [October 3, 2025, 2:26am UTC](https://meta.discourse.org/t/markdown-links-not-working-without-https/384591 "2025-10-03T02:26:49Z")
**Posts on this page:** 1
**Showing post:** 8

<div class="post-metadata">

### Author: ![supermathie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/supermathie/32/507518_2.png) [@supermathie](https://meta.discourse.org/u/supermathie)
#### Post date: [October 18, 2025, 4:44pm UTC](https://meta.discourse.org/t/markdown-links-not-working-without-https/384591/8 "2025-10-18T16:44:58Z")

</div>

> [@one1](#):
>
> However when you write
> 
> ```plaintext
> [link](example.com)
> 
> ```
> 
> link
> 
> It _looks like a link_ but there is in fact no link (meaning clicking on it does nothing).

Pedantically speaking, I think this the behaviour is acceptable. There’s not enough information by itself to distinguish between relative or a hostname.

> A link contains [link text](https://spec.commonmark.org/0.31.2/#link-text) (the visible text), a [link destination](https://spec.commonmark.org/0.31.2/#link-destination) (the URI that is the link destination)

`example.com` is not a valid URI by itself, even though if you type [example.com](http://example.com) by itself it’ll get turned into a link. That’s convention not specification though, since pineapple.belongson.pizza is also a valid hostname (well, it was until I let the domain expire) but doesn’t get auto-linked.

You can use:

- rooted URI  
`[rooted](/t/384591)`  
[rooted](https://meta.discourse.org/t/384591)
- relative URI (with or without ./)  
:information_source: these are valid markdown, but our parser forbids it  
`[relative](../../386082)`  
relative  
`[relative](./386082)`  
relative  
`[relative](386082)`  
relative
- absolute URI  
`[absolute](https://www.example.com/foo.html)`  
[absolute](https://www.example.com/foo.html)
- schemeless URI (similar to relative, but explicitly relative to only the scheme)  
`[schemeless](//www.example.com/foo.html)`  
[schemeless](https://www.example.com/foo.html)

> [@one1](#):
>
> Well, I just tried it in a github issue and it treated my link as a relative path

Arguably, this is the correct behaviour. Without any sort of anchoring at the front, it’s a path relative to the current location, same as `[link](./example.com)`.

---

_[View the full topic](https://meta.discourse.org/t/markdown-links-not-working-without-https/384591)._
