Page MenuHomePhabricator

[php-fpm] Symbolic link not allowed or link target not accessible: wikipedia-wordmark-en.png
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error

The following is from php-fpm syslog errors:

normalized_message
AH00037: Symbolic link not allowed or link target not accessible: /srv/mediawiki/docroot/wikipedia.org/images/mobile/wikipedia-wordmark-en.png

host: mw1399
Impact

Unavailable image at https://en.wikipedia.org/images/mobile/wikipedia-wordmark-en.png.

Notes

Looks like a bad symlink?

Event Timeline

What's trying to hit that path? Config has references to /static/images/mobile/copyright/wikipedia-wordmark-en.svg but not .png, and not outside of /copyright/, and not outside of /static/.

What's trying to hit that path? Config has references to /static/images/mobile/copyright/wikipedia-wordmark-en.svg but not .png, and not outside of /copyright/, and not outside of /static/.

We used to run a PHP substitution for ".svg" for ".png" on those paths in MobileFrontend but that code is long gone. Could this production error is coming from a mirror running old code? Can we reproduce it on a production URL?

I'd consider https://en.wikipedia.org/images/mobile/wikipedia-wordmark-en.png a production URL.

Fix it, or delete it if you think it's not used/referenced from anywhere we care about. The logs are available if you're not sure, e.g. to check referers.

Jdlrobson added a subscriber: phuedx.

I'd consider https://en.wikipedia.org/images/mobile/wikipedia-wordmark-en.png a production URL.

Of course. I'm not debating that's a production URL, but it's also a non-existent resource. I'm more concerned about what's requesting it.

The logs are available if you're not sure and what to check referers.

I hunted these down with help from @phuedx https://logstash.wikimedia.org/goto/1a03b6788326086a7ab40b17f9da3ebb

I believe these are originating from outside our stack. I can't see any production code that would be accesssing these. I'm seeing user agents such as https://webmaster.petalsearch.com/site/petalbot) and referrers such as https://aframe.io/aframe/examples/showcase/wikipedia/

https://logstash.wikimedia.org/app/discover#/doc/logstash-*/logstash-2021.04.27?id=g2JLFHkBfVMx58vqbqmI

I'm not sure what is required of us here? What exactly do you want us to delete or fix?

I'd consider https://en.wikipedia.org/images/mobile/wikipedia-wordmark-en.png a production URL.

Of course. I'm not debating that's a production URL, but it's also a non-existent resource. I'm more concerned about what's requesting it.

This is not a 404 error. 404s are not production errors. Anyone can formulate a URL, imaginary or something that used to exist. We don't care about those from a monitoring perspective (mostly).

This is a production error because the resource does exist. It's right here in the docroot repository: mediawiki-config.git/images/mobile/.

The problem is that the symlink was left behind and the destination moved (or removed?). This produces the php-fpm error in question.

I'm not sure what is required of us here? What exactly do you want us to delete or fix?

Delete the resource, or make it not broken :)

I can't see any production code that would be accesssing these. I'm seeing user agents such as […]

The logs, when filtering out empty referers, appear to be dominated by social and messaging app crawlers. I'm guessing this URL is or was strongly associated with shared links to Wikipedia articles. Minerva uses an <img> for the site logo, which means crawlers detect it as the first image and use that in the preview. When people boost such social posts and/or re-visit them after a while further back in a social feed, or opening a messaging app where an article was shared (e.g. Signal, Telegram, Slack, iMessage) where either that was the last message sent or the user scrolled up, then their client is likely refetching it assuming the image is no longer in their cache, but the generated preview metadata (title, description, url, image url) may be stored more or less indefinitely. Might perhaps be worth restoring as such if it's cheap to do.

I think this resource can be deleted safely. It was adding as part of bugzilla bug 58886 for mobile, which no longer uses it.

I'm not sure about the purpose of the symlink and about not making it broken, looks like you added it as part of https://gerrit.wikimedia.org/r/c/operations/mediawiki-config/+/270471 ?Am I understanding correctly that the asset was deleted when we switched from PNG to SVG, but that the symlink was left intact, now pointing to the deleted object?

Am I understanding correctly that the asset was deleted when we switched from PNG to SVG, but that the symlink was left intact, now pointing to the deleted object?

Yes.

Change 745573 had a related patch set uploaded (by Jdlrobson; author: Jdlrobson):

[operations/mediawiki-config@master] Remove broken symlink

https://gerrit.wikimedia.org/r/745573

Change 745573 merged by jenkins-bot:

[operations/mediawiki-config@master] Remove broken wikipedia-wordmark-en.png symlink

https://gerrit.wikimedia.org/r/745573

Mentioned in SAL (#wikimedia-operations) [2021-12-14T00:41:20Z] <tgr@deploy1002> Synchronized images/mobile/: Config: [[gerrit:745573|Remove broken wikipedia-wordmark-en.png symlink (T278193)]] (duration: 00m 56s)

Still seeing errors in the logs so I'll monitor this a bit longer.

Not seeing the symbolic link error anymore.