# Permalinks & special html characters

**URL:** https://meta.discourse.org/t/permalinks-special-html-characters/336472
**Category:** Support
**Tags:** permalinks
**Created:** [November 16, 2024, 7:29am UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472 "2024-11-16T07:29:12Z")
**Posts on this page:** 15
**Page:** 1

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 7:29am UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/1 "2024-11-16T07:29:12Z")

</div>

Hi,

I’m trying to enter permalinks (which works fine) but bump into an issue when entering url’s with special characters.

For instance when entering the url

```plaintext
display/exacom/ADO+<>+Jira+Cloud%3A+Date+time+sync

```

it is converted to

```plaintext
display/exacom/ADO+%3C%3E+Jira+Cloud%253A+Date+time+sync

```

Because &25 is the html counterpart of %

But then when I try the link

```plaintext
https://community.exalate.com/display/exacom/ADO<>+Jira+Cloud%3A+Date+time+sync

```

The page is not found.

Trying to use the html entity counterpart in the url entry, is not working either, because the original url is then not found.

Question - what is the correct way to enter permalinks which contains this type of characters (and avoid double HTML encoding)

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [November 16, 2024, 9:52am UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/2 "2024-11-16T09:52:10Z")

</div>

Just a wild guess: escaping, like `\%3A`?

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 12:30pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/3 "2024-11-16T12:30:24Z")

</div>

Tried it

```plaintext
bla\%3Abla

```

Becomes

```plaintext
bla%5C%253Abla

```

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 16, 2024, 12:44pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/4 "2024-11-16T12:44:16Z")

</div>

You could try entering them in rails to have more control over the escaping, maybe. Don’t know if it’ll help, but that’s what I’d try next.

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 1:18pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/5 "2024-11-16T13:18:12Z")

</div>

We are using the hosting option of [discourse.org](http://discourse.org)  
I don’t think we can have that liberty.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [November 16, 2024, 1:31pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/6 "2024-11-16T13:31:16Z")

</div>

those display links don’t look right - they are missing the first part it looks like.

have you tried [TinyURL](https://tinyurl.com/) link shortening?

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 1:50pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/7 "2024-11-16T13:50:42Z")

</div>

Hi Lily,

Thanks

These are wiki pages which we published on our old community site  
For instance

```plaintext
https://community.exalate.com/display/exacom/ADO<>+Jira+Cloud%3A+Date+time+sync

```

Is now accessible on

```plaintext
https://oldcommunity.exalate.com/display/exacom/ADO<>+Jira+Cloud%3A+Date+time+sync

```

Of course - people who try to access today the first version, will arrive at the discourse site, and get a 404. That’s why we want to use the permalinks feature

The problem is that it is not possible to enter the url in such a way that it is found and thus the redirect doesn’t kick in.

A tinyurl will not be possible because that is not what the users will be using.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 16, 2024, 2:45pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/8 "2024-11-16T14:45:36Z")

</div>

How many are there and do they all have the same nonsense at the head?

Do they all have xxx%3A+slug?

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [November 16, 2024, 2:59pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/9 "2024-11-16T14:59:42Z")

</div>

~~I’m obviously not understanding what you are doing. I just successfully created a test permalink on my site to this page:~~

> **[Service Archived - Exalate Community](https://oldcommunity.exalate.com/display/exacom/ADO+%3C%3E+Jira+Cloud%3A+Date+time+sync)**

~~when I go to `/test` on my site it takes me straight to that page.~~

 ![Screenshot 2024-11-16 at 6.58.59 AM](https://global.discourse-cdn.com/meta/original/4X/c/8/3/c83ddbaf943081bafce4e80355a4dad4829f2924.png)

* * *

edit: nevermind, I wasn’t comprehending your OP properly, I see what you are trying to do now. you are tying to use that weird complex link as the permalink. yikes. yea I don’t know if that is possible without some special escaping. 🤔

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 4:20pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/10 "2024-11-16T16:20:16Z")

</div>

Exactly - thanks for taking the time.

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 4:21pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/11 "2024-11-16T16:21:31Z")

</div>

> Do they all have xxx%3A+slug?

no

We created now a page with an overview of all the use cases

> **[Use cases on the old community site](https://community.exalate.com/t/use-cases-on-the-old-community-site/5786)**
>
> Following use cases are currently available on the old community site. Some of them are already migrated, some are still on the old site. Migrated ADO \<\> Jira Cloud: Date time sync Azure DevOps \<\> Jira Cloud Keep Issue hierarchy Azure...

There you can see some of the links and how these are url encoded.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 16, 2024, 6:23pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/12 "2024-11-16T18:23:31Z")

</div>

Hmm. It would have been easier to migrate those before you made your community live.

Most of those are fine,I think.

You might be able to make a permalink normalization that removed everything before the `>` and then make the permalink for just the part after that.

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 7:04pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/13 "2024-11-16T19:04:12Z")

</div>

The source url is being used in multiple locations and not necessarily under our control.

Being able to enter the source url would resolve the issue.

Lily is currently looking for a solution…

Thanks

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [November 16, 2024, 7:26pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/14 "2024-11-16T19:26:52Z")

</div>

Lily:

From a quick look most urls should work fine.

I think the rest have a greater than and everything after the greater than is plain characters. So you can make the permalink strip out the first part up to the greater than and it’ll Just Work.

---

<div class="post-metadata">

### Author: ![francis\_exalate](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/francis_exalate/32/461390_2.png) [@francis\_exalate](https://meta.discourse.org/u/francis_exalate)
#### Post date: [November 16, 2024, 11:15pm UTC](https://meta.discourse.org/t/permalinks-special-html-characters/336472/15 "2024-11-16T23:15:21Z")

</div>

Hi Jay,

The urls on that page have all been url encoded before adding, because the composer is also encoding it - which is to be expected.

They are not the original URL’s.

Would it work if I provide a text file with the original ones?

Francis
