StuRa:Server/SRS13/2015
Verwendungszweck: MediaWiki für wiki.htw.stura-dresden.de
Ports[Bearbeiten]
installierte Ports[Bearbeiten]
- atk
- autoconf
- autoconf-wrapper
- automake
- automake-wrapper
- bdftopcf
- bigreqsproto
- bison
- bitstream-vera
- ca_root_nss
- cairo
- cmake
- cmake-modules
- compositeproto
- curl
- cvsps
- damageproto
- db41
- dejavu
- dialog4ports
- emacs-nox11
- encodings
- expat
- fixesproto
- font-bh-ttf
- font-misc-ethiopic
- font-misc-meltho
- font-util
- fontconfig
- fontsproto
- freetype2
- gamin
- gdbm
- gdk-pixbuf2
- gettext
- gio-fam-backend
- git
- glib
- gmake
- gnomehier
- gobject-introspection
- help2man
- inputproto
- jasper
- jbigkit
- jpeg
- kbproto
- libICE
- libSM
- libX11
- libXau
- libXcomposite
- libXcursor
- libXdamage
- libXdmcp
- libXext
- libXfixes
- libXfont
- libXi
- libXinerama
- libXrandr
- libXrender
- libXt
- libcheck
- libevent
- libevent2
- libexecinfo
- libffi
- libfontenc
- libgcrypt
- libgpg-error
- libiconv
- libidn
- libpthread-stubs
- libsigsegv
- libtool
- libxcb
- libxml2
- libxslt
- libyaml
- lynx
- m4
- mkfontdir
- mkfontscale
- nano
- p5-Error
- p5-ExtUtils-Constant
- p5-IO-Socket-IP
- p5-IO-Socket-SSL
- p5-Locale-gettext
- p5-Net-SMTP-SSL
- p5-Net-SSLeay
- p5-Socket
- pango
- pcre
- perl-threaded
- pixman
- pkgconf
- png
- portaudit
- portupgrade
- py27-wikitools
- python27
- python33
- randrproto
- renderproto
- ruby
- ruby18-bdb
- ruby19-bdb
- ruby19-date2
- tiff
- tmux
- unzip
- vim-lite
- wget
- xcb-proto
- xcb-util
- xcb-util-renderutil
- xcmiscproto
- xextproto
- xf86bigfontproto
- xineramaproto
- xorg-fonts-truetype
- xorg-macros
- xproto
- xtrans
- zsh
konfigurierte Ports[Bearbeiten]
ca_root_nss[Bearbeiten]
OPTIONS_FILE_SET+=ETCSYMLINK
freetype2[Bearbeiten]
OPTIONS_FILE_UNSET+=CFF_HINTING_ADOBE OPTIONS_FILE_UNSET+=LCD_FILTERING
libcheck[Bearbeiten]
OPTIONS_FILE_SET+=DOCS OPTIONS_FILE_SET+=EXAMPLES
libxml2[Bearbeiten]
OPTIONS_FILE_UNSET+=MEM_DEBUG OPTIONS_FILE_SET+=SCHEMA OPTIONS_FILE_SET+=THREADS OPTIONS_FILE_UNSET+=THREAD_ALLOC OPTIONS_FILE_UNSET+=XMLLINT_HIST
libxslt[Bearbeiten]
OPTIONS_FILE_SET+=CRYPTO OPTIONS_FILE_UNSET+=MEM_DEBUG
png[Bearbeiten]
OPTIONS_FILE_SET+=APNG
python27[Bearbeiten]
OPTIONS_FILE_SET+=EXAMPLES OPTIONS_FILE_UNSET+=FPECTL OPTIONS_FILE_SET+=IPV6 OPTIONS_FILE_SET+=NLS OPTIONS_FILE_UNSET+=PTH OPTIONS_FILE_SET+=PYMALLOC OPTIONS_FILE_UNSET+=SEM OPTIONS_FILE_SET+=THREADS OPTIONS_FILE_UNSET+=UCS2 OPTIONS_FILE_SET+=UCS4
ruby18-bdb[Bearbeiten]
OPTIONS_FILE_SET+=DOCS OPTIONS_FILE_UNSET+=EXAMPLES
zusätzliche Konfigurationsdateien[Bearbeiten]
Jail[Bearbeiten]
/etc/rc.conf[Bearbeiten]
apache22_enable="YES"
mysql_enable="YES"
Konfiguration der Programme[Bearbeiten]
apache[Bearbeiten]
httpd.conf[Bearbeiten]
…
LoadModule php5_module libexec/apache22/libphp5.so
<IfModule php5_module>
DirectoryIndex index.php index.php5 index.html
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
…
ServerAdmin <admin[at]domain.tld>
…
ServerName wiki.htw.stura-dresden.de:80
…
DocumentRoot "</path/to/mediawiki>"
…
#<Directory "/usr/local/www/apache22/data">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
# Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
# AllowOverride None
#
# Controls who can get stuff from this server.
#
# Order allow,deny
# Allow from all
#</Directory>
…
# Virtual hosts
Include etc/apache22/extra/httpd-vhosts.conf
…
# CustomLog "/var/log/httpd-access.log" combined # comment out Der StuRa speichert nicht!
…
extra/httpd-vhosts.conf[Bearbeiten]
…
NameVirtualHost 141.56.50.13:80
…
<VirtualHost wiki.htw.stura-dresden.de:80>
Redirect permanent / http://wiki.stura.htw-dresden.de/
</VirtualHost>
<VirtualHost wiki.stura.htw-dresden.de:80>
ServerAdmin webmaster@stura.htw-dresden.de
DocumentRoot "/usr/local/www/sturawiki_1_19_2"
ServerName wiki.stura.htw-dresden.de
ServerAlias www.wiki.stura.htw-dresden.de
<Directory "/usr/local/www/sturawiki_1_19_2">
Options Indexes FollowSymLinks
DirectoryIndex index.php index.php5 index.html
AllowOverride none
Order allow,deny
Allow from all
</Directory>
ErrorLog "/var/log/wiki-error_log"
# CustomLog "/var/log/wiki-access_log" common
</VirtualHost>
<VirtualHost wiki.hs-abc.htw.stura-dresden.de:80>
ServerAdmin webmaster@stura.htw-dresden.de
DocumentRoot "/usr/local/www/hs-abcwiki_1_19_4"
ServerName wiki.hs-abc.htw.stura-dresden.de
ServerAlias www.wiki.hs-abc.htw.stura-dresden.de
<Directory "/usr/local/www/hs-abcwiki_1_19_4">
Options Indexes FollowSymLinks
DirectoryIndex index.php index.php5 index.html
AllowOverride none
Order allow,deny
Allow from all
</Directory>
ErrorLog "/var/log/wiki-error_log"
# CustomLog "/var/log/wiki-access_log" common
</VirtualHost>
<VirtualHost wiki.fzs.stura-dresden.de:80>
ServerAdmin webmaster@stura.htw-dresden.de
DocumentRoot "/usr/local/www/fzswiki_1_19_4"
ServerName wiki.fzs.stura-dresden.de
ServerAlias www.wiki.fzs.htw.stura-dresden.de
<Directory "/usr/local/www/fzswiki_1_19_4">
Options Indexes FollowSymLinks
DirectoryIndex index.php index.php5 index.html
AllowOverride none
Order allow,deny
Allow from all
</Directory>
ErrorLog "/var/log/fzswiki-error_log"
# CustomLog "/var/log/fzswiki-access_log" common
</VirtualHost>
<VirtualHost fzs-wiki.de:80>
DocumentRoot "/usr/local/www/fzswiki_1_19_4"
ServerName wiki.fzs.stura-dresden.de
ServerAlias www.wiki.fzs.htw.stura-dresden.de
<Directory "/usr/local/www/fzswiki_1_19_4">
Options Indexes FollowSymLinks
DirectoryIndex index.html index.php
AllowOverride none
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
mediawiki[Bearbeiten]
Wiki[Bearbeiten]
</path/to/mediawiki-stura>/LocalSettings.php[Bearbeiten]
…
$wgLogo = "$wgStylePath/common/images/stura.jpg";
$wgFavicon = "$wgStylePath/common/images/stura_ohne_typo.favicon32.jpg";
…
$wgDefaultSkin = 'vector';
…
##############################
## Ausnahmen Details zeigen ##
##############################
$wgShowExceptionDetails = false;
###################
## Mail Settings ##
###################
$wgSMTP = array (
'IDHost' => 'wiki.stura.htw-dresden.de', //this is used to build the Message-ID mail header
'host' => 'mail.stura.htw-dresden.de', //this is the outgoing mail server name (SMTP server)
'port' => 25, //this is the port used by the SMTP server
'auth' => false, //in my case, authentication is not required by the mail server for outgoing mail
);
################
## Namespaces ##
################
define("NS_STURA", 100);
define("NS_STURA_TALK", 101);
define("NS_INTERN", 102);
define("NS_INTERN_TALK", 103);
define("NS_ADMIN", 104);
define("NS_ADMIN_TALK", 105);
define("NS_PERSON", 106);
define("NS_PERSON_TALK", 107);
$wgExtraNamespaces[NS_STURA] = "StuRa";
$wgExtraNamespaces[NS_STURA_TALK] = "StuRa_Diskussion";
$wgExtraNamespaces[NS_INTERN] = "Intern";
$wgExtraNamespaces[NS_INTERN_TALK] = "Intern_Diskussion";
$wgExtraNamespaces[NS_ADMIN] = "Admin";
$wgExtraNamespaces[NS_ADMIN_TALK] = "Admin_Diskussion";
$wgExtraNamespaces[NS_PERSON] = "Person";
$wgExtraNamespaces[NS_PERSON_TALK] = "Person_Diskussion";
################
## Extensions ##
################
$wgAllowExternalImages = true #Externe Bilder einbinden
require_once "$IP/extensions/ConfirmEdit/QuestyCaptcha.php";
$wgCaptchaClass = 'QuestyCaptcha';
$arr = array (
'Frage' => 'An answer!',
);
foreach ( $arr as $key => $value ) {
$wgCaptchaQuestions[] = array( 'question' => $key, 'answer' => $value );
};
$wgCaptchaTriggers['edit'] = true;
$wgCaptchaTriggers['create'] = true;
require_once( "$IP/extensions/Renameuser/Renameuser.php" );
require_once( "$IP/extensions/WikiEditor/WikiEditor.php" );
require_once( "$IP/extensions/Lockdown/Lockdown.php" );
require_once( "$IP/extensions/Interwiki/Interwiki.php" );
require_once( "$IP/extensions/ContributionScores/ContributionScores.php" );
#################################
## ContributionScores settings ##
#################################
$wgContribScoreIgnoreBots = true; // Exclude Bots from the reporting - Can be omitted.
$wgContribScoreIgnoreBlockedUsers = true; // Exclude Blocked Users from the reporting - Can be omitted.
$wgContribScoresUseRealName = true; // Use real user names when available - Can be omitted. Only for MediaWiki 1.19 and later.
$wgContribScoreDisableCache = false; // Set to true to disable cache for parser function and inclusion of table.
//Each array defines a report - 7,50 is "past 7 days" and "LIMIT 50" - Can be omitted.
$wgContribScoreReports = array(
array(7,50),
array(30,50),
array(0,50)
) ;
####################
## costume groups ##
####################
// Implicit group for intern (copy of group user)
$wgGroupPermissions['intern']['move'] = true;
$wgGroupPermissions['intern']['move-subpages'] = true;
$wgGroupPermissions['intern']['move-rootuserpages'] = true; // can move root userpages
//$wgGroupPermissions['intern']['movefile'] = true; // Disabled for now due to possible bugs and security concerns
$wgGroupPermissions['intern']['read'] = true;
$wgGroupPermissions['intern']['edit'] = true;
$wgGroupPermissions['intern']['createpage'] = true;
$wgGroupPermissions['intern']['createtalk'] = true;
$wgGroupPermissions['intern']['writeapi'] = true;
$wgGroupPermissions['intern']['upload'] = true;
$wgGroupPermissions['intern']['reupload'] = true;
$wgGroupPermissions['intern']['reupload-shared'] = true;
$wgGroupPermissions['intern']['minoredit'] = true;
$wgGroupPermissions['intern']['purge'] = true; // can use ?action=purge without clicking "ok"
$wgGroupPermissions['intern']['sendemail'] = true;
// To grant sysops permissions to edit interwiki data
$wgGroupPermissions['sysop']['interwiki'] = true;
###########################
## Restricted namespaces ##
###########################
$wgNamespacePermissionLockdown[NS_INTERN]['*'] = array('intern');
$wgNamespacePermissionLockdown[NS_INTERN_TALK]['*'] = array('intern');
$wgNamespacePermissionLockdown[NS_PERSON]['*'] = array('intern');
$wgNamespacePermissionLockdown[NS_PERSON_TALK]['*'] = array('intern');
Wiki Extensions[Bearbeiten]
Wiki Extension Asirra[Bearbeiten]
Die Extension:Asirra wird nicht mehr verwendet!
- Die Extension:Asirra
- wurde seit 2014-10 nicht mehr unterstützt;
- funktionierte Ende 2014 nicht mehr;
- musst Ende 2014 ersetzt werden;
- wurde Anfang 2015 durch Tom durch #Wiki Extension QuestyCaptcha ersetzt;
- diente als CAPTCHA.
- Asirra/ConfirmEdit.php
Wiki Extension Lockdown[Bearbeiten]
- Installation
wget https://codeload.github.com/wikimedia/mediawiki-extensions-Lockdown/legacy.tar.gz/REL1_19
tar -xzf wikimedia-mediawiki-extensions-Lockdown-84fca94.tar.gz -C /var/www/mediawiki/extensions
Wiki Extension QuestyCaptcha[Bearbeiten]
Die Extension:QuestyCaptcha
- dient als CAPTCHA;
- wurde 2015-01 installiert;
- ersetzte #Wiki Extension Asirra.
HS-ABC Wiki[Bearbeiten]
</path/to/mediawiki-hsabc>/LocalSettings.php[Bearbeiten]
require_once( "$IP/extensions/Asirra/Asirra.php" ); require_once( "$IP/extensions/Renameuser/Renameuser.php" ); require_once( "$IP/extensions/WikiEditor/WikiEditor.php" ); ################### ## Mail Settings ## ################### $wgSMTP = array ( 'IDHost' => 'wiki.hs-abc.htw.stura-dresden.de', //this is used to build the Message-ID mail header 'host' => 'mail.stura.htw-dresden.de', //this is the outgoing mail server name (SMTP server) 'port' => 25, //this is the port used by the SMTP server 'auth' => false, //in my case, authentication is not required by the mail server for outgoing mail );
</path/to/mediawiki-hsabc>/extensions/Asirra/ConfirmEdit.php[Bearbeiten]
…
$wgGroupPermissions['user' ]['skipcaptcha'] = true;
$wgGroupPermissions['autoconfirmed']['skipcaptcha'] = false;
…
$wgCaptchaTriggers['edit'] = true; // Would check on every edit
$wgCaptchaTriggers['create'] = false; // Check on page creation.
$wgCaptchaTriggers['sendemail'] = true; // Special:Emailuser
…