From 2b58c9a4e0cd4b848aa2c6d1b37c171cc07b40dc Mon Sep 17 00:00:00 2001 From: Sidney Kuyateh Date: Wed, 29 Jan 2025 22:01:03 +0100 Subject: [PATCH 01/11] Add SVG file handling --- public_mediawiki/LocalSettings.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/public_mediawiki/LocalSettings.php b/public_mediawiki/LocalSettings.php index 54c0411..ee29bf5 100755 --- a/public_mediawiki/LocalSettings.php +++ b/public_mediawiki/LocalSettings.php @@ -202,3 +202,8 @@ $wgHideInterlanguageLinks = false; # uncomment this if Semantic MediaWiki property locking is broken #$smwgChangePropagationProtection = false; + +# SVG config +$wgFileExtensions[] = 'svg'; +# This extension will no longer be needed in MediaWiki >= 1.41, then $wgSVGNativeRendering can be used +wfLoadExtension( 'NativeSvgHandler' ); From 7146d40ea28db8f596658b4ebdd057ffad4a77a3 Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Sun, 2 Feb 2025 12:52:38 +0100 Subject: [PATCH 02/11] minor settings updates and job runners --- orga_mediawiki/LocalSettings.php | 1 + public_mediawiki/LocalSettings.php | 25 +++++++++++++++++++++++-- smw-jobs.sh | 25 +++++++++++++++++++++++++ system/mediawiki-jobrunner@.service | 18 ++++++++++++++++++ system/semantic-mediawiki-jobs@.service | 13 +++++++++++++ system/semantic-mediawiki-jobs@.timer | 13 +++++++++++++ 6 files changed, 93 insertions(+), 2 deletions(-) create mode 100755 smw-jobs.sh create mode 100644 system/mediawiki-jobrunner@.service create mode 100644 system/semantic-mediawiki-jobs@.service create mode 100644 system/semantic-mediawiki-jobs@.timer diff --git a/orga_mediawiki/LocalSettings.php b/orga_mediawiki/LocalSettings.php index ecda7c4..4b2f7eb 100644 --- a/orga_mediawiki/LocalSettings.php +++ b/orga_mediawiki/LocalSettings.php @@ -188,5 +188,6 @@ $wgPluggableAuth_Config["Chaostreff Backnang IdP"] = [ # for better error reporting - disable while in production #error_reporting( -1 ); #ini_set( 'display_errors', 1 ); + #$wgShowExceptionDetails = true; #$wgShowDBErrorBacktrace = true; diff --git a/public_mediawiki/LocalSettings.php b/public_mediawiki/LocalSettings.php index 54c0411..3551693 100755 --- a/public_mediawiki/LocalSettings.php +++ b/public_mediawiki/LocalSettings.php @@ -163,10 +163,13 @@ wfLoadExtension( 'WikiEditor' ); wfLoadExtension( 'PluggableAuth' ); wfLoadExtension( 'OpenIDConnect' ); +$wgPFEnableStringFunctions = true; + +# SMW config wfLoadExtension( 'SemanticMediaWiki' ); enableSemantics( 'wiki.ctbk.de' ); - -# Add more configuration options below. +$smwgQueryResultCacheType = CACHE_ANYTHING; +$wgGroupPermissions['sysop']['smw-admin'] = true; # Disable account creation - we only use SSO accounts $wgGroupPermissions['*']['autocreateaccount'] = true; @@ -185,7 +188,19 @@ $wgPluggableAuth_Config["Chaostreff Backnang IdP"] = [ 'data' => [ 'providerURL' => 'https://idp.ctbk.de/realms/ctbk/', 'clientID' => 'public_mediawiki', + 'scope' => [ 'openid', 'profile', 'email', 'groups' ], 'clientsecret' => $ctbkClientSecret + ], + # use Keycloak group definitions to manage groups centrally + 'groupsyncs' => [ + [ + 'type' => 'mapped', + 'map' => [ + 'sysop' => [ 'groups' => '/mediawiki/admins' ], + 'buerocrat' => [ 'groups' => '/mediawiki/admins' ], + 'interface-admin' => [ 'groups' => '/mediawiki/admins' ] + ] + ] ] ]; @@ -202,3 +217,9 @@ $wgHideInterlanguageLinks = false; # uncomment this if Semantic MediaWiki property locking is broken #$smwgChangePropagationProtection = false; + +# SVG config +$wgFileExtensions[] = 'svg'; +# This extension will no longer be needed in MediaWiki >= 1.41, then $wgSVGNativeRendering can be used +wfLoadExtension( 'NativeSvgHandler' ); + diff --git a/smw-jobs.sh b/smw-jobs.sh new file mode 100755 index 0000000..000cf0e --- /dev/null +++ b/smw-jobs.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash + +# ignore single script failures +set +e + +SMW_PATH=$1 + +set -x + +# not needed in our current config according to the documentation +#php "${SMW_PATH}/maintenance/updateSpecialPages.php" --quiet + +# recommended daily jobs +php "${SMW_PATH}/maintenance/rebuildData.php" --shallow-update +php "${SMW_PATH}/maintenance/disposeOutdatedEntities.php" +php "${SMW_PATH}/maintenance/rebuildPropertyStatistics.php" +php "${SMW_PATH}/maintenance/rebuildConceptCache.php" --update --create + +# recommended weekly jobs — we still run them daily to simplify the timers +php "${SMW_PATH}/maintenance/rebuildData.php" -d 100 +php "${SMW_PATH}/maintenance/setupStore.php" --skip-import + +# recommended monthly jobs +php "${SMW_PATH}/maintenance/removeDuplicateEntities.php" + diff --git a/system/mediawiki-jobrunner@.service b/system/mediawiki-jobrunner@.service new file mode 100644 index 0000000..4de5700 --- /dev/null +++ b/system/mediawiki-jobrunner@.service @@ -0,0 +1,18 @@ +[Unit] +Description=MediaWiki job runner %I +Documentation=https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:RunJobs.php + +[Service] +User=www-data +Group=www-data +ExecStart=/usr/bin/php /var/lib/%i/maintenance/runJobs.php --wait --maxjobs=50 +Restart=always +RestartSec=15 +RuntimeMaxSec=300 +PrivateDevices=true +PrivateTmp=true +ProtectHome=read-only + +[Install] +WantedBy=multi-user.target + diff --git a/system/semantic-mediawiki-jobs@.service b/system/semantic-mediawiki-jobs@.service new file mode 100644 index 0000000..ce8fcd9 --- /dev/null +++ b/system/semantic-mediawiki-jobs@.service @@ -0,0 +1,13 @@ +[Unit] +Description=Semantic MediaWiki job runner %I +Documentation=https://www.semantic-mediawiki.org/wiki/Help:Cron_jobs + +[Service] +User=www-data +Group=www-data +ExecStart=/usr/local/bin/smw-jobs /var/lib/%i/extensions/SemanticMediaWiki +RestartSec=15 +PrivateDevices=true +PrivateTmp=true +ProtectHome=read-only + diff --git a/system/semantic-mediawiki-jobs@.timer b/system/semantic-mediawiki-jobs@.timer new file mode 100644 index 0000000..9b15214 --- /dev/null +++ b/system/semantic-mediawiki-jobs@.timer @@ -0,0 +1,13 @@ +[Unit] +Description=Semantic MediaWiki job timer %I +Documentation=https://www.semantic-mediawiki.org/wiki/Help:Cron_jobs + +[Timer] +# run the jobs in the morning, after the backups happen +OnCalendar=*-*-* 04:00:00 +RandomizedDelaySec=1h +Unit=semantic-mediawiki-jobs@%i.service + +[Install] +WantedBy=timers.target + From 236009f7483f6147ca03e4b9651733cbc6f58a9b Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Sun, 2 Feb 2025 13:33:29 +0100 Subject: [PATCH 03/11] add installation script --- install.sh | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 install.sh diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..8ff826c --- /dev/null +++ b/install.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +scriptdir=$(dirname $(realpath $0)) + +set +e + +ln -fs "$scriptdir/smw-jobs.sh" /usr/local/bin/smw-jobs +ln -fs "$scriptdir/nginx.conf" /etc/nginx/nginx.conf +ln -fs "$scriptdir/fastcgi.conf" /etc/nginx/fastcgi.conf +ln -fs "$scriptdir/public_mediawiki/public_mediawiki.conf" /etc/nginx/sites-enabled/public_mediawiki.conf +ln -fs "$scriptdir/orga_mediawiki/orga_mediawiki.conf" /etc/nginx/sites-enabled/orga_mediawiki.conf +ln -fs "$scriptdir/pgtune.conf" "/etc/postgresql/15/main/conf.d/pgtune.conf" + +for file in "$scriptdir/system"/*; do + filename=$(basename "$file") + ln -fs "$file" "/etc/systemd/system/$filename" +done + +for file in "$scriptdir/public_mediawiki"/*; do + filename=$(basename "$file") + ln -fs "$file" "/etc/public_mediawiki/$filename" +done + +for file in "$scriptdir/orga_mediawiki"/*; do + filename=$(basename "$file") + ln -fs "$file" "/etc/orga_mediawiki/$filename" +done + From a3d2b272860b408fe7e2343ce41f5388fc416e47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?kleines=20Filmr=C3=B6llchen?= Date: Sun, 2 Feb 2025 14:51:17 +0100 Subject: [PATCH 04/11] expanded readme --- README.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 49401aa..7c4dbfd 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,15 @@ # mediawiki -Config for wiki.ctbk.de and the upcoming Orgawiki deployment. +Config for [wiki.ctbk.de](https://wiki.ctbk.de) and the upcoming Orgawiki deployment. For deployment documentation refer to [the Wiki](https://wiki.ctbk.de/Dienste/Wiki). -Files for the wiki.ctbk.de public deployment are found in `public_mediawiki`. Files for the internal deployment (not yet in production) are found in `orga_mediawiki`. Some common files are found in the root directory. +Files for the [wiki.ctbk.de](https://wiki.ctbk.de) public deployment are found in `public_mediawiki`. Files for the internal deployment (not yet in production) are found in `orga_mediawiki`. Some common files are found in the root directory. Note that while some files may look identical between the deployments, they are not shared to allow easier modifications to both deployments independently. + +The [`install.sh`](install.sh) script replaces all relevant system files with symlinks to the files in this repository. + +## License + +The files in this repository are licensed under the BSD 2-clause license. The contents of the Wiki have different license(s), [see here](https://wiki.ctbk.de/Wiki:Urheberrechte). From c5a5a2dff5d4ad3243893f9c2d4bf1d833b22476 Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Tue, 4 Feb 2025 13:32:20 +0100 Subject: [PATCH 05/11] forward haproxy forwarded ip to php correctly --- fastcgi.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fastcgi.conf b/fastcgi.conf index d53a628..927fe5b 100644 --- a/fastcgi.conf +++ b/fastcgi.conf @@ -16,7 +16,7 @@ fastcgi_param HTTPS $https if_not_empty; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; -fastcgi_param REMOTE_ADDR $remote_addr; +fastcgi_param REMOTE_ADDR $http_x_forwarded_for; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param REMOTE_USER $remote_user; fastcgi_param SERVER_ADDR $server_addr; From 5d19eacf95f4994c81e1d4663760fba10224b43f Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Tue, 4 Feb 2025 20:21:07 +0100 Subject: [PATCH 06/11] robots.txt --- install.sh | 1 + orga_mediawiki/orga_mediawiki.conf | 11 ++++++++--- public_mediawiki/public_mediawiki.conf | 11 ++++++++--- robots.txt | 3 +++ 4 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 robots.txt diff --git a/install.sh b/install.sh index 8ff826c..c2561e3 100755 --- a/install.sh +++ b/install.sh @@ -7,6 +7,7 @@ set +e ln -fs "$scriptdir/smw-jobs.sh" /usr/local/bin/smw-jobs ln -fs "$scriptdir/nginx.conf" /etc/nginx/nginx.conf ln -fs "$scriptdir/fastcgi.conf" /etc/nginx/fastcgi.conf +ln -fs "$scriptdir/robots.txt" /etc/nginx/robots.txt ln -fs "$scriptdir/public_mediawiki/public_mediawiki.conf" /etc/nginx/sites-enabled/public_mediawiki.conf ln -fs "$scriptdir/orga_mediawiki/orga_mediawiki.conf" /etc/nginx/sites-enabled/orga_mediawiki.conf ln -fs "$scriptdir/pgtune.conf" "/etc/postgresql/15/main/conf.d/pgtune.conf" diff --git a/orga_mediawiki/orga_mediawiki.conf b/orga_mediawiki/orga_mediawiki.conf index e7fb257..fa2a08f 100644 --- a/orga_mediawiki/orga_mediawiki.conf +++ b/orga_mediawiki/orga_mediawiki.conf @@ -9,9 +9,14 @@ server { client_body_timeout 60; index index.php index.html index.htm; - location ~ \.ht { - deny all; - } + location ~ \.ht { + deny all; + } + + location /robots.txt { + root /etc/nginx; + try_files /robots.txt =404; + } location / { try_files $uri $uri/ @rewrite; diff --git a/public_mediawiki/public_mediawiki.conf b/public_mediawiki/public_mediawiki.conf index 8d36cb6..c89ff63 100644 --- a/public_mediawiki/public_mediawiki.conf +++ b/public_mediawiki/public_mediawiki.conf @@ -9,9 +9,14 @@ server { client_body_timeout 60; index index.php index.html index.htm; - location ~ \.ht { - deny all; - } + location ~ \.ht { + deny all; + } + + location /robots.txt { + root /etc/nginx; + try_files /robots.txt =404; + } location / { try_files $uri $uri/ @rewrite; diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..b93e3f5 --- /dev/null +++ b/robots.txt @@ -0,0 +1,3 @@ +User-Agent: * +Disallow: / + From f3ca94de27aae1b4b8aa7bc9a2cefeced1985fbf Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Tue, 4 Feb 2025 21:17:46 +0100 Subject: [PATCH 07/11] more extensions! --- public_mediawiki/LocalSettings.php | 15 ++++++++++ public_mediawiki/composer.local.json | 42 +++++++++++++++++++++++++++- 2 files changed, 56 insertions(+), 1 deletion(-) diff --git a/public_mediawiki/LocalSettings.php b/public_mediawiki/LocalSettings.php index 3551693..96b2a41 100755 --- a/public_mediawiki/LocalSettings.php +++ b/public_mediawiki/LocalSettings.php @@ -159,6 +159,10 @@ wfLoadExtension( 'TemplateData' ); wfLoadExtension( 'TitleBlacklist' ); wfLoadExtension( 'VisualEditor' ); wfLoadExtension( 'WikiEditor' ); +wfLoadExtension( 'CodeMirror' ); +wfLoadExtension( 'TemplateStyles' ); +wfLoadExtension( 'TemplateStylesExtender' ); +wfLoadExtension( 'Widgets' ); wfLoadExtension( 'PluggableAuth' ); wfLoadExtension( 'OpenIDConnect' ); @@ -180,6 +184,10 @@ $wgGroupPermissions['sysop']['createaccount'] = true; # allow copy uploads by anyone $wgGroupPermissions['user']['upload_by_url'] = true; +# disallow widget editing by anyone except sysops +$wgGroupPermissions['*']['editwidgets'] = false; +$wgGroupPermissions['sysop']['editwidgets'] = true; + # SSO config # necessary to allow admin user(s) to login $wgPluggableAuth_EnableLocalLogin = true; @@ -204,6 +212,8 @@ $wgPluggableAuth_Config["Chaostreff Backnang IdP"] = [ ] ]; +$wgDefaultUserOptions['usecodemirror'] = 1; + # interwiki config $wgGroupPermissions['sysop']['interwiki'] = true; $wgInterwikiMagic = true; @@ -223,3 +233,8 @@ $wgFileExtensions[] = 'svg'; # This extension will no longer be needed in MediaWiki >= 1.41, then $wgSVGNativeRendering can be used wfLoadExtension( 'NativeSvgHandler' ); +# do not sanitize my CSS +#$wgTemplateStylesAutoParseContent = false; +$wgTemplateStylesExtenderEnablePrefersColorScheme = true; +$wgTemplateStylesExtenderEnableCssVars = true; + diff --git a/public_mediawiki/composer.local.json b/public_mediawiki/composer.local.json index 489afd2..45dfb59 100644 --- a/public_mediawiki/composer.local.json +++ b/public_mediawiki/composer.local.json @@ -3,6 +3,42 @@ { "type": "vcs", "url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/OpenIDConnect" + }, + { + "type": "package", + "package": { + "name": "mediawiki/codemirror", + "version": "6.0.0", + "source": { + "type": "git", + "url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/CodeMirror.git", + "reference": "REL1_39" + } + } + }, + { + "type": "package", + "package": { + "name": "mediawiki/templatestyles", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/TemplateStyles", + "reference": "REL1_39" + } + } + }, + { + "type": "package", + "package": { + "name": "mediawiki/widgets", + "version": "1.6.0", + "source": { + "type": "git", + "url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/Widgets", + "reference": "1.6.0" + } + } } ], "require": { @@ -12,7 +48,11 @@ "mediawiki/semantic-compound-queries": "^2.2", "mediawiki/semantic-extra-special-properties": "^3", "mediawiki/semantic-media-wiki": "^4.2", - "mediawiki/semantic-result-formats": "^4.2" + "mediawiki/semantic-result-formats": "^4.2", + "mediawiki/codemirror": "^6", + "mediawiki/templatestyles": "^1", + "octfx/template-styles-extender": "^1.2", + "mediawiki/widgets": "^1.6" }, "config": { "preferred-install": "source", From ee27bc59a632e10967e3934a15a9d282e4d912e1 Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Wed, 5 Feb 2025 16:17:35 +0100 Subject: [PATCH 08/11] subpages everywhere --- public_mediawiki/LocalSettings.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/public_mediawiki/LocalSettings.php b/public_mediawiki/LocalSettings.php index 96b2a41..8eaa8fb 100755 --- a/public_mediawiki/LocalSettings.php +++ b/public_mediawiki/LocalSettings.php @@ -238,3 +238,7 @@ wfLoadExtension( 'NativeSvgHandler' ); $wgTemplateStylesExtenderEnablePrefersColorScheme = true; $wgTemplateStylesExtenderEnableCssVars = true; +# enable namespaces everywhere we need them +$wgNamespacesWithSubpages[NS_MAIN] = true; +$wgNamespacesWithSubpages[NS_TEMPLATE] = true; + From 45a907235dae18eb54a8a148c4b363b21cfa76c9 Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Fri, 7 Feb 2025 23:55:46 +0100 Subject: [PATCH 09/11] proper proxy configuration --- fastcgi.conf | 2 +- nginx.conf | 8 ++++++-- public_mediawiki/LocalSettings.php | 5 +++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/fastcgi.conf b/fastcgi.conf index 927fe5b..d53a628 100644 --- a/fastcgi.conf +++ b/fastcgi.conf @@ -16,7 +16,7 @@ fastcgi_param HTTPS $https if_not_empty; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; -fastcgi_param REMOTE_ADDR $http_x_forwarded_for; +fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param REMOTE_USER $remote_user; fastcgi_param SERVER_ADDR $server_addr; diff --git a/nginx.conf b/nginx.conf index bac1998..4532678 100644 --- a/nginx.conf +++ b/nginx.conf @@ -1,7 +1,6 @@ user www-data; worker_processes auto; pid /run/nginx.pid; -error_log /var/log/nginx/error.log; include /etc/nginx/modules-enabled/*.conf; events { @@ -37,7 +36,12 @@ http { # Logging Settings ## - access_log /var/log/nginx/access.log; + log_format main '$http_x_forwarded_for [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent"'; + + access_log /var/log/nginx/access.log main; + error_log /var/log/nginx/error.log; ## # Gzip Settings diff --git a/public_mediawiki/LocalSettings.php b/public_mediawiki/LocalSettings.php index 8eaa8fb..cabac03 100755 --- a/public_mediawiki/LocalSettings.php +++ b/public_mediawiki/LocalSettings.php @@ -242,3 +242,8 @@ $wgTemplateStylesExtenderEnableCssVars = true; $wgNamespacesWithSubpages[NS_MAIN] = true; $wgNamespacesWithSubpages[NS_TEMPLATE] = true; +# use proxy ip addresses -- we’re behind (at least) one reverse proxy that sets X-Forwarded-For +$wgUsePrivateIPs = true; +# ingress haproxy +$wgCdnServersNoPurge = [ '10.140.0.1' ]; + From 37e72d512990d44fffc0a3509cd05f1766b4c333 Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Sun, 15 Jun 2025 18:33:14 +0200 Subject: [PATCH 10/11] interwiki perms + public url for orgawiki --- orga_mediawiki/LocalSettings.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/orga_mediawiki/LocalSettings.php b/orga_mediawiki/LocalSettings.php index 4b2f7eb..fb3fc36 100644 --- a/orga_mediawiki/LocalSettings.php +++ b/orga_mediawiki/LocalSettings.php @@ -41,8 +41,8 @@ $wgScriptExtension = ".php"; ## The protocol and server name to use in fully-qualified URLs # TODO: should be the public domain eventually -#$wgServer = "https://orgawiki.ctbk.de"; -$wgServer = "http://wiki.chaos:81"; +$wgServer = "https://orgawiki.ctbk.de"; +#$wgServer = "http://wiki.chaos:81"; ## The URL path to static resources (images, scripts, etc.) $wgResourceBasePath = $wgScriptPath; @@ -185,9 +185,13 @@ $wgPluggableAuth_Config["Chaostreff Backnang IdP"] = [ ] ]; +# interwiki config +$wgGroupPermissions['sysop']['interwiki'] = true; +$wgInterwikiMagic = true; +$wgHideInterlanguageLinks = false; + # for better error reporting - disable while in production #error_reporting( -1 ); #ini_set( 'display_errors', 1 ); - #$wgShowExceptionDetails = true; #$wgShowDBErrorBacktrace = true; From 0c0b63a400e9fffa3d3d70a7c08a28e75d154f16 Mon Sep 17 00:00:00 2001 From: filmroellchen Date: Sat, 21 Jun 2025 20:13:47 +0200 Subject: [PATCH 11/11] namespaces and proxy --- orga_mediawiki/LocalSettings.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/orga_mediawiki/LocalSettings.php b/orga_mediawiki/LocalSettings.php index fb3fc36..17aa4af 100644 --- a/orga_mediawiki/LocalSettings.php +++ b/orga_mediawiki/LocalSettings.php @@ -195,3 +195,11 @@ $wgHideInterlanguageLinks = false; #ini_set( 'display_errors', 1 ); #$wgShowExceptionDetails = true; #$wgShowDBErrorBacktrace = true; + +$wgNamespacesWithSubpages[NS_MAIN] = true; +$wgNamespacesWithSubpages[NS_TEMPLATE] = true; + +# use proxy ip addresses -- we’re behind (at least) one reverse proxy that sets X-Forwarded-For +$wgUsePrivateIPs = true; +# ingress haproxy +$wgCdnServersNoPurge = [ '10.140.0.1' ];