Skip to main content

No Mastodon connection after update to 2021.07

After the upgrade to 2021.07 using the full zip files, I came across a bug which I could fix with help from annando on github.

After that I do not see any php errors but I also do not get any messages from all my mastodon contacts. Can anyone give me a hint about this?

I'm using nginx as webserver and also nginx as reverse proxy in front of it. PHP is 7.3.

!Friendica Support
@Michael Vogel or maybe this is more of what you had in mind? (I'm sorry. I'm not at home right now which makes searching and formating not so easy):

[14/Jul/2021:14:34:35 +0200] "GET /static/identity-v1.jsonld HTTP/1.0" 404 12748 "-" "-"
[14/Jul/2021:14:34:35 +0200] "GET /static/activitystreams.jsonld HTTP/1.0" 404 12752 "-" "-"

2021-07-14T12:34:35Z index [INFO]: Provided GUID found. {"guid":"da014be1-1060-eed9-8688-f31661226866","uri-id":174669} - {"file":"Objects.php","line":56,"function":"rawContent","uid":"f9e7c4","process_id":4145}
2021-07-14T12:34:35Z index [INFO]: Fetching activity {"item":327476} - {"file":"Transmitter.php","line":1043,"function":"createActivityFromItem","uid":"f9e7c4","process_id":4145}
2021-07-14T12:34:35Z index [INFO]: Fetched activity {"item":327476,"uid":2} - {"file":"Transmitter.php","line":1159,"function":"createActivityFromItem","uid":"f9e7c4","process_id":4145}
2021-07-14T12:34:35Z index [NOTICE]: no data for session {"session_id":"0ipj5ne42lga8nkjmvc82k5t5t","uri":"\/static\/identity-v1.jsonld"} - {"file":"Database.php","line":72,"function":"read","uid":"5db843","process_id":20467}
2021-07-14T12:34:35Z index [INFO]: No HTTP_SIGNATURE header [] - {"file":"HTTPSignature.php","line":476,"function":"getSigner","uid":"5db843","process_id":20467}
2021-07-14T12:34:35Z index [WARNING]: JsonLD normalize error [] - {"file":"JsonLD.php","line":110,"function":"normalize","uid":"f9e7c4","process_id":4145}
2021-07-14T12:34:35Z index [NOTICE]: JsonLD normalize error {"messages":["Could not convert input to RDF dataset before normalization.","Could not
expand input before serialization to RDF.","Could not perform JSON-LD expansion.","Could not retrieve a JSON-LD document from the URL: https:\/\/fd\/static\/identity-v1.jsonld"]} - {"file":"JsonLD.php","line":111,"function":"normalize","uid":"f9e7c4","process_id":4145}
2021-07-14T12:34:35Z index [INFO]: JsonLD normalize error {"trace":"#0 \/var\/www\/friendica\/vendor\/friendica\/json-ld\/jsonld.php(159): JsonLdPr
ocessor->normalize(Object(stdClass), Array)\n#1 \/var\/www\/friendica\/src\/Util\/JsonLD.php(100): jsonld_normalize(Object(stdClass), Array)\n#2 \/
var\/www\/friendica\/src\/Util\/LDSignature.php(104): Friendica\\Util\\JsonLD::normalize(Array)\n#3 \/var\/www\/friendica\/src\/Util\/LDSignature.p
hp(78): Friendica\\Util\\LDSignature::hash(Array)\n#4 \/var\/www\/friendica\/src\/Protocol\/ActivityPub\/Transmitter.php(1163): Friendica\\Util\\LD
Signature::sign(Array, Array)\n#5 \/var\/www\/friendica\/src\/Module\/Objects.php(131): Friendica\\Protocol\\ActivityPub\\Transmitter::createActivi
tyFromItem(327476)\n#6 [internal function]: Friendica\\Module\\Objects::rawContent(Array)\n#7 \/var\/www\/friendica\/src\/App\/Module.php(332): cal
l_user_func(Array, Array)\n#8 \/var\/www\/friendica\/src\/App.php(562): Friendica\\App\\Module->run(Object(Friendica\\Core\\L10n), Object(Friendica
\\App\\BaseURL), Object(Friendica\\Util\\Logger\\StreamLogger), Object(Friendica\\Util\\Profiler), Array, Array)\n#9 \/var\/www\/friendica\/index.p
hp(42): Friendica\\App->runFrontend(Object(Friendica\\App\\Module), Object(Friendica\\App\\Router), Object(Friendica\\Core\\PConfig\\JitPConfig), O
bject(Friendica\\Security\\Authentication), Object(Friendica\\App\\Page), 1626266074.9257)\n#10 {main}"} - {"file":"JsonLD.php","line":112,"function":"normalize","uid":"f9e7c4","process_id":4145}
2021-07-14T12:34:35Z index [NOTICE]: no data for session {"session_id":"h5a65d70on08btpab8aoj01230","uri":"\/static\/activitystreams.jsonld"} - {"file":"Database.php","line":72,"function":"read","uid":"22627a","process_id":19976}
2021-07-14T12:34:35Z index [INFO]: No HTTP_SIGNATURE header [] - {"file":"HTTPSignature.php","line":476,"function":"getSigner","uid":"22627a","process_id":19976}
You should have some POST to something withinbox, comparable to this one: - - [14/Jul/2021:13:05:55 +0000] "POST /inbox HTTP/1.1" 202 4881 "-" "Friendica 'Siberian Iris' 2021.07-1424"
@Michael Vogel indeed I see the post from and even some coming from mastodon close before. I do even get a notification saying you commented. But nothing in my timeline.

[14/Jul/2021:15:06:19 +0200] "GET /static/activitystreams.jsonld HTTP/1.0" 404 12752 "-" "-"
[14/Jul/2021:15:06:19 +0200] "POST /inbox HTTP/1.0" 202 0 "-" "http.rb/3.3.0 (Mastodon/3.0.2; +"
[14/Jul/2021:15:06:55 +0200] "GET /static/activitystreams.jsonld HTTP/1.0" 404 12752 "-" "-"
[14/Jul/2021:15:06:55 +0200] "POST /inbox HTTP/1.0" 202 0 "-" "http.rb/4.4.1 (Mastodon/3.4.1; +"
[14/Jul/2021:15:07:00 +0200] "GET /static/activitystreams.jsonld HTTP/1.0" 404 12752 "-" "-"
[14/Jul/2021:15:07:00 +0200] "POST /inbox HTTP/1.0" 202 0 "-" "Friendica 'Siberian Iris' 2021.09-dev-1429;"

2021-07-14T13:07:00Z index [NOTICE]: no data for session {"session_id":"jgq2u2p3t74d6lqr0ho76ho615","uri":"\/static\/activitystreams.jsonld"} - {"file":"Database.php","line":72,"function":"read","uid":"dcb05a","process_id":4143}
2021-07-14T13:07:00Z index [INFO]: No HTTP_SIGNATURE header [] - {"file":"HTTPSignature.php","line":476,"function":"getSigner","uid":"dcb05a","process_id":4143}
2021-07-14T13:07:00Z index [ERROR]: compacting error {"line":911,"message":"Could not expand input before compaction."} - {"file":"JsonLD.php","line":168,"function":"compact","uid":"433cce","process_id":4150}
2021-07-14T13:07:00Z index [NOTICE]: Unable to retrieve AP contact for actor - message is discarded {"actor":null} - {"file":"Receiver.php","line":104,"function":"processInbox","uid":"433cce","process_id":4150}
2021-07-14T13:07:00Z index [INFO]: http_status_exit 202 [] - {"file":"System.php","line":125,"function":"httpExit","uid":"433cce","process_id":4150}
You said something about using nginx as reverse proxy, haven't you? We had a support case where a reverse proxy had removed the authentication header information. Please have a look at this.
I will have a look later or tomorrow and come back to you, but I updated the last ~6 versions of friendica with this nginx/proxy/php/mysql setup. And as I said with 2021.04 everything was doing fine.
Do you get the "compacting error" all the time? This slightly looks like this issue:

But this was only some glitch and we have a workaround now.
Do you get the "compacting error" all the time?
Yes this messages is all over the place.
This is exactly what I see. Thanks for the link.

Do I understand correctly, that this change is merged into dev but not available in 2021.07?
This is part of the current stable version as well. Possibly your system has no read access to the files "identity-v1.jsonld" and "security-v1.jsonld" in the "static" folder.
This entry was edited (3 months ago)
Access doesn't seam to be the problem:

root@serverpi:/var/www/friendica/static# ll -d
drwxr-xr-x 2 www-data www-data 4096 Jul  4 20:50 .
root@serverpi:/var/www/friendica/static# ll *v1*
-rw-r--r-- 1 www-data www-data 3622 Jul  4 20:50 identity-v1.jsonld
-rw-r--r-- 1 www-data www-data 2059 Jul  4 20:50 security-v1.jsonld

But I think I'll try to switch to dev using git clone anyway. Until now I used the zip files to upgrade.

Also I'm on Raspberry pi OS 32bit (raspi 4) if this information has anything to with it.
A Raspi is fine.
Ok. Got it. The static files could not be accessed with my old nginx config. It is the sample from github but don't ask me how old exactly.

This is the "old" rewrite to front controller (I had a quick look in the history: 3+ years ago) which rewrites access to the folder /static also to the front controller:
  # rewrite to front controller as default rule
  location / {
    if ($is_args != "") {
        rewrite ^/(.*) /index.php?pagename=$uri&$args last;
    rewrite ^/(.*) /index.php?pagename=$uri last;

This is the latest rewrite which tries available files first:
  # rewrite to front controller as default rule
  location / {
    try_files $uri /index.php?pagename=$uri&$args;

Thanks again for your fast help @Michael Vogel.
In the future I need to check the nginx config more frequently.
Could you check whether our sample nginx configuration in our repository is fine?
BTW: a post from my system came through:
2021-07-14T13:07:00Z worker [INFO]: Transmit to returned 202 {"worker_id":"2f27a52","worker_cmd":"APDelivery"} - {"file":"HTTPSignature.php","line":305,"function":"transmit","uid":"7635fd","process_id":3485}

Please check your access log from that timestamp.

Martin Winkler reshared this.

Unsere 3. Studie im Kontext von Organisationsentwicklung & Organisationspsychologie läuft. Wir suchen 500 Proband:innen die im Umfeld von Software-Produktentwicklung tätig sind und 10 Minuten Zeit für unsere Umfrage haben.

Zur Studie:

In English:

Mehr Infos, Videos & Quellen.

Martin Winkler reshared this.

Martin Winkler reshared this.

Am Samstag, dem 3. April 2021, von 22:15 bis 23:00 Uhr halten Stefan und ich den Vortrag: Das Netz als Inspirationsquelle für Kunst(werke) mit anschließender Fragerunde. Die Veranstaltung findet im Rahmen des Digital Verteilten Online-Chaos (DiVOC) mit dem Motto: Reboot to Respawn (R2R) statt.

Wir freuen uns über Zuschauer*innen auf

Informationen zum Vortrag unter:

#DiVOC #Reboot2Respawn #R2R

Martin Winkler reshared this.

Kodi Logdatei an syslog senden

Da ich inzwischen den Schwiegerleut und meinen Eltern #Kodi als Mediacenter aufgeschwatzt habe - natürlich die Raspis per VPN an mich angebunden - wollte ich die Kodi-Logs gerne im syslog sehen. Da Kodi selbst dazu nichts anbiete habe ich diesen Weg für die #bash gefunden:

tail -n0 -F /home/kodi/.kodi/temp/kodi.log | stdbuf -o0 cut -c37- | logger -t KODI

tail -F: Falls per systemd oä gestartet, wird solange probiert bis die Datei kodi.log lesbar wird.

stdbuf -o0: cut soll nicht puffern sondern direkt an logger weitergeben.

cut -c37-: Der Kodi eigene Zeitstempel wird entfernt.

logger -t KODI: Die aktuelle Zeile wird mit dem Programmnamen "KODI" an syslog weitergereicht.

So kann ich wunderbar in #LibreNMS nach Lust und Laune in der Syslog-Ansicht herumfiltern.
Alles klar, ich selber habe das nicht ausprobiert aber ich habe angenommen das dieses möglicherweise eine verbreitetere Lösung ist. Ich hatte auch gelesen das es ein AddOn von Kodi geben soll das ebenfalls ins syslog schreiben. Hast Du da mal danach geschaut und kannst etwas dazu sagen. Sonst würde ich mir einfach mal Deine Lösung in meine "Snippet Kitchen" schubsen.
Ich habe tatsächlich nicht nach AddOns geschaut und würde mich, nach Einsatz dieser Lösung in #bash, auch nicht mehr abhängig von einem Plugin machen wollen. Ein Plugin ist bestimmt wieder interessant wenn man #libreelec oder #osmc einsetzt, die ein abgespecktes Betriebssystem haben.

Sonst würde ich mir einfach mal Deine Lösung in meine "Snippet Kitchen" schubsen.
Mach das ruhig, habe nix dagegen. Frohes "kochen" damit. Ich freue mich im Übrigen über Rückmeldung oder Verbesserungsvorschläge.
Es macht durchaus Sinn mehrere Lösungen zu Verfügung zu haben. Vielen Dank @Martin Winkler

When there is no "watch" ...

... simply use

while : ; do echo "My command here"; sleep 2; clear; done

or more sophisticated as function to put in .bashrc

function watch() {
  local args
  local time=1
  for args in "$@"; do
    case "$1" in
        shift 2;;
  local infoStr="Every ${time}.0s: "$@"\t${HOSTNAME}: "

  if [ $# -eq 1 ] ; then
    while : ; do echo -e -n "$infoStr"; date; sh -c "$@"; sleep $time; clear; done
    while : ; do echo -e -n "$infoStr"; date; "$@"; sleep $time; clear; done

to watch for you. 😉 #bash #.bashrc
This entry was edited (8 months ago)

Martin Winkler reshared this.


Frankreich macht für die Europäische Bürgerinitiative Grundeinkommen mobil
In der Libération am 11. Januar 2021 haben französische Wissenschaftlerinnen, Politikerinnen, Bürgermeisterinnen, Wachstumskritikerinnen und Organisationen einen Aufruf zur Unterstützung der Europäischen Bürgerinitiative (EBI) Bedingungslose Grundeinkommen in der gesamten EU gestartet und Begründungen für die Unterstützung benannt.

3 people reshared this

Meine zweite Pebble 2 vor dem Ende

als klar wurde, dass die #Pebble2 eingestampft wird, habe ich mir noch ein paar auf Reserve gekauft. Insgesamt 3. Nr. 2 sieht schon sehr mitgenommen aus...

... und zudem geht der Pulssensor schon längere Zeit nicht mehr. Ein oder zwei Jahre werde ich wohl mit der Dritten überbrücken können. Zusammen mit #Gadgetbridge ist es eine unschlagbare Kombo, wie ich finde.

Es kennt nicht zufällig jemand noch Quellen, auch gerne für gebrauchte Pebble 2? Oder vielleicht ein gute Alternative für das Leben danach?

To all nginx and PHP users

Urgent security issue in NGINX/php-fpm

!Nextcloud User Forum
In the last 24 hours, a new security risk has emerged around NGINX, documented in CVE-2019-11043. This exploit allows for remote code execution on some NGINX and php-fpm configurations. If you do not run NGINX, this exploit does not effect you.

Apple Maps Fahrzeug gesichtet

Heute war es also soweit. Selbst in einen Vorort von Frankfurt und in eine Stichstraße ohne eigenes Straßenschild sind sie rein gefahren.

Uns findet sonst weder der Pizza-Fahrer, noch navigationsgeführte Fahrzeuge. O_o
This entry was edited (2 years ago)

Historical apt update

My ancestors started it and we are still waiting ...

Batman hat...

... sich heute Morgen ordentlich den Kopf an meinem Speicheraulastungsgraphen angeschlagen:


#Batman #LibreNMS

Parkplatz in der Wüste

Habt ihr euch auch gefragt wohin #VW oder #Audi Fahrzeuge fahren/fliegen wenn Sie zurückgerufen werden:
P.S.: Ob da auch die Parkdauer kontrolliert wird?
#VW #Audi

Das hat mich jetzt überrascht:

Germany says No to Public Cloud, Chooses Nextcloud's Open Source Solution -

Ca. 112 Tonnen haben einen neuen Platz auf dieser Erde gefunden.



... kann die Menschheit nie an etwas zusammenarbeiten. Wir wären alle soviel weiter, wie #Elon Musk alleine immer wieder demonstriert!


YouTube: Die Marsmission von Elon Musk (100SekundenPhysik)

Sich immer mal wieder an einen schönen Urlaub zurück erinnern...