this post was submitted on 08 Jul 2023
38 points (97.5% liked)

Selfhosted

39980 readers
412 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

Is it possible to change lemmy's domain after I have already started it once and produced some content? I am thinking of moving to a subdomain but I'm not sure if it will go smoothly

top 13 comments
sorted by: hot top controversial new old
[–] [email protected] 17 points 1 year ago (2 children)

Basically, no:

It can cause some wackiness… basically you will need to maintain that old domain forever and everything will still refer to that old domain.

For example, your post looks like this from an ActivityPub/federation perspective:

{
    [...]
    "id": "https://atosoul.zapto.org/post/24325",
    "attributedTo": "https://atosoul.zapto.org/u/Soullioness",
    [...]
    "content": "<p>I'm curious if I can migrate my instance (a single user) to a different domain? Right now I'm on a free DNS from no-ip but I might get a prettier paid domain name sometime.</p>\n",
}

The post itself has an ID that references your domain, and the the attributedTo points to your user which also references your domain. AFAIK there is no reasonable way to update/change this. IDs are forever.

It would also break all of the subscriptions for an existing instance, as the subscriptions are all set to deliver to that old domain.

IMO your best bet would be to start a new instance on the new domain, update your profile on the old one saying that your user is now @[email protected] and maintain that old server in a read-only manner for as long as you can bear.

[–] [email protected] 4 points 1 year ago (1 children)

Yeh, It is big fault in ActivityPub design that IDs are linked to domain name. Should not be a case. Some UUID + public keys will make it way more flexible and resilient.

[–] [email protected] 1 points 1 year ago

Having a "source of truth" makes many things easier but less resilient. One place to go get the latest version of something mutable. The fediverse/ActivityPub needs to get on board with some form of DID or something similar before worrying about improving the ID system (and the ID system is inherently tied to JSON-LD, so AP would need to stop using that or there would need to be a new version of it) IMO.

[–] [email protected] 2 points 1 year ago

I see. Thank you for such a detailed explanation :)

[–] [email protected] 14 points 1 year ago (4 children)

You can, but other servers will not recognize it as the same server.

There are however ways to run your server on a subdomain and make it appear as if it's still the original domain. Is that what you're looking for?

[–] [email protected] 3 points 1 year ago (1 children)

That might fit my needs. Could you explain in more details please?

[–] [email protected] 7 points 1 year ago

/well-known/webfinger. If you use a reverse proxy on your main domain (example.com), you have it forward traffic from example.com/well-known/webfinger to subdomain.example.com/well-known/webfinger

[–] [email protected] 2 points 1 year ago (1 children)

Is renaming the instance domain without reinstalling Lemmy related to changing the WebFinger query? It's the trick some instances use to have a different instance domain from their username domain, like @[email protected] while the instance is mastodon.domain.com.

[–] [email protected] 2 points 1 year ago

Yes, that was what I was referring to. However, this is assuming that Lemmy has properly implemented webfinger and doesn't store direct links (which I haven't checked).

Alternatively, you could proxy all requests with application/activity+json in the Accept or Content-type headers.

[–] [email protected] 1 points 1 year ago (1 children)

run your server on a subdomain and make it appear as if it's still the original domain.

Do you mean make it look like the top level domain? Cause if so, do you have a link I can read a little about? I'm thinking of deploying my own lemmy instance.

[–] [email protected] 1 points 1 year ago

It's possible by having the webfinger endpoints at the "root" while keeping the rest of Lemmy on a subdomain. The main thing that determines the domain in your username is webfinger.

No clue if Lemmy or kbin support this config though, but quite a bit of the microblog-only parts of fedi do, and it's a widely used thing.

[–] gentoo_biscuit -1 points 1 year ago* (last edited 1 year ago)
[–] [email protected] 8 points 1 year ago

Not impossible but difficult. I would recommend against it.