[07:49:29] Good morning [07:50:25] Is there a plugin or tool to submit changed pages to search engines like Google, bing, duckduckgo and archive.org? [09:50:28] hi all! Who can help me with https://www.mediawiki.org/wiki/Extension:WSOAuth? I stub when I need create own client for OAuth, maybe MediaWiki have a lot easy plugin for setup? [10:05:23] hi all! Who can help me with https://www.mediawiki.org/wiki/Extension:WSOAuth? I stub when I need create own client for OAuth, maybe MediaWiki have a lot easy plugin for setup? [11:23:56] Hi. I have a page showing up in Unwatched Pages that doesn't exist. It says: Invalid title with unknown namespace number 500 and text "Forza/test" [14:05:38] can anybody say me, how I can create oauth2 client for my mediawiki? [14:19:24] echoladone: what are you creating a client for? [14:20:05] for own Oauth Server [14:20:40] own as in you wrote it? [14:21:31] We not write, we use ready build, 3rd server [14:22:13] We not write, we use ready build 3rd server [14:48:38] echoladone: WSOAuth only has ready-made plugins for MediaWiki and Facebook, in case that was your question. WSOAuth uses https://oauth2-client.thephpleague.com/ so check there for support / instructions for writing your own client. [15:02:03] okay, thanks! [16:07:38] Is it possible to adjust http expires with MediaWiki ? [16:23:27] I want to set different expires based on URL. [19:48:54] Forza: yes [19:50:58] Forza: note that the default is to not permit blind browser caching of article content. We emit a public cache, but a 0 maxage with revalidate, so the browser does always check even if it's just to get an empty 304 Not modified confirmation [19:51:29] but if you have a cache proxy installed, then this configuration can be used to change the default expiry for that: https://www.mediawiki.org/wiki/Manual:$wgCdnMaxAge [19:55:14] The 'OutputPageCheckLastModified' hook can be used to change or add additional modified timestamps to consider [19:55:55] and the 'BeforePageDisplay' hook can be used to check the title and e.g. setCdnMaxage() or lowerCdnMaxage() based on your criteria [20:01:36] Krinkle: I don't have a caching proxy, just apache serviing php-fpm with the reverse proxy method [20:02:51] I just thought I could add a longer cache for the pages site.com/w/some_page but keep it at 0/default for the rest [20:06:13] Forza: you mean a browser cache, for when the same user visits the same page again within the same week? [20:06:47] Yes [20:07:09] note that the most expensive part of serving the page is parsing the wikitext, which usually cached in the database by 30 days in MW by default always. [20:07:55] by default MW does allow the browser to cache the article already, and when they visit it again, the Apache/MW server should quickly respondd with "304 Not modified" (0 bytes transfer) letting the browser re-use it. [20:08:02] It's not like it is super slow, but still :) it's on a personal server so I want to tinker [20:08:16] making it so that it can do that without checking if it's within the same day could be done by using this hook indeed. [20:08:27] Oh OK I see. Didn't understand that [20:08:56] Even if it says expires: Thu, 01 Jan 1970 00:00:00 GMT [20:09:31] if you're logged in, then indeed there is no caching in the browser because of personalisation like your username, skin preferences, talk page notifications etc. [20:09:58] try in a private browsing profile where you have not recenlty edited or logged-in [20:10:45] How about http2 push for stuff like css and js? [20:11:47] In general, http2 push is not a useful feature in my opinion. It can be quite wasteful and it isn't compatible with most web infrastructure. [20:12:03] Wikipedia is one of the largest and yet best performing websites on the planet, and we don't use it :) [20:12:53] note that what I said about caching just now applies to article page views. The css and JS stuff comes from load.php where we always do strong browser caching for many days with permanent versioned URLs [20:13:09] so once you've viewed on article, you generally do not re-download the same resources multiple times. [20:15:33] :) [20:16:13] Just checked with nghttp, seems server takes almost a second to respond :( [20:16:41] https://www.mediawiki.org/wiki/Manual:Performance_tuning [20:16:54] there's a few tips here to get the basics in shape which might help pinpoint an issue [20:17:09] Yea ,was reading that page [20:17:50] I do use redis etc. Just thought the initial load could be faster [20:17:59] You can try https://wiki.tnonline.net/w/Blog/Btrfs_Deduplication [20:18:17] This is going through cloudflare though [20:19:27] latest PHP 7.x, make sure php-opcache and php-apcu are enabled and healthily configured. [20:19:35] add Memcached if you can for the main cache. [20:20:59] if you have a second server and/or don't mind playing on the real one, you could also install php-tideways and then use capture an output profile to see where the time is spent, perhaps something is enabled but running out of space for some reason due to an extension or something else. https://www.mediawiki.org/wiki/Manual:Profiling [20:21:12] the profile breakdown is appended in an HTML command by default (e.g. view source0 [20:26:05] cloudflare is in itself also a cache proxy, although they do not currently implement support for any standard URL purge protocol, which means for logged-out users the expiry would be fixed/static (e.g. always 1 day or always 1 week), and not automatically update after an edit. [20:26:06] https://www.mediawiki.org/wiki/Manual:CloudFlare [20:26:33] They have a custom API for purging and MW has an extendable interface for other purging gateways, but it seems noone has written a MW plugin for that yet. [20:27:24] Cloudflare is set to respect headers on my setup [20:27:49] I thought redis was faster than memcached ? [20:28:03] I do use opcache but not apcu [20:28:25] opcache is for the compilation of the .php syntax into CPU executable bytes. [20:28:44] apcu is for internal things by MW, much like Memcached but even faster and mostly for small/temporary values. [20:29:06] I don't think the difference between redis and memcached is significant in practice, afaik both <1ms for simple get/set operations. [20:29:30] both in-memory and LRU by default. [20:30:09] whichever you prefer :) [20:30:50] https://wiki.tnonline.net/phpinfo.php [20:31:06] Seems opcache isnt doing anything [20:33:07] Forza: interned_strings_buffer:8 might be a bit low, I'd use 16 or 64 if you have the RAM available [20:33:16] My cache config i LocalSettings https://paste.ee/p/AvDux [20:33:17] but it seems to be working [20:34:28] Cached scripts [20:34:33] =1 [20:34:47] hm.. right, that's the phpinfo.php file [20:34:49] Normally that would be high [20:34:54] Yes [20:35:15] Did i forget something in LocalSettings [20:35:16] is that file and w/ set up through the same fpm way etc? [20:35:24] Yes [20:36:18] Hmm no [20:36:20] Sorry [20:36:38] --disable-fpm,, SAPI: Apache 2.0 [20:36:40] yeah [20:37:32] Reload now [20:38:15] yeah, that looks better [20:38:39] interned strings nearly full [20:38:44] but overall looks pretty good [20:38:52] enabling apcu would definitely help as well speed up numerous things [20:39:08] what's your main cache currently? default _none? [20:39:20] * Krinkle afk for a bit [20:40:22] $wgMainCacheType = 'redis'; [20:40:30] Thanks for your help