current config
This commit is contained in:
parent
14347cab42
commit
8c710546af
10 changed files with 639 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
||||||
# mediawiki
|
# mediawiki
|
||||||
|
|
||||||
Config for wiki.ctbk.de and other MediaWiki deployments
|
Config for 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.
|
||||||
|
|
||||||
|
Note that while some files may look identical between the deployments, they are not shared to allow easier modifications to both deployments independently.
|
||||||
|
|
27
fastcgi.conf
Normal file
27
fastcgi.conf
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
|
||||||
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
fastcgi_param QUERY_STRING $query_string;
|
||||||
|
fastcgi_param REQUEST_METHOD $request_method;
|
||||||
|
fastcgi_param CONTENT_TYPE $content_type;
|
||||||
|
fastcgi_param CONTENT_LENGTH $content_length;
|
||||||
|
|
||||||
|
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
|
||||||
|
fastcgi_param REQUEST_URI $request_uri;
|
||||||
|
fastcgi_param DOCUMENT_URI $document_uri;
|
||||||
|
fastcgi_param DOCUMENT_ROOT $document_root;
|
||||||
|
fastcgi_param SERVER_PROTOCOL $server_protocol;
|
||||||
|
fastcgi_param REQUEST_SCHEME $scheme;
|
||||||
|
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_PORT $remote_port;
|
||||||
|
fastcgi_param REMOTE_USER $remote_user;
|
||||||
|
fastcgi_param SERVER_ADDR $server_addr;
|
||||||
|
fastcgi_param SERVER_PORT $server_port;
|
||||||
|
fastcgi_param SERVER_NAME $server_name;
|
||||||
|
|
||||||
|
# PHP only, required if PHP was built with --enable-force-cgi-redirect
|
||||||
|
fastcgi_param REDIRECT_STATUS 200;
|
62
nginx.conf
Normal file
62
nginx.conf
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
user www-data;
|
||||||
|
worker_processes auto;
|
||||||
|
pid /run/nginx.pid;
|
||||||
|
error_log /var/log/nginx/error.log;
|
||||||
|
include /etc/nginx/modules-enabled/*.conf;
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 768;
|
||||||
|
# multi_accept on;
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
|
||||||
|
##
|
||||||
|
# Basic Settings
|
||||||
|
##
|
||||||
|
|
||||||
|
sendfile on;
|
||||||
|
tcp_nopush on;
|
||||||
|
types_hash_max_size 2048;
|
||||||
|
# server_tokens off;
|
||||||
|
|
||||||
|
# server_names_hash_bucket_size 64;
|
||||||
|
# server_name_in_redirect off;
|
||||||
|
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
##
|
||||||
|
# SSL Settings
|
||||||
|
##
|
||||||
|
|
||||||
|
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
|
||||||
|
##
|
||||||
|
# Logging Settings
|
||||||
|
##
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log;
|
||||||
|
|
||||||
|
##
|
||||||
|
# Gzip Settings
|
||||||
|
##
|
||||||
|
|
||||||
|
gzip on;
|
||||||
|
|
||||||
|
# gzip_vary on;
|
||||||
|
# gzip_proxied any;
|
||||||
|
# gzip_comp_level 6;
|
||||||
|
# gzip_buffers 16 8k;
|
||||||
|
# gzip_http_version 1.1;
|
||||||
|
# gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
|
||||||
|
|
||||||
|
##
|
||||||
|
# Virtual Host Configs
|
||||||
|
##
|
||||||
|
|
||||||
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
include /etc/nginx/sites-enabled/*;
|
||||||
|
}
|
||||||
|
|
192
orga_mediawiki/LocalSettings.php
Normal file
192
orga_mediawiki/LocalSettings.php
Normal file
|
@ -0,0 +1,192 @@
|
||||||
|
<?php
|
||||||
|
# Internal wiki settings
|
||||||
|
|
||||||
|
# This file was automatically generated by the MediaWiki 1.39.10
|
||||||
|
# installer. If you make manual changes, please keep track in case you
|
||||||
|
# need to recreate them later.
|
||||||
|
#
|
||||||
|
# See docs/Configuration.md for all configurable settings
|
||||||
|
# and their default values, but don't forget to make changes in _this_
|
||||||
|
# file, not there.
|
||||||
|
#
|
||||||
|
# Further documentation for configuration settings may be found at:
|
||||||
|
# https://www.mediawiki.org/wiki/Manual:Configuration_settings
|
||||||
|
|
||||||
|
# Protect against web entry
|
||||||
|
if ( !defined( 'MEDIAWIKI' ) ) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
## Include platform/distribution defaults
|
||||||
|
#require_once "$IP/includes/PlatformSettings.php";
|
||||||
|
|
||||||
|
## Server secrets file
|
||||||
|
require_once "/etc/orga_mediawiki/SecretSettings.php";
|
||||||
|
|
||||||
|
## Uncomment this to disable output compression
|
||||||
|
# $wgDisableOutputCompression = true;
|
||||||
|
|
||||||
|
$wgSitename = "CTBK Orgawiki";
|
||||||
|
$wgMetaNamespace = "Wiki";
|
||||||
|
|
||||||
|
## The URL base path to the directory containing the wiki;
|
||||||
|
## defaults for all runtime URL paths are based off of this.
|
||||||
|
## For more information on customizing the URLs
|
||||||
|
## (like /w/index.php/Page_title to /wiki/Page_title) please see:
|
||||||
|
## https://www.mediawiki.org/wiki/Manual:Short_URL
|
||||||
|
$wgScriptPath = "";
|
||||||
|
$wgArticlePath = "/$1";
|
||||||
|
$wgUsePathInfo = true;
|
||||||
|
$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";
|
||||||
|
|
||||||
|
## The URL path to static resources (images, scripts, etc.)
|
||||||
|
$wgResourceBasePath = $wgScriptPath;
|
||||||
|
|
||||||
|
## The URL paths to the logo. Make sure you change this from the default,
|
||||||
|
## or else you'll overwrite your logo when you upgrade!
|
||||||
|
# TODO: Chaostreff logo
|
||||||
|
$wgLogos = [
|
||||||
|
'1x' => "$wgResourceBasePath/resources/assets/change-your-logo.svg",
|
||||||
|
'icon' => "$wgResourceBasePath/resources/assets/change-your-logo.svg",
|
||||||
|
];
|
||||||
|
|
||||||
|
## UPO means: this is also a user preference option
|
||||||
|
|
||||||
|
$wgEnableEmail = true;
|
||||||
|
$wgEnableUserEmail = true; # UPO
|
||||||
|
|
||||||
|
$wgEmergencyContact = "";
|
||||||
|
$wgPasswordSender = "";
|
||||||
|
|
||||||
|
$wgEnotifUserTalk = false; # UPO
|
||||||
|
$wgEnotifWatchlist = false; # UPO
|
||||||
|
$wgEmailAuthentication = true;
|
||||||
|
|
||||||
|
## Database settings
|
||||||
|
$wgDBtype = "postgres";
|
||||||
|
$wgDBserver = "localhost";
|
||||||
|
$wgDBname = "orga_mediawiki";
|
||||||
|
$wgDBuser = "mediawiki";
|
||||||
|
# password is in secret settings
|
||||||
|
|
||||||
|
# Postgres specific settings
|
||||||
|
$wgDBport = "5432";
|
||||||
|
$wgDBmwschema = "mediawiki";
|
||||||
|
|
||||||
|
# Shared database table
|
||||||
|
# This has no effect unless $wgSharedDB is also set.
|
||||||
|
$wgSharedTables[] = "actor";
|
||||||
|
|
||||||
|
## Shared memory settings
|
||||||
|
$wgMainCacheType = CACHE_ACCEL;
|
||||||
|
$wgMemCachedServers = [];
|
||||||
|
|
||||||
|
## To enable image uploads, make sure the 'images' directory
|
||||||
|
## is writable, then set this to true:
|
||||||
|
$wgEnableUploads = true;
|
||||||
|
$wgUseImageMagick = true;
|
||||||
|
$wgImageMagickConvertCommand = "/usr/bin/convert";
|
||||||
|
|
||||||
|
# InstantCommons allows wiki to use images from https://commons.wikimedia.org
|
||||||
|
$wgUseInstantCommons = false;
|
||||||
|
|
||||||
|
# Periodically send a pingback to https://www.mediawiki.org/ with basic data
|
||||||
|
# about this MediaWiki instance. The Wikimedia Foundation shares this data
|
||||||
|
# with MediaWiki developers to help guide future development efforts.
|
||||||
|
$wgPingback = false;
|
||||||
|
|
||||||
|
# Site language code, should be one of the list in ./includes/languages/data/Names.php
|
||||||
|
$wgLanguageCode = "de";
|
||||||
|
|
||||||
|
# Time zone
|
||||||
|
$wgLocaltimezone = "Europe/Berlin";
|
||||||
|
|
||||||
|
## Set $wgCacheDirectory to a writable directory on the web server
|
||||||
|
## to make your wiki go slightly faster. The directory should not
|
||||||
|
## be publicly accessible from the web.
|
||||||
|
$wgCacheDirectory = "/var/cache/orga_mediawiki";
|
||||||
|
|
||||||
|
# Changing this will log out all existing sessions.
|
||||||
|
$wgAuthenticationTokenVersion = "1";
|
||||||
|
|
||||||
|
## For attaching licensing metadata to pages, and displaying an
|
||||||
|
## appropriate copyright notice / icon. GNU Free Documentation
|
||||||
|
## License and Creative Commons licenses are supported so far.
|
||||||
|
$wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright
|
||||||
|
$wgRightsUrl = "";
|
||||||
|
$wgRightsText = "Alle Rechte vorbehalten";
|
||||||
|
$wgRightsIcon = "";
|
||||||
|
|
||||||
|
# Path to the GNU diff3 utility. Used for conflict resolution.
|
||||||
|
$wgDiff3 = "/usr/bin/diff3";
|
||||||
|
|
||||||
|
## Default skin
|
||||||
|
# For MinervaNeue it’s "minerva"
|
||||||
|
$wgDefaultSkin = "citizen";
|
||||||
|
$wgDefaultMobileSkin = 'citizen';
|
||||||
|
|
||||||
|
# Enabled skins.
|
||||||
|
wfLoadSkin( 'MinervaNeue' );
|
||||||
|
# TODO: set theme color
|
||||||
|
wfLoadSkin( 'Citizen' );
|
||||||
|
|
||||||
|
# Enabled extensions. Most of the extensions are enabled by adding
|
||||||
|
# wfLoadExtension( 'ExtensionName' );
|
||||||
|
# to LocalSettings.php. Check specific extension documentation for more details.
|
||||||
|
# The following extensions were automatically enabled:
|
||||||
|
wfLoadExtension( 'CategoryTree' );
|
||||||
|
wfLoadExtension( 'CodeEditor' );
|
||||||
|
wfLoadExtension( 'ImageMap' );
|
||||||
|
wfLoadExtension( 'Interwiki' );
|
||||||
|
wfLoadExtension( 'InputBox' );
|
||||||
|
wfLoadExtension( 'Math' );
|
||||||
|
wfLoadExtension( 'Nuke' );
|
||||||
|
wfLoadExtension( 'ParserFunctions' );
|
||||||
|
wfLoadExtension( 'Poem' );
|
||||||
|
wfLoadExtension( 'PdfHandler' );
|
||||||
|
wfLoadExtension( 'ReplaceText' );
|
||||||
|
wfLoadExtension( 'SpamBlacklist' );
|
||||||
|
wfLoadExtension( 'TemplateData' );
|
||||||
|
wfLoadExtension( 'TitleBlacklist' );
|
||||||
|
wfLoadExtension( 'VisualEditor' );
|
||||||
|
wfLoadExtension( 'WikiEditor' );
|
||||||
|
|
||||||
|
wfLoadExtension( 'PluggableAuth' );
|
||||||
|
wfLoadExtension( 'OpenIDConnect' );
|
||||||
|
|
||||||
|
wfLoadExtension( 'SemanticMediaWiki' );
|
||||||
|
enableSemantics( 'orgawiki.ctbk.de' );
|
||||||
|
|
||||||
|
# Add more configuration options below.
|
||||||
|
|
||||||
|
# Disable account creation - we only use SSO accounts
|
||||||
|
$wgGroupPermissions['*']['autocreateaccount'] = true;
|
||||||
|
$wgGroupPermissions['sysop']['autocreateaccount'] = true;
|
||||||
|
$wgGroupPermissions['*']['createaccount'] = false;
|
||||||
|
$wgGroupPermissions['sysop']['createaccount'] = true;
|
||||||
|
# Also disable reading/editing by non-logged-in users, making the wiki properly private
|
||||||
|
$wgGroupPermissions['*']['read'] = false;
|
||||||
|
$wgGroupPermissions['*']['edit'] = false;
|
||||||
|
|
||||||
|
# SSO config
|
||||||
|
# necessary to allow admin user(s) to login
|
||||||
|
$wgPluggableAuth_EnableLocalLogin = true;
|
||||||
|
$wgPluggableAuth_Config["Chaostreff Backnang IdP"] = [
|
||||||
|
'plugin' => 'OpenIDConnect',
|
||||||
|
'data' => [
|
||||||
|
'providerURL' => 'https://idp.ctbk.de/realms/ctbk/',
|
||||||
|
'clientID' => 'orga_mediawiki',
|
||||||
|
'clientsecret' => $ctbkClientSecret
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
# for better error reporting - disable while in production
|
||||||
|
#error_reporting( -1 );
|
||||||
|
#ini_set( 'display_errors', 1 );
|
||||||
|
#$wgShowExceptionDetails = true;
|
||||||
|
#$wgShowDBErrorBacktrace = true;
|
21
orga_mediawiki/composer.local.json
Normal file
21
orga_mediawiki/composer.local.json
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"repositories": [
|
||||||
|
{
|
||||||
|
"type": "vcs",
|
||||||
|
"url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/OpenIDConnect"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"starcitizentools/citizen-skin": "^2.39",
|
||||||
|
"mediawiki/pluggable-auth": "^7",
|
||||||
|
"mediawiki/openidconnect": "^8",
|
||||||
|
"mediawiki/semantic-compound-queries": "^2.2",
|
||||||
|
"mediawiki/semantic-extra-special-properties": "^3",
|
||||||
|
"mediawiki/semantic-media-wiki": "^4.2",
|
||||||
|
"mediawiki/semantic-result-formats": "^4.2"
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"preferred-install": "source",
|
||||||
|
"optimize-autoloader": true
|
||||||
|
}
|
||||||
|
}
|
40
orga_mediawiki/orga_mediawiki.conf
Normal file
40
orga_mediawiki/orga_mediawiki.conf
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
# Public Chaostreff MediaWiki
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 81;
|
||||||
|
listen [::]:81;
|
||||||
|
root /var/lib/orga_mediawiki;
|
||||||
|
charset utf-8;
|
||||||
|
client_max_body_size 100m;
|
||||||
|
client_body_timeout 60;
|
||||||
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
|
location ~ \.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ @rewrite;
|
||||||
|
}
|
||||||
|
|
||||||
|
location @rewrite {
|
||||||
|
rewrite ^/(.*)$ /index.php;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ^~ /maintenance/ {
|
||||||
|
return 403;
|
||||||
|
}
|
||||||
|
# Restrictions based on the .htaccess files
|
||||||
|
location ~ ^/(cache|includes|maintenance|languages|serialized|tests|images/deleted)/ {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ \.php$ {
|
||||||
|
include /etc/nginx/fastcgi.conf;
|
||||||
|
|
||||||
|
fastcgi_pass unix:/run/php/php-fpm.sock;
|
||||||
|
fastcgi_index index.php;
|
||||||
|
|
||||||
|
try_files $uri @rewrite;
|
||||||
|
}
|
||||||
|
}
|
25
pgtune.conf
Normal file
25
pgtune.conf
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# PGTune configuration
|
||||||
|
# conf.d/pgtune.conf
|
||||||
|
|
||||||
|
# DB Version: 15
|
||||||
|
# OS Type: linux
|
||||||
|
# DB Type: web
|
||||||
|
# Total Memory (RAM): 2 GB
|
||||||
|
# CPUs num: 2
|
||||||
|
# Connections num: 20
|
||||||
|
# Data Storage: ssd
|
||||||
|
|
||||||
|
max_connections = 20
|
||||||
|
shared_buffers = 512MB
|
||||||
|
effective_cache_size = 1536MB
|
||||||
|
maintenance_work_mem = 128MB
|
||||||
|
checkpoint_completion_target = 0.9
|
||||||
|
wal_buffers = 16MB
|
||||||
|
default_statistics_target = 100
|
||||||
|
random_page_cost = 1.1
|
||||||
|
effective_io_concurrency = 200
|
||||||
|
work_mem = 13107kB
|
||||||
|
huge_pages = off
|
||||||
|
min_wal_size = 1GB
|
||||||
|
max_wal_size = 4GB
|
||||||
|
|
204
public_mediawiki/LocalSettings.php
Executable file
204
public_mediawiki/LocalSettings.php
Executable file
|
@ -0,0 +1,204 @@
|
||||||
|
<?php
|
||||||
|
# This file was automatically generated by the MediaWiki 1.39.10
|
||||||
|
# installer. If you make manual changes, please keep track in case you
|
||||||
|
# need to recreate them later.
|
||||||
|
#
|
||||||
|
# See docs/Configuration.md for all configurable settings
|
||||||
|
# and their default values, but don't forget to make changes in _this_
|
||||||
|
# file, not there.
|
||||||
|
#
|
||||||
|
# Further documentation for configuration settings may be found at:
|
||||||
|
# https://www.mediawiki.org/wiki/Manual:Configuration_settings
|
||||||
|
|
||||||
|
# Protect against web entry
|
||||||
|
if ( !defined( 'MEDIAWIKI' ) ) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
## Include platform/distribution defaults
|
||||||
|
#require_once "$IP/includes/PlatformSettings.php";
|
||||||
|
|
||||||
|
## Server secrets file
|
||||||
|
require_once "/etc/public_mediawiki/SecretSettings.php";
|
||||||
|
|
||||||
|
## Uncomment this to disable output compression
|
||||||
|
# $wgDisableOutputCompression = true;
|
||||||
|
|
||||||
|
$wgSitename = "Chaostreff Backnang Wiki";
|
||||||
|
$wgMetaNamespace = "Wiki";
|
||||||
|
|
||||||
|
## The URL base path to the directory containing the wiki;
|
||||||
|
## defaults for all runtime URL paths are based off of this.
|
||||||
|
## For more information on customizing the URLs
|
||||||
|
## (like /w/index.php/Page_title to /wiki/Page_title) please see:
|
||||||
|
## https://www.mediawiki.org/wiki/Manual:Short_URL
|
||||||
|
$wgScriptPath = "";
|
||||||
|
$wgArticlePath = "/$1";
|
||||||
|
$wgUsePathInfo = true;
|
||||||
|
$wgScriptExtension = ".php";
|
||||||
|
|
||||||
|
## The protocol and server name to use in fully-qualified URLs
|
||||||
|
$wgServer = "https://wiki.ctbk.de";
|
||||||
|
|
||||||
|
## The URL path to static resources (images, scripts, etc.)
|
||||||
|
$wgResourceBasePath = $wgScriptPath;
|
||||||
|
|
||||||
|
## The URL paths to the logo. Make sure you change this from the default,
|
||||||
|
## or else you'll overwrite your logo when you upgrade!
|
||||||
|
$wgLogos = [
|
||||||
|
'1x' => "$wgResourceBasePath/resources/assets/logo.svg",
|
||||||
|
'icon' => "$wgResourceBasePath/resources/assets/logo.svg",
|
||||||
|
];
|
||||||
|
$wgFavicon = "$wgResourceBasePath/resources/assets/favicon.ico";
|
||||||
|
|
||||||
|
## UPO means: this is also a user preference option
|
||||||
|
|
||||||
|
$wgEnableEmail = true;
|
||||||
|
$wgEnableUserEmail = true; # UPO
|
||||||
|
|
||||||
|
$wgEmergencyContact = "";
|
||||||
|
$wgPasswordSender = "";
|
||||||
|
|
||||||
|
$wgEnotifUserTalk = false; # UPO
|
||||||
|
$wgEnotifWatchlist = false; # UPO
|
||||||
|
$wgEmailAuthentication = true;
|
||||||
|
|
||||||
|
## Database settings
|
||||||
|
$wgDBtype = "postgres";
|
||||||
|
$wgDBserver = "localhost";
|
||||||
|
$wgDBname = "public_mediawiki";
|
||||||
|
$wgDBuser = "mediawiki";
|
||||||
|
# password is in secret settings
|
||||||
|
|
||||||
|
# Postgres specific settings
|
||||||
|
$wgDBport = "5432";
|
||||||
|
$wgDBmwschema = "mediawiki";
|
||||||
|
|
||||||
|
# Shared database table
|
||||||
|
# This has no effect unless $wgSharedDB is also set.
|
||||||
|
$wgSharedTables[] = "actor";
|
||||||
|
|
||||||
|
## Shared memory settings
|
||||||
|
$wgMainCacheType = CACHE_ACCEL;
|
||||||
|
$wgMemCachedServers = [];
|
||||||
|
|
||||||
|
## To enable image uploads, make sure the 'images' directory
|
||||||
|
## is writable, then set this to true:
|
||||||
|
$wgEnableUploads = true;
|
||||||
|
$wgAllowCopyUploads = true;
|
||||||
|
$wgCopyUploadsFromSpecialUpload = true;
|
||||||
|
$wgUseImageMagick = true;
|
||||||
|
$wgImageMagickConvertCommand = "/usr/bin/convert";
|
||||||
|
|
||||||
|
# InstantCommons allows wiki to use images from https://commons.wikimedia.org
|
||||||
|
$wgUseInstantCommons = false;
|
||||||
|
|
||||||
|
# Periodically send a pingback to https://www.mediawiki.org/ with basic data
|
||||||
|
# about this MediaWiki instance. The Wikimedia Foundation shares this data
|
||||||
|
# with MediaWiki developers to help guide future development efforts.
|
||||||
|
$wgPingback = false;
|
||||||
|
|
||||||
|
# Site language code, should be one of the list in ./includes/languages/data/Names.php
|
||||||
|
$wgLanguageCode = "de";
|
||||||
|
|
||||||
|
# Time zone
|
||||||
|
$wgLocaltimezone = "Europe/Berlin";
|
||||||
|
|
||||||
|
## Set $wgCacheDirectory to a writable directory on the web server
|
||||||
|
## to make your wiki go slightly faster. The directory should not
|
||||||
|
## be publicly accessible from the web.
|
||||||
|
$wgCacheDirectory = "/var/cache/public_mediawiki";
|
||||||
|
|
||||||
|
# Changing this will log out all existing sessions.
|
||||||
|
$wgAuthenticationTokenVersion = "1";
|
||||||
|
|
||||||
|
## For attaching licensing metadata to pages, and displaying an
|
||||||
|
## appropriate copyright notice / icon. GNU Free Documentation
|
||||||
|
## License and Creative Commons licenses are supported so far.
|
||||||
|
$wgRightsPage = "Wiki:Urheberrechte";
|
||||||
|
$wgRightsUrl = "https://creativecommons.org/licenses/by/4.0/";
|
||||||
|
$wgRightsText = "Creative Commons „Namensnennung“";
|
||||||
|
$wgRightsIcon = "$wgResourceBasePath/resources/assets/licenses/cc-by.png";
|
||||||
|
|
||||||
|
# allow nonstandard display titles, which we want to have for a few pages
|
||||||
|
$wgRestrictDisplayTitle = false;
|
||||||
|
|
||||||
|
# Path to the GNU diff3 utility. Used for conflict resolution.
|
||||||
|
$wgDiff3 = "/usr/bin/diff3";
|
||||||
|
|
||||||
|
## Default skin
|
||||||
|
# For MinervaNeue it’s "minerva"
|
||||||
|
$wgDefaultSkin = "citizen";
|
||||||
|
$wgDefaultMobileSkin = 'citizen';
|
||||||
|
|
||||||
|
# Enabled skins.
|
||||||
|
wfLoadSkin( 'MinervaNeue' );
|
||||||
|
wfLoadSkin( 'Citizen' );
|
||||||
|
# keep this up-to-date with website theme color
|
||||||
|
$wgCitizenThemeColor = "#f9c827";
|
||||||
|
|
||||||
|
# Enabled extensions. Most of the extensions are enabled by adding
|
||||||
|
# wfLoadExtension( 'ExtensionName' );
|
||||||
|
# to LocalSettings.php. Check specific extension documentation for more details.
|
||||||
|
# The following extensions were automatically enabled:
|
||||||
|
wfLoadExtension( 'CategoryTree' );
|
||||||
|
wfLoadExtension( 'CodeEditor' );
|
||||||
|
wfLoadExtension( 'ImageMap' );
|
||||||
|
wfLoadExtension( 'Interwiki' );
|
||||||
|
wfLoadExtension( 'InputBox' );
|
||||||
|
wfLoadExtension( 'Math' );
|
||||||
|
wfLoadExtension( 'Nuke' );
|
||||||
|
wfLoadExtension( 'ParserFunctions' );
|
||||||
|
wfLoadExtension( 'Poem' );
|
||||||
|
wfLoadExtension( 'PdfHandler' );
|
||||||
|
wfLoadExtension( 'ReplaceText' );
|
||||||
|
wfLoadExtension( 'Renameuser' );
|
||||||
|
wfLoadExtension( 'SpamBlacklist' );
|
||||||
|
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
|
||||||
|
wfLoadExtension( 'TemplateData' );
|
||||||
|
wfLoadExtension( 'TitleBlacklist' );
|
||||||
|
wfLoadExtension( 'VisualEditor' );
|
||||||
|
wfLoadExtension( 'WikiEditor' );
|
||||||
|
|
||||||
|
wfLoadExtension( 'PluggableAuth' );
|
||||||
|
wfLoadExtension( 'OpenIDConnect' );
|
||||||
|
|
||||||
|
wfLoadExtension( 'SemanticMediaWiki' );
|
||||||
|
enableSemantics( 'wiki.ctbk.de' );
|
||||||
|
|
||||||
|
# Add more configuration options below.
|
||||||
|
|
||||||
|
# Disable account creation - we only use SSO accounts
|
||||||
|
$wgGroupPermissions['*']['autocreateaccount'] = true;
|
||||||
|
$wgGroupPermissions['sysop']['autocreateaccount'] = true;
|
||||||
|
$wgGroupPermissions['*']['createaccount'] = false;
|
||||||
|
$wgGroupPermissions['sysop']['createaccount'] = true;
|
||||||
|
|
||||||
|
# allow copy uploads by anyone
|
||||||
|
$wgGroupPermissions['user']['upload_by_url'] = true;
|
||||||
|
|
||||||
|
# SSO config
|
||||||
|
# necessary to allow admin user(s) to login
|
||||||
|
$wgPluggableAuth_EnableLocalLogin = true;
|
||||||
|
$wgPluggableAuth_Config["Chaostreff Backnang IdP"] = [
|
||||||
|
'plugin' => 'OpenIDConnect',
|
||||||
|
'data' => [
|
||||||
|
'providerURL' => 'https://idp.ctbk.de/realms/ctbk/',
|
||||||
|
'clientID' => 'public_mediawiki',
|
||||||
|
'clientsecret' => $ctbkClientSecret
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
# 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;
|
||||||
|
|
||||||
|
# uncomment this if Semantic MediaWiki property locking is broken
|
||||||
|
#$smwgChangePropagationProtection = false;
|
21
public_mediawiki/composer.local.json
Normal file
21
public_mediawiki/composer.local.json
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"repositories": [
|
||||||
|
{
|
||||||
|
"type": "vcs",
|
||||||
|
"url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/OpenIDConnect"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"starcitizentools/citizen-skin": "^2.39",
|
||||||
|
"mediawiki/pluggable-auth": "^7",
|
||||||
|
"mediawiki/openidconnect": "^8",
|
||||||
|
"mediawiki/semantic-compound-queries": "^2.2",
|
||||||
|
"mediawiki/semantic-extra-special-properties": "^3",
|
||||||
|
"mediawiki/semantic-media-wiki": "^4.2",
|
||||||
|
"mediawiki/semantic-result-formats": "^4.2"
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"preferred-install": "source",
|
||||||
|
"optimize-autoloader": true
|
||||||
|
}
|
||||||
|
}
|
40
public_mediawiki/public_mediawiki.conf
Normal file
40
public_mediawiki/public_mediawiki.conf
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
# Public Chaostreff MediaWiki
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
root /var/lib/public_mediawiki;
|
||||||
|
charset utf-8;
|
||||||
|
client_max_body_size 100m;
|
||||||
|
client_body_timeout 60;
|
||||||
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
|
location ~ \.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ @rewrite;
|
||||||
|
}
|
||||||
|
|
||||||
|
location @rewrite {
|
||||||
|
rewrite ^/(.*)$ /index.php;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ^~ /maintenance/ {
|
||||||
|
return 403;
|
||||||
|
}
|
||||||
|
# Restrictions based on the .htaccess files
|
||||||
|
location ~ ^/(cache|includes|maintenance|languages|serialized|tests|images/deleted)/ {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ \.php$ {
|
||||||
|
include /etc/nginx/fastcgi.conf;
|
||||||
|
|
||||||
|
fastcgi_pass unix:/run/php/php-fpm.sock;
|
||||||
|
fastcgi_index index.php;
|
||||||
|
|
||||||
|
try_files $uri @rewrite;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue