Spyke

Posts

lemmydev·Lemmy App Development byaprentic

Understanding an error message

I'm trying to follow the instructions at https://blog.joinmastodon.org/2018/06/how-to-implement-a-basic-activitypub-server/

I get the error message: {"error":"Unable to fetch key JSON at https://<domain>/actor"}

The actor file is located at: /var/www/<subdomain>/actor

that contains:

{
    "@context": [
        "https://www.w3.org/ns/activitystreams",
        "https://w3id.org/security/v1"
    ],

    "id": "https://<domain>/actor",
    "type": "Person",
    "preferredUsername": "alice",
    "inbox": "https://<domain>/inbox",

    "publicKey": {
        "id": "https://<domain>/actor#main-key",
        "owner": "https://<domain>/actor",
        "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnioC3W5cHbHLo+ln4QPm\n6EX1Ypvs5h+h47b5RwhF+2N84dSHXURUuA6a33+IlVqiO/3gGxIX+4MJuSDAxGZM\nWFDbuqDnHft2zWorKmIqyDzSSB/oMSqOVL8QV1KYWsCyhw9v2l5U6EIw2Z7u3Fc9\nW19dumK0ieL7CPME2dJGV5quBoa2AGg0D36XCp8hAWMXGUnlEcaqjyePJg9/quZn\no3W/+h5ujoUQG73SIUaJdsK16Q0E7o5N7JP7pqqE8p8pEXtpwXJJYE9y9ItTqvRS\na29xymyboCI6jSK+VTgjz1tj6W+EGQsPfka6t8Gq82NL00VxBEYb/eiEFuOSy4RL\ndwIDAQAB\n-----END PUBLIC KEY-----"
    }
}

I haven't been able to find out what that error means. Is it unable to find the actor file? Maybe I should change /actor to /actor/ and put the file inside that? If so, what should the filename be? Is it some problem with the public key inside the JSON? Is it mad about the newlines?

View original on lemm.ee
lemmy_support·Lemmy Supportbyaprentic

Help Building Lemmy [part 3/???]

Continuation from: https://lemm.ee/post/10351499 (I think that's the right thing to do rather than necroing an old thread)

I've been following the directions in https://join-lemmy.org/docs/administration/from_scratch.html and I'm hoping to get some help debugging my nginx config files.

It seems that the instructions for configuring nginx have some bugs.

curl https://raw.githubusercontent.com/LemmyNet/lemmy-ansible/main/templates/nginx.conf \
    --output /etc/nginx/sites-enabled/lemmy.conf
# put your actual domain instead of example.com
sed -i -e 's/{{domain}}/example.com/g' /etc/nginx/sites-enabled/lemmy.conf
sed -i -e 's/{{lemmy_port}}/8536/g' /etc/nginx/sites-enabled/lemmy.conf
sed -i -e 's/{{lemmy_ui_port}}/1234/g' /etc/nginx/sites-enabled/lemmy.conf
nginx -s reload

I was pointed at a thread which suggests using something similar to the ansible configuration https://github.com/LemmyNet/lemmy-ansible/pull/90/files

but I haven't been able to get that working either. Whenever I try to connect I get an error page and the logs are full of:

127.0.0.1 - - [18/Oct/2023:19:53:51 +0000] "GET /api/v3/site? HTTP/1.0" 500 170 "-" "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"

and

2023/10/18 18:48:08 [alert] 73064#73064: *321837 768 worker_connections are not enough while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET /api/v3/site? HTTP/1.0", upstream: "http://127.0.0.1:8536/api/v3/site?", host: "44.205.105.157"

I found some other threads that suggest this is a problem with a loop in nginx.

These are my config files:
/etc/nginx/nginx.conf: https://pastebin.com/aN78drum
/etc/nginx/sites_enabled/lemmy.conf: https://pastebin.com/ZGywujAB
/etc/nginx/sites_enabled/lemmy_internal.conf: https://pastebin.com/5AXbvmPx

I think I remembered to comment all the changes I made.

lemmy and lemmy-ui resolve to 127.0.0.1 in localhost

mydomain.com is a dummy I own the actual domain and it's pointed at an elastic IP that's associated with the ec2 instance. Everything is on that ec2 instance.

View original on lemm.ee
lemmy_support·Lemmy Supportbyaprentic

Help Building Lemmy [continued]

follow up from: https://lemm.ee/post/9562431

I ended up starting over on a t2.medium with Ubuntu and Lemmy 0.18.5.

Still following: https://join-lemmy.org/docs/administration/from_scratch.html

I had to make a few adjustments but that got me as far as:

nginx -s reload

But when I try to point a browser at my host, I don't get a config screen, just a JSON doc. I haven't been able to find anything in the logs that seems suspicious.

The only thing I did notice was that "id", "inbox", and "outbox" all have the wrong value. They all use:

https://lemmy.[mydomain]

instead of

https://lemmytests.[mydomain] (which is the correct name)

@[email protected] Was super helpful on my last post. I hope I can invoke their favor again.

View original on lemm.ee
lemmy_support·Lemmy Supportbyaprentic

Help building Lemmy

I'm working on an idea to improve comment sorting and I need to be able to get Lemmy running from source so I can implement and test it.

Right now I'm stuck on a fairly basic (I hope) problem.

I'm mostly following https://join-lemmy.org/docs/administration/from_scratch.html I'm running it on Debian instead of Ubuntu but I don't think that's the problem. (specifically a t2.small with the AWS Debian image). I'm also using 0.18.4 instead of 0.18.2. I also haven't (yet) done the possibly optional step of editing postgres config to allow password authentication instead of peer authentication.

Everything seems fine until I start Lemmy. After I run

systemctl enable lemmy; systemctl start lemmy

I try

curl -I localhost:8536/api/0.18.4/site

But I get:

HTTP/1.1 404 Not Found
content-length: 0
vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
date: Wed, 27 Sep 2023 17:51:51 GMT

When I check

journalctl -u lemmy

It does contain:

Starting http server at 127.0.0.1:8536

There are still a bunch of things I'll be trying but I wanted to check if this is a well known problem with a simple solution.

View original on lemm.ee

You reached the end