Uniform:Server-4.x

Aus Fortinet Wiki
Zur Navigation springen Zur Suche springen


Vorwort

Das Ziel dieser Installations-Anleitung ist unter Windows XP auf einen USB Stick einen Uniform Server voellig unabhaengig zu installieren sowie MediaWiki und Plug-In's fuer Uniform Server. Die hier gezeigte Installation auf USB kann nachtraeglich auf jedem x-beliebigen Windows XP System wieder ueber den USB Stick ausgefuehrt werden und benuetzt werden


Test- und Installationsmaschinen waren:

Windows XP SP3, Priotec USB Stick 1 GB

Datenschutz

        *********************************************************************
        *                                                                   *
        *  THIS FILE MAY CONTAIN CONFIDENTIAL, PRIVILEGED OR OTHER LEGALLY  *
        *      PROTECTED INFORMATION. YOU ARE PROHIBITED FROM COPYING,      *
        *    DISTRIBUTING OR OTHERWISE USING IT WITHOUT PERMISSION FROM     *
        *                  ALSO SCHWEIZ AG SWITZERLAND.                     *
        *                                                                   *
        *********************************************************************

"Die in diesen Artikeln enthaltenen Informationen sind vertraulich und dürfen ohne
schriftliche Zustimmung von der ALSO Schweiz AG gegenüber Dritt-Unternehmen nicht 
                         bekannt gemacht werden"

Installation/Konfiguration von Uniform Server auf USB Stick

Es kann ganz nuetzlich sein zB. ein MediaWiki auf USB Stick bei sich zu haben. Um dies ohne grossen Aufwand zu bewerkstelligen so dass der USB Stick resp. wie gesagt ein MediaWiki auf jedem Unabhaengigen Windows System laeuft kann ein Uniform Server auf dem USB Stick aufgesetzt werden. Dieser beinhaltet alle Wichtigen Komponenten wie Apache, MySQL, PHP etc.

       http://wiki.uniformserver.com/index.php/4.0-Mona:_Introduction
       Download         Uniform Server v4.2                http://downloads.sourceforge.net/miniserver/

Um die Installation auszufuehren sind folgende Vorrausetzungen zu erfuellen:

       - Windows 32 und 64 bit
       - USB Stick mit mind. 100 MB (Grundinstallation)
       - HTTP TCP port 80 muss frei sein sowie TCP port 3306. Dies kann kontrolliert werden unter DOS Kommando:
       
         netstat.exe -p TCP -n -a| FIND "ABHÖREN" | FIND ":80 "
       
       - Es darf keine andere Instance von Apache laufen unter dem Namen "Apache.exe". Ist dies der Fall aendere den Namen der Apache Instanz fuer diese Konfig unter "\Uniform Server\udrive\usr\local\Apache2\bin\ zu "ApacheW.exe". Danach muss in folgenden Files dies nachgefuehrt werden
               
         \Uniform Server\start.bat                                                         (2 Positions)
         \Uniform Server\stop.bat                                                          (1 Position) 
         \Uniform Server\udrive\home\admin\www\cgi-bin\{language code}\sserver.cgi         (1 Position)  

Nun fuehren wir die Uniform Server Installation aus: Doppelklicke auf die Datei UniServer4_2.exe. Die Datei enthaelt den Apache sowie den MySQL Server. Nach dem Doppelklick auf die Datei muss die Destination angegeben werden. Gebe den USB Stick an. Nun wird ein Folder erstellt mit dem namen "Uniform Server". In diesem Verzeichnis wird ein weiteres Verzeichnis angelegt "udrive". Dieses Verzeichnis stellt den Drive dar und ein Lauwerks Buchstabe wird diesem Verzeichnis vergeben sowie stellt es das "root" Dir dar. Der durch "UniServer4_2.exe" vergebene Name "udrive" darf nicht veraendert werden.

NOTE
Das entpacken der Datei kann durchaus einige Zeit in Anspruch nehmen. Der Extract Status zeigt waehrend dessen immer ca. 21% an. Es sieht im ersten Moment so aus als ob das "UniServer4_2.exe" nicht mehr reagiert dem ist jedoch nicht so.

Nun die Source ist entpackt und nun muss der Apache Server konfiguriert werden: Kontrolliere ob unter dem Verzeichnis "Uniform Server\udrive ein Verzeichnis existiert mit dem Namen "tmp" (sollte der Fall sein). Ist dies nicht der Fall erstelle dieses Verzeichnis "tmp".

       Oeffne danach das folgende File mit dem WordPad:
       
       \Uniform Server\udrive\usr\local\Apache2\conf\httpd.conf
       
       - Suche nach der Position "ThreadsPerChild" und wechsle diese von "250" auf "16"
       - Suche nach der Position "Listen 80" und wechsle diese auf "Listen 127.0.0.1:80"
       
       ------------------  httpd.conf ------------------ 
       
       <IfModule mpm_winnt.c>
       ThreadsPerChild 250
       #ThreadsPerChild 16
       MaxRequestsPerChild  0
       </IfModule>
       
       
       #Listen 80
       Listen 127.0.0.1:80
       
       ------------------  httpd.conf ------------------  

Eine tiefere Anzahl "ThreadsPerChild" ist fuer das Testing zu Bevorzugen. Der Eintrag "127.0.0.1:80" schraenkt den Zugriff auf den Uniform Server auf "localhost" ein dh. nur von diesem Computer indem der USB Stick aktiv ist kann lokal auf das MediaWiki zugegriffen werden. Aus diesem Grund werden nachfolgend einige konfig Positionen auf "localhost" gesetzt um diesem Umstand rechnung zu tragen. Nun konfigurieren wir den MySQL Server.

       Oeffne das folgende File mit dem WordPad:
       
       \UniServer\udrive\usr\local\mysql\my
       
       - Suche nach der Position "[mysqld]" und unter dieser Position fuege eine neue Zeile ein
         mit dem Eintrag "bind-address=127.0.0.1".
       
       ------------------ my ------------------ 
       
       # The MySQL server
       [mysqld]
       bind-address=127.0.0.1
       
       ------------------ my ------------------ 

Das File "my" ist kein eigentliches File sondern ein "shurtcut" Namens "SpeedDial". Aus diesem Grund kann es zu Problemen kommen wenn man das File mit dem "WordPad" oeffnen will. Wenn dies nicht durchgefuehrt werden kann im herkoemmlichen Sinne oeffne das "my" File indem du es per Drag&Drop in das "WordPad" Programm legst (C:\Programme\Windows NT\Zubehör\wordpad.exe).

Laufwerksbuchstaben des USB Sticks/Laufwerks definieren: Windows benuetzt die Laufwerksbuchstaben um den Device zu allozieren. Dieser wird im Normallfall automatisch zugewiesen. Der Uniform Server "server-start.bat" sendet zu Windows einen expliziten Laufwerksbuchstaben der frei ist um diesen explizit zuzuweisen. Windows reagiert nach der Zuweisung so das Uniform Server laeuft also ob die Instanz/Installation auf einer eigener Hard-Disk laufen wuerde.

Der Uniform Server sucht sich beim Start der Server einen eigenen Laufwerksbuchstaben der Frei ist. Dies ist bei aelteren Uniform Servern Versionen nicht der Fall und muss manuell definiert werden. Schon aus diesem Grund ist es ratsam die neueste Version hier die Version 4.2 einzusetzen. Um den Uniform Server zu starten erstelle auf deinme Desktop "shortcuts" von folgenden Files und sobald erstellt benenne diese um:

       \Uniform Server\Server_Start.bat         umbenennen auf "Start Uniform Servers"
       \Uniform Server\stop.bat                 umbenennen auf "Stop Uniform Servers"

Nun starte den Uniform Server mit den noetigen Instanzen: Doppelklikce auf den Shortcut auf deinem Desktop "Start Uniform Servers"

NOTE
Benutze auf keinen Fall die Batch Dateien im Verzeichnis "\UniServer\udrive" um den Uniform Server zu starten.

Es erscheinen kurz zwei Consolen die nachtraeglich wieder geschlossen werden. In diesen Consolen werden kurz Ports etc. ueberprueft ob diese in "use" sind. Dann erscheint kurz das Logo "THE UNIFORM SERVER" das ein redirect.html ausfuehrt auf:

       http://localhost/apanel/

Sobald die Seite erscheint ist man im Admin Panel des Uniform Server's. Dort kann der Uniform Server manipuliert werden, Service gestoppt/gestartet werden usw. Wir belassen alles so wie es per Standard definiert ist.

NOTE
Wenn verhindert werden soll das der "apanel" automatisch erscheint muss die folgende Konfig angepasst werden:

       \UniServer\Server_Start.bat
       
       ------------------ Server_Start.bat ------------------ 
       
       rem ### Start Apanel
       rem start %Disk%:\home\admin\www\redirect.html
       
       ------------------ Server_Start.bat ------------------ 

Installation/Konfiguration von MediaWiki auf USB Stick

Nun installiere wir MediaWiki:

       Download         MediaWiki currently 1.15.0h        ttp://www.mediawiki.org/wiki/Download
       
       - Entpacke die Source vom MediaWiki "mediawiki-1.15.0.tar.gz"
       - Nachdem entpacken haben wir einen neuen Ordner Namens "mediawiki-1.15.0"
       - Unter diesem neuen Ordner befindet sich die vers. Ordner von MediaWiki wie bin, config, doc usw.
       - Aendere den Namen des Ordners von "mediawiki-1.15.0" nach "wiki"
       - Kopier nun den Ordner "wiki" komplett nach:
       
         \Uniform Server\udrive\www

NOTE
Wenn "WinZip" benutzt wird um die Source von MediaWiki zu entpacken muss die Option "TAR file smart CR/LF conversion" ausgeschaltet sein (Options|Configuration|Miscellaneous) um korrupten konfig Files vorzubeugen. Ebenso vergewissere dich das die Option "Use Folder Names" aktiv ist. Achte darauf egal welches Programm benutzt wird um die Source von MediWiki zu entpacken das diese "komplett und vollstaendig" entpackt ist. Einige Entpacker entpacken zuer das *.tar.gz File und danach muss in einem zweiten Schritt das *.tar entpackt werden.

Konfigurieren der MediaWiki Variablen. Oeffne eine Verbindung anhand des Browsers auf folgenden Link:

       http://localhost/wiki/config/index.php

NOTE
Achte darauf das fuer Root Password "root" angegeben wird ansonsten wird die Installation nicht funktionieren. Nachtraeglich kann das Passwort geaendert werden ueber "http://localhost/apanel" dh. ueber den Admin Pannel vom Uniform Server (MySQL Server Configuration). Nachtraeglich muss das neue Passwort in "\UniServer\udrive\www\wiki\AdminSettings.php" ebenfalls abgeaendert werden. Gebe folgende Angaben an:

       ------------------ output ------------------
       
       Wiki name:                        Mydomain Wiki
       
       Contact e-mail:                   webmaster@mydomain.ch
       
       Language:                         de - Deutsch
       
       Copyright/license:                No license metadata        
       
       
       Admin username:                   WikiSysop
       Password:                
       Password:
       
       
       Object caching:                   eAccelerator
       
       Memcached servers:                (leave blank) 
       
       E-Mail features (global)          Disabled
       
       User-to-user e-mail               Disabled
       
       E-mail notification about         Disabled
       changes:
       
       E-mail address authentication:    Disabled
       
       
       
       Database type:                    MySQL
       Database host:                    localhost
       
       Database name:                    wikidb
       DB username:                      root
       DB password:                      root
       DB passsword confirm:             root
       
       Superuser account:                X Use superuser account
       Superuser name:                   root
       Superuser password:               root
       
       
       Database table prefix:            (leave blank) 
       
       Storage Engine                    MyISAM
       
       Database character set            MySQL 4.1/5.0 binary
       
       ------------------ output ------------------

NOTE
Es kann einige Zeit dauern bis die Status Seite oder Result Seite erscheint da im Hintergrund die MySQL DB von MediaWiki angelegt werden muss.

       ------------------ output ------------------
       
       Please include all of the lines below when reporting installation problems.
       
       PHP 5.2.9-2 installed 
       Found database drivers for: MySQL 
       PHP server API is apache2handler; ok, using pretty URLs (index.php/Page_Title) 
       Have XML / Latin1-UTF-8 conversion support. 
       Session save path (/tmp) appears to be valid.
       PHP's memory_limit is 32M. 
       eAccelerator installed 
       GNU diff3 not found.
       Found GD graphics library built-in, image thumbnailing will be enabled if you enable uploads. 
       Installation directory: U:\www\wi 
       Script URI path: /wi 
       Installing MediaWiki with php file extensions 
       Environment checked. You can install MediaWiki. 
       Warning: $wgSecretKey key is insecure, generated with mt_rand(). Consider changing it manually. 
       Generating configuration file...
       
       Database type: MySQL 
       Loading class: DatabaseMysql 
       Attempting to connect to database server as root...success. 
       Connected to mysql 5.1.34-community; enabling MySQL 4.1/5.0 charset mode 
       Attempting to create database...
       Created database wikidb 
       Creating tables... done. 
       Initializing statistics... 
       Granting user permissions to wikiuser on wikidb...success. 
       Created sysop account WikiSysop. 
       Creating LocalSettings.php...
       
       --------------------------------------------------------------------------------
       
       Installation successful! Move the config/LocalSettings.php file to the parent directory,
       then follow this link to your wiki.
       
       You should change file permissions for LocalSettings.php as required to prevent other
       users on the server reading passwords and altering configuration data.
       
       ------------------ output ------------------

Es wurde durch den Vorgang ein neues File geschrieben:

       \UniServer\udrive\www\wiki\config\LocalSettings.php

Dieses muss verschoben werden nach:

       \UniServer\udrive\www\wiki\LocalSettings.php

Das Verzeichnis "\UniServer\udrive\www\wiki\config" kann danach geloescht werden. Bennen folgendes File um:

     von:
     \UniServer\udrive\www\wiki\AdminSettings.sample
     
     nach:      
     \UniServer\udrive\www\wiki\AdminSettings.php

Nun aender folgende Positionen ab:

       ------------------ AdminSettings.php ------------------
       
       $wgDBadminuser      = 'root';
       $wgDBadminpassword  = 'root';
       
       ------------------ AdminSettings.php ------------------

Auf dieses File greift MediaWiki zurueck um Datenbank Maitenance/Funktionen durchzufuehren. Nun oeffne das File \UniServer\udrive\www\wiki\LocalSettings.php und aendere folgende Positionen ab:

       ------------------ LocalSettings.php ------------------
       
       <?php
       
       # This file was automatically generated by the MediaWiki installer.
       # If you make manual changes, please keep track in case you need to
       # recreate them later.
       #
       # See includes/DefaultSettings.php 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:
       # http://www.mediawiki.org/wiki/Manual:Configuration_settings
       
       # If you customize your file layout, set $IP to the directory that contains
       # the other MediaWiki files. It will be used as a base to locate files.
       if( defined( 'MW_INSTALL_PATH' ) ) {
               $IP = MW_INSTALL_PATH;
       } else {
               $IP = dirname( __FILE__ );
       }
       
       $path = array( $IP, "$IP/includes", "$IP/languages" );
       set_include_path( implode( PATH_SEPARATOR, $path ) . PATH_SEPARATOR . get_include_path() );
       
       require_once( "$IP/includes/DefaultSettings.php" );
       
       # If PHP's memory limit is very low, some operations may fail.
       # ini_set( 'memory_limit', '20M' );
       
       if ( $wgCommandLineMode ) {
               if ( isset( $_SERVER ) && array_key_exists( 'REQUEST_METHOD', $_SERVER ) ) {
                       die( "This script must be run from the command line\n" );
               }
       }
       ## Uncomment this to disable output compression
       # $wgDisableOutputCompression = true;
       
       $wgSitename         = "Mydomain 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 please see:
       ## http://www.mediawiki.org/wiki/Manual:Short_URL
       $wgScriptPath       = "/wiki";
       $wgScript           = "$wgScriptPath/index.php";
       $wgRedirectScript   = "$wgScriptPath/redirect.php";
       $wgScriptExtension  = ".php";
       
       ## For more information on customizing the URLs please see:
       ## http://meta.wikimedia.org/wiki/Eliminating_index.php_from_the_url
       ## If using PHP as a CGI module, the ?title= style usually must be used.
       $wgArticlePath      = "$wgScript/$1";
       # $wgArticlePath      = "$wgScript?title=$1";
       
       $wgStylePath        = "$wgScriptPath/skins";
       $wgStyleDirectory   = "$IP/skins";
       #$wgLogo             = "$wgStylePath/common/images/logo.jpg";
       
       $wgUploadPath       = "$wgScriptPath/images";
       $wgUploadDirectory  = "$IP/images";
       
       ## UPO means: this is also a user preference option
       
       $wgEnableEmail      = true;
       $wgEnableUserEmail  = false; # UPO
       
       $wgEmergencyContact = "webmaster@mydomain.ch";
       $wgPasswordSender = "webmaster@mydomain.ch";
       
       $wgEnotifUserTalk = false; # UPO
       $wgEnotifWatchlist = false; # UPO
       $wgEmailAuthentication = true;
       
       ## Database settings
       $wgDBtype           = "mysql";
       $wgDBserver         = "localhost";
       $wgDBname           = "wikidb";
       $wgDBuser           = "wikiuser";
       $wgDBpassword       = "YOURPASSWORD";
       
       # MySQL specific settings
       $wgDBprefix         = "";
       
       # MySQL table options to use during installation or update
       $wgDBTableOptions   = "ENGINE=InnoDB, DEFAULT CHARSET=binary";
       
       # Experimental charset support for MySQL 4.1/5.0.
       $wgDBmysql5 = true;
       
       ## Shared memory settings
       $wgMainCacheType = CACHE_NONE;
       $wgMemCachedServers = array();
       
       ## To enable image uploads, make sure the 'images' directory
       ## is writable, then set this to true:
       $wgEnableUploads       = true;
       # $wgUseImageMagick = true;
       # $wgImageMagickConvertCommand = "/usr/bin/convert";
       
       ## If you use ImageMagick (or any other shell command) on a
       ## Linux server, this will need to be set to the name of an
       ## available UTF-8 locale
       # $wgShellLocale = "en_US.UTF-8";
       
       ## If you want to use image uploads under safe mode,
       ## create the directories images/archive, images/thumb and
       ## images/temp, and make them all writable. Then uncomment
       ## this, if it's not already uncommented:
       # $wgHashedUploadDirectory = false;
       
       ## If you have the appropriate support software installed
       ## you can enable inline LaTeX equations:
       $wgUseTeX           = false;
       $wgMathPath         = "{$wgUploadPath}/math";
       $wgMathDirectory    = "{$wgUploadDirectory}/math";
       $wgTmpDirectory     = "{$wgUploadDirectory}/tmp";
       
       $wgLocalInterwiki   = strtolower( $wgSitename );
       
       $wgLanguageCode = "de";
       
       $wgSecretKey = "213c5ee593475f622001cb37a4b51052d8ec22d0f59e9333354c740cc374a";
       
       ## Default skin: you can change the default skin. Use the internal symbolic
       ## names, ie 'standard', 'nostalgia', 'cologneblue', 'monobook':
       $wgDefaultSkin = 'monobook';
       
       ## 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.
       # $wgEnableCreativeCommonsRdf = true;
       $wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright
       $wgRightsUrl = "";
       $wgRightsText = "";
       $wgRightsIcon = "";
       # $wgRightsCode = ""; # Not yet used
       
       $wgDiff3 = "";
       
       # When you make changes to this configuration file, this will make
       # sure that cached pages are cleared.
       $wgCacheEpoch = max( $wgCacheEpoch, gmdate( 'YmdHis', @filemtime( __FILE__ ) ) );
       
       #########################
       ##### Customization ##### 
       #########################
       
       # For using a direct (authenticated) SMTP server connection, you need to
       # fill an array. Set to false (the default value) to use the built-in PHP 
       # mail() function.
       
       # Warning: This setting requires PEAR's Mail package to be installed
       # (run "pear install MAIL" and "pear install Net_SMTP").
       
       #$wgSMTP = array(
       # 'host'     => "helios.mydomain.ch", //could also be an IP address
       # 'IDHost'   => "mydomain.ch",
       # 'port'     => 25,
       # 'auth'     => false,
       # 'username' => "my_user_name",
       # 'password' => "my_password"
       #);
       
       
       ## Enables AJAX support. Required by some extensions and optional features.
       $wgScriptExtension = ".php5";
       $wgEnableMWSuggest = true;
       $wgUseAjax = true;
       $wgAjaxSearch = true;
       
       ## Defines the protocols which are supported and translated to clickable links
       ## by the mediawiki parser. External links added to the wiki which do not begin
       ## with one of these protocols are not allowed (they are simply rendered as text
       ## and do not become links, even if enclosed in square brackets).
       $wgUrlProtocols = array(
               'http://',
               'https://',
               'ftp://',
               'file://',
               'irc://',
               'gopher://',
               'telnet://', // Well if we're going to support the above.. -ævar
               'nntp://', // @bug 3808 RFC 1738
               'worldwind://',
               'mailto:',
               'news:'
        );
       
       ## The CategoryTree extension provides a dynamic view of the wiki's category
       ## structure as a tree. It uses AJAX to load parts of the tree on demand.
       ## CategoryTree was originally written by Daniel Kinzler as an external tool
       ## (see meta:User:Duesentrieb/CategoryTree). It was later integrated into the
       ## MediaWiki software with the help of Tim Starling.
       require_once( "{$IP}/extensions/CategoryTree/CategoryTree.php" );
       
       ## The InputBox extension is a MediaWiki extension that adds already created
       ## HTML forms to wiki pages. Users can "complete" a form (entering text,
       ## selecting menu items, etc.) by entering text into the box.
       ## 
       ## http://www.mediawiki.org/wiki/Extension:InputBox
       ## 
       require_once($IP.'/extensions/InputBox/InputBox.php');
       
       ## The highlight syntax extension is a really simple way for you to add syntax
       ## highlighting to your wiki posts with support with several languages. The
       ## extension requires the Beautifier Syntax Highlighting Engine . What the
       ## extension does is pass the tag inputs and/or arguments to the Beautifier
       ## Highlighting engine and returns the HTML output.
       ## 
       ## http://www.mediawiki.org/wiki/Extension:Syntax_Highlighting
       ## 
       require_once("extensions/syntaxHighlightExtension.php");
       
       ## This is the list of preferred extensions for uploading files. 
       ## Uploading files with extensions not in this list will trigger a warning.
       $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'pdf', 'sql' );
       
       ## $wgGroupPermissions is a two-dimensional array indexed by user group and
       ## available permissions; for example:
       ##
       ##       "$wgGroupPermissions['user']['edit'] = true;" 
       ##
       ## allows registered users to edit. These groups can be assigned to users through
       ## the wiki Special:Userrights interface.
       ##
       ## More information http://www.mediawiki.org/wiki/Manual:$wgGroupPermissions
       ##
       
       ## Implicit group for all visitors
       ##
               // Only SysOp (Admin) can create accounts -
               $wgGroupPermissions['*'    ]['createaccount']   = false;        // 1.5.0
       
               // No anonyous read allowed -
               $wgGroupPermissions['*'    ]['read']            = false;        // 1.5.0
       
               // No anonymous editing allowed -
               $wgGroupPermissions['*'    ]['edit']            = false;        // 1.5.0
       
       #       $wgGroupPermissions['*'    ]['createpage']      = true;         // 1.6.0
       #       $wgGroupPermissions['*'    ]['createtalk']      = true;         // 1.6.0
        
       ## Implicit group for all logged-in accounts
       ##
       #       $wgGroupPermissions['user' ]['move']            = true;         // 1.5.0
       #       $wgGroupPermissions['user' ]['read']            = true;         // 1.5.0
       #       $wgGroupPermissions['user' ]['edit']            = true;         // 1.5.0
       #       $wgGroupPermissions['user' ]['createpage']      = true;         // 1.6.0
       #       $wgGroupPermissions['user' ]['createtalk']      = true;         // 1.6.0
       #       $wgGroupPermissions['user' ]['upload']          = true;         // 1.5.0
       #       $wgGroupPermissions['user' ]['reupload']        = true;         // 1.6.0
       #       $wgGroupPermissions['user' ]['reupload-shared'] = true;         // 1.6.0
       #       $wgGroupPermissions['user' ]['minoredit']       = true;         // 1.6.0
       #       $wgGroupPermissions['user' ]['purge']           = true;         // 1.10.0
        
       ## Implicit group for accounts that pass $wgAutoConfirmAge
       ##
       #       $wgGroupPermissions['autoconfirmed']['autoconfirmed'] = true;   // 1.6.0
        
       ## Implicit group for accounts with confirmed email addresses This has little use 
       ## when email address confirmation is off. This group has been removed by default 
       ## in 1.13.0
       ##
       #       $wgGroupPermissions['emailconfirmed']['emailconfirmed'] = true; // 1.7.0
        
       ## Users with bot privilege can have their edits hidden
       ## from various log pages by default
       ##
       #       $wgGroupPermissions['bot'  ]['bot']             = true;         // 1.5.0
       #       $wgGroupPermissions['bot'  ]['autoconfirmed']   = true;         // 1.6.0
       #       $wgGroupPermissions['bot'  ]['nominornewtalk']  = true;         // 1.9.0
       #       $wgGroupPermissions['bot'  ]['autopatrol']      = true;         // 1.10.0
       #       $wgGroupPermissions['bot'  ]['suppressredirect'] = true;        // 1.12.0
       #       $wgGroupPermissions['bot'  ]['apihighlimits']   = true;         // 1.12.0
       
       ## Can edit all protected pages without cascade protection enabled Added in 1.13.0, 
       ## but commented out in source
       ##
       #       $wgGroupPermissions['bot'  ]['editprotected']   = true;         // 1.13.0
        
       ## Most extra permission abilities go to this group
       ##
       #       $wgGroupPermissions['sysop']['block']           = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['createaccount']   = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['delete']          = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['bigdelete']       = true;         // 1.12.0
       #       $wgGroupPermissions['sysop']['deletedhistory']  = true;         // 1.6.0
       #       $wgGroupPermissions['sysop']['undelete']        = true;         // 1.12.0
       #       $wgGroupPermissions['sysop']['editinterface']   = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['editusercssjs']   = true;         // 1.12.0
       #       $wgGroupPermissions['sysop']['import']          = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['importupload']    = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['move']            = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['patrol']          = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['autopatrol']      = true;         // 1.9.0
       #       $wgGroupPermissions['sysop']['protect']         = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['proxyunbannable'] = true;         // 1.7.0
       #       $wgGroupPermissions['sysop']['rollback']        = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['trackback']       = true;         // 1.7.0
       #       $wgGroupPermissions['sysop']['upload']          = true;         // 1.5.0
       #       $wgGroupPermissions['sysop']['reupload']        = true;         // 1.6.0
       #       $wgGroupPermissions['sysop']['reupload-shared'] = true;         // 1.6.0
       #       $wgGroupPermissions['sysop']['unwatchedpages']  = true;         // 1.6.0
       #       $wgGroupPermissions['sysop']['autoconfirmed']   = true;         // 1.6.0
       #       $wgGroupPermissions['sysop']['upload_by_url']   = true;         // 1.8.0
       #       $wgGroupPermissions['sysop']['ipblock-exempt']  = true;         // 1.9.0
       #       $wgGroupPermissions['sysop']['blockemail']      = true;         // 1.11.0
       #       $wgGroupPermissions['sysop']['markbotedits']    = true;         // 1.12.0
       #       $wgGroupPermissions['sysop']['suppressredirects'] = true;       // 1.12.0
       #       $wgGroupPermissions['sysop']['apihighlimits']   = true;         // 1.12.0
       #       $wgGroupPermissions['sysop']['browsearchive']   = true;         // 1.13.0
       #       $wgGroupPermissions['sysop']['noratelimit']     = true;         // 1.13.0
       
       ## Access to Special:MergeHistory. This was added in 1.12, but remains commented out 
       ## in the source
       ##
       #       $wgGroupPermissions['sysop']['mergehistory']    = true;         // 1.12.0
        
       ## Permission to change users' group assignments
       ##
       #       $wgGroupPermissions['bureaucrat']['userrights']  = true;        // 1.5.0
       #       $wgGroupPermissions['bureaucrat']['noratelimit'] = true;        // 1.13.0
       
       ## Permission to change users' groups assignments across wikis Added in 1.12.0, 
       ## but remain commented out in the source
       ##
       #       $wgGroupPermissions['bureaucrat']['userrights-interwiki'] = true; // 1.12.0
       
       ------------------ LocalSettings.php ------------------

Installiere nun die Extensions die wir in LocalSettings.php angegeben haben: Um die Funktion CategoryTree zu installieren gehe folgendermassen vor:

       Download        http://www.mediawiki.org/wiki/Extension:CategoryTree

Entpacke das File CategoryTree-MW1.14-r45462.tar.gz Dessen Inhalt kopiere in ein neues Verzeichnis unter den "extensions" verzeichnis:

       \UniServer\udrive\www\wiki\extensions\CategoryTree

Folgender Eintrag im File "LocalSettings.php" ist zustaendig, dass die Extension geladen wird:

       ------------------ LocalSettings.php ------------------
       
       #########################
       ##### Customization ##### 
       #########################
       
       
       ## The CategoryTree extension provides a dynamic view of the wiki's category
       ## structure as a tree. It uses AJAX to load parts of the tree on demand.
       ## CategoryTree was originally written by Daniel Kinzler as an external tool
       ## (see meta:User:Duesentrieb/CategoryTree). It was later integrated into the
       ## MediaWiki software with the help of Tim Starling.
       ##
       ## http://www.mediawiki.org/wiki/Special:ExtensionDistributor/CategoryTree
       ##
       require_once( "{$IP}/extensions/CategoryTree/CategoryTree.php" );
       
       ------------------ LocalSettings.php ------------------

Um die Funktion InputBox zu installieren gehe folgendermassen vor:

       Download        http://www.mediawiki.org/wiki/Extension:InputBox

Entpacke die Datei InputBox.zip. Dessen Inhalt kopiere in ein neues Verzeichnis unter den "extensions" verzeichnis:

       \UniServer\udrive\www\wiki\extensions\InputBox

Folgender Eintrag im File "LocalSettings.php" ist zustaendig, dass die Extension geladen wird:

       ------------------ LocalSettings.php ------------------
       
       #########################
       ##### Customization ##### 
       #########################
       
       
       ## The InputBox extension is a MediaWiki extension that adds already created
       ## HTML forms to wiki pages. Users can "complete" a form (entering text,
       ## selecting menu items, etc.) by entering text into the box.
       ## 
       ## http://www.mediawiki.org/wiki/Extension:InputBox
       ## 
       require_once($IP.'/extensions/InputBox/InputBox.php');
       
       ------------------ LocalSettings.php ------------------

Um die Funktion Syntax Highlighting zu installieren gehe folgendermassen vor:

       Download http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/b/be/beautifier/

Entpacke die Datei beautifier-php-full-current.tar.gz Darin befindet sich ein Verzeichnis Names "php". Benenne dieses um nach "beautifierpackage" Verschiebe nun das Verzeichnis "beautifierpackage" nach:

       \UniServer\udrive\www\wiki\beautifierpackage

Folgender Eintrag im File "LocalSettings.php" ist zustaendig, dass die Extension geladen wird:

       ------------------ LocalSettings.php ------------------
       
       #########################
       ##### Customization ##### 
       #########################
       
       
       ## The highlight syntax extension is a really simple way for you to add syntax
       ## highlighting to your wiki posts with support with several languages. The
       ## extension requires the Beautifier Syntax Highlighting Engine . What the
       ## extension does is pass the tag inputs and/or arguments to the Beautifier
       ## Highlighting engine and returns the HTML output.
       ## 
       ## http://www.mediawiki.org/wiki/Extension:Syntax_Highlighting
       ## 
       require_once("extensions/syntaxHighlightExtension.php");
       
       ------------------ LocalSettings.php ------------------

Fuer Highlight Extension muessen noch einige Anpassungen durchgefuehrt werden dh. folgendes File muss neu anhand WordPad erstellt werden:

       \UniServer\udrive\www\wiki\extensions\syntaxHighlightExtension.php

ACTHUNG WICHTIGER HINWEIS
Damit das Script hier abgebildet werden konnte musst das Script manipuliert werden dh. HighlightExtension arbeitet genau mit diesen Anweisungen fuer "output" im PHP Script selber. Aus diesem Grund wurden alle Positionen im Script abgeaendert und zwar von [pre nach "pre"]und [/pre nach "/pre"]. Fuer das einwandfreie funktionieren des Scriptes muessen diese Positionen wieder in den Orginalzustand versetzt werden dh. ["pre" nach pre] sowie ["/pre" nach /pre].

Das File weist folgenden Inhalt auf:

    ------------------ syntaxHighlightExtension.php ------------------
        
        <?php
        /**
         * MediaWiki Extension for Code Syntax Highlighting with the [ http://www.beautifier.org | Beautifier Syntax Highlighting Engine].
         *
         * Parses any content defined within the <highlightSyntax></highlightSyntax> tag
         * with the [ http://www.beautifier.org | Beautifier Syntax Highlighting Engine] and 
         * returns the HTML output.
         * @author Lucas Hrabovsky <lucas@amie.st>
         * @copyright © 2006 Amie Inc.
         * @package MediaWiki
         * @subpackage Extensions
         * @filesource
         */
        /**
         * ----------------------------------------
         * Configuration Vars.
         * ----------------------------------------
         * @string BEAUT_PATH The root path to your Beatuifier installation.
         * @string LOCAL_SERVER_ROOT The root path to use when opening files on the local server for highlighting.
         * @string OUTPUT_HIGHLIGHT_AS Whether to output the HTML as CSS friendly or not.  enum('CSS','HTML')
         */
        $BEAUT_PATH = "/export/webdir/lucutus.mydomain.ch/www/beautifierpackage/";
        $LOCAL_SERVER_ROOT = "/pathtoyour/public_html/or/www/directory/";
        $OUTPUT_HIGHLIGHT_AS = "HTML";
        /**
         * Add the syntax highlighting extension to the wgExtensionFunctions array.
         */
        $wgExtensionFunctions[] = "syntaxHighlightingExtension";
        /**
         * Register the syntaxHighlightingExtension with the Wiki Parser and associate 
         * the highlightSyntax tag with the syntaxHighlightingRenderHtml function.
         */
        function syntaxHighlightingExtension(){
                global $wgParser;
                $wgParser->setHook("HIGHLIGHTSYNTAX","syntaxHighlightingRenderHtml");
        }
        /**
         * The callback function for converting the input text to HTML output.
         */
        function syntaxHighlightingRenderHtml($input, $argv){
                /**
                 * Pass in the globals defined above for use in the function.
                 */
                global $BEAUT_PATH, $LOCAL_SERVER_ROOT, $OUTPUT_HIGHLIGHT_AS;
                /**
                 * Require the two main files for the beautifier.
                 */
                require_once ($BEAUT_PATH."Beautifier/Core.php");
         
                /**
                 * If a specific language is requested load the relevant file and create the highlighter
                 */
                $myhfile = null;
                if($argv["language"] && file_exists($BEAUT_PATH."HFile/HFile_".$argv["language"].".php") ){
                        require_once ($BEAUT_PATH."HFile/HFile_".$argv["language"].".php");
         
                        if (FALSE === eval("\$myhfile = new HFile_".$argv["language"]."();") ) {
                                $output .= "Error:1 Could not instantiate HFile_".$argv["language"]."()<br />";
                        }
         
                }
         
                /**
                 * Otherwise use php as a default
                 */
                else
                {
                        require_once ($BEAUT_PATH."HFile/HFile_php3.php");
                        $myhfile = new HFile_php3();
                }
         
                /**
                 * Set up the highlight object based on whether
                 * you want the output as CSS freindly or straight HTML.
                 */
                if($OUTPUT_HIGHLIGHT_AS=="CSS"){
                        require_once ($BEAUT_PATH."Output/Output_css.php");
                        $outputter = new Output_css();
                }
                else {
                        require_once ($BEAUT_PATH."Output/Output_HTML.php");
                        $outputter = new Output_Html($myhfile);
                }
         
                $highlighter = new Core($myhfile, $outputter);
         
                /**
                 * The meat and potatoes...
                 */
         
                /**
                 * If the serverFile argument is passed in the tag, load the local file into the highlighter parser.
                 */ 
                if($argv["serverFile"]){
                        $output .= "<div style=\"font-weight: bold;\"><"pre">\n";
                        $output .= $highlighter->highlight_text($highlighter->load_file($serverRoot.$argv["serverFile"]));
                        $output .= "<"/pre"></div>";
                        return $output;
                /**
                 * If its a remote file, open it up and parse the returned contents.
                 */
                } else if($argv["remoteFile"]){
                        $openFileName = $argv["remoteFile"];
                        $fp = fopen($openFileName, "r");
                        if(!$fp){
                                $output = "Error: Syntax Highlighter could not open the file ".$openFileName."<br />";
                        } else {
                                $fileContents = fread($fp, 8096);
                                fclose($fp);
                                $output .= "<div style=\"font-weight: bold;\"><h1>Code from <a href=\"".$argv["remoteFile"]."\">".$argv["remoteFile"]."</a></h1><"pre">\n";
                                $output .= $highlighter->highlight_text($fileContents);
                                $output .= "<"/pre"></div>";
                        }
                        return $output;
                /**
                 * Else we just want to highlight the code within the syntaxHighlight tags.
                 */
                } else {
                        $output .= "<div style=\"font-weight: bold;\"><"pre">\n";
                        $output .= $highlighter->highlight_text($input);
                        $output .= "<"/pre"></div>";
                        return $output;
                }
        }
        
        ------------------ syntaxHighlightExtension.php ------------------ 

Nun muss noch folgendes bestehendes File angepasst werden:

       \UniServer\udrive\www\wiki\beautifierpackage\Output\Output_HTML.php
       
   ------------------ Output_HTML.php ------------------
        
        <?php
        /*
        
        This program is free software; you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation; either version 2 of the License, or
        (at your option) any later version.
        
        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.
        
        You should have received a copy of the GNU General Public License
        along with this program; if not, write to the Free Software
        Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
        
        */
        
                class Output_HTML
                {
                        function Output_HTML($file=undef)
                        {
                                if (!isset($file)) $file = new HFile();
         
                                $this->code                = '_WORD_';
                                $this->linecomment         = '<font color="'. $file->linecommentcolour .'" style="font-style=italic;">_WORD_</font>';
                                $this->blockcomment         = '<font color="'. $file->blockcommentcolour .'" style="font-style=italic;">_WORD_</font>';
                                $this->prepro                 = '<font color="purple">_WORD_</font>';
                                $this->select                 = '<font color="red"><b>_WORD_</b></font>';
                                $this->quote                 = '<font color="'. $file->quotecolour .'">_WORD_</font>';
         
                                for($i=0; $i<sizeof($file->colours); $i++)
                                {
                                   $varname = "category_".($i+1);
                                   $this->{$varname} = '<font color="'. $file->colours[$i] .'">_WORD_</font>';
                                }
                        }
                }
        
        ?>
                
        ------------------ Output_HTML.php ------------------ 

Wenn das MediaWiki auf dem USB Stick ein zusaetzliches Performance Tuning braucht fuege in LocalSettings.php folgende Positionen hinzu:

       \UniServer\udrive\www\wiki\LocalSettings.php
       
       ------------------ LocalSettings.php ------------------
       
       #########################
       ##### Customization ##### 
       #########################
       
       ## Performance tuning for MediaWiki on USB Stick
       ##
       $wgDisableCounters = true;     # prevents page statistics being stored and displayed 
       $wgDisableTextSearch = true;   # prevents text search 
       $wgDisableSearchUpdate = true; # prevents search tables being updated, requiring them to be rebuilt if you ever re-enable text search 
       $wgEnableParserCache = true;   # uses php zlib 
       
       ------------------ LocalSettings.php ------------------

Installation/Konfiguration von FileZilla FTP Plug-In

Wer auf dem Uniform Server einen FTP Server wuenscht kann diesen als Plug-In installieren. Die hier abgebildete Vorgehensweise ist abgeleitet von folgender Doku:

       http://wiki.uniformserver.com/index.php/FileZilla_Server2:_Introduction
       
       Download         UniServer_FileZillaFTPd_1.0.exe           http://sourceforge.net/project/showfiles.php?group_id=53691&package_id=49448&release_id=675568

Entpacke mit einem Doppelklick UniServer_FileZillaFTPd_1.0.exe. Bennene folgende Files auf dem Uniform Sercver um:

       \UniServer\Stop.bat                nach         \UniServer\Stop.bat.orig
       \UniServer\Server_Start.bat        nach         \UniServer\Server_Start.bat.orig

Kopiere folgende Files aus der entpackten Source nach folgendem Verzeichnis:

       udrive\filezilla_server\basic\Stop.bat                nach         \UniServer\Stop.bat
       udrive\filezilla_server\basic\Server_Start.bat        nach        \UniServer\Server_Start.bat

Bennene folgende Files auf dem Uniform Sercver um:

       \UniServer\udrive\usb_server_start.bat        nach         \UniServer\udrive\usb_server_start.bat.orig
       \UniServer\udrive\usb_server_stop.bat        nach         \UniServer\udrive\usb_server_stop.bat.orig

Kopiere folgende Files aus der entpackten Source nach folgendem Verzeichnis:

       udrive\filezilla_server\disk_root\usb_server_start.bat                nach         \UniServer\udrive\usb_server_start.bat
       udrive\filezilla_server\disk_root\usb_server_stop.bat                nach         \UniServer\udrive\usb_server_stop.bat

Erstelle auf dem Uniform Server den Ordner "\UniServer\udrive\filezilla_server". Kopiere folgende Ordner nach "\UniServer\udrive\filezilla_server\"

       udrive\filezilla_server\basic
       udrive\filezilla_server\disk_root
       udrive\filezilla_server\filezilla_server_portable
       udrive\filezilla_server\run_as_service

Loesche folgende ueberfluessigen Files:

       \UniServer\udrive\filezilla_server\filezilla_server\basic\readme.txt
       \UniServer\udrive\filezilla_server\filezilla_server\basic\Server_Start.bat
       \UniServer\udrive\filezilla_server\filezilla_server\basic\Stop.bat
       
       \UniServer\udrive\filezilla_server\filezilla_server\disk_root\readme.txt
       \UniServer\udrive\filezilla_server\filezilla_server\disk_root\usb_server_start.bat
       \UniServer\udrive\filezilla_server\filezilla_server\disk_root\usb_server_stop.bat
       \UniServer\udrive\filezilla_server\filezilla_server\disk_root\change_drive.pl
       
       \UniServer\udrive\filezilla_server\filezilla_server\run_as_service\readme.txt

Erstelle vom folgendem File einen shurtcut ins Verzeichnis "\UniServer\":

       \UniServer\udrive\filezilla_server\filezilla_server_portable\FileZilla Server Interface.exe

Nun per Standard hat der FileZilla keinen User erfasst dem man benutzen koennte fuer den FTP Zugriff. Um einen User zu erfassen starte die Server Konsole mit dem soeben erstellten Link. Bevor dies jedoch moeglich ist muss der uniformServer gestoppt und wieder gestartet werden damit FileZilla mitgestartet wird:

       \UniServer\Stop.bat
       \UniServer\Server_Start.bat

Danach kann das Interface gestartet werden. Default Passwort ist "admin"

       \UniServer\FileZilla Server Interface.exe

NOTE
Aender unter "Edit | Settings" als Erstes das Passwort. Danach erfasse unter "Edit | Users" einen neuen User und vergebe die entsprechenden Rechte sowie als Home Verzeichnis:

        \UniServer\udrive\filezilla_server\filezilla_server\disk_root

Als Home Verzeichnis gibt man das Verzeichnis an:

       "\filezilla_server\disk_root\"

Da der Laufwerksbuchstabe des USB Laufwerks immer wieder aendern kann ist das Perl Script in "basic" Verzeichnis zustaendig diesen Laufwerksbuchstaben beim Start des Server immer wieder anzupassen. Diese Information und die Information der Server Konfig wird im folgenden File abgelegt:

       \UniServer\udrive\filezilla_server\filezilla_server\filezilla_server_portable\FileZilla Server.xml

In diesem Verzeichnis befinden sich ebenfalls die Logs.

Installation/Konfiguration von AWStats Log Pug-In

AWStats ist ein Log Parser mit Statistiken etc. fuer viele verschiedene Log Server. Um das Plug-In auf den Uniform Server zu installieren gehe folgendermassen vor:

       http://wiki.uniformserver.com/index.php/UniServer_AWStats
       
       Download         http://sourceforge.net/project/showfiles.php?group_id=53691&package_id=49448&release_id=677883

Kopiere das File "UniServer_AWStats_1.0.exe" nach:

       \UniServer\

Nun Doppelklicke das File "UniServer_AWStats_1.0.exe" und installiere dieses dh. das File wird entpackt und a sich das File im \UniServer\ Ordner befindet werden alle Files korrekt an den richtigen Ort entpackt (nicht den Pfad veraendern). Nach dem erfolgreichen entpacken kann "UniServer_AWStats_1.0.exe" geloescht werden. Folgendes wird dem Uniform Server hinzugefuegt:

       Installationsverzeichnis        \UniServer\Read_me.txt
       Installationsverzeichnis        \UniServer\udrive\cgi-bin\awstats 
       Passwort File                   \UniServer\udrive\htpasswd\awstats\.htpasswd
       PM Module                       \UniServer\udrive\usr\lib\Encode.pm
                                       \UniServer\udrive\usr\lib\bytes.pm
       Perl Module                     \UniServer\udrive\usr\lib\Encode\
       Update fuer Verzeichnis www     \UniServer\udrive\www\

Wenn gewuenscht kann das Readme von "UniServer_AWStats_1.0.exe" geloescht werden:

       \UniServer\Read_me.txt

Starte den Server und gehe auf folgenden Link:

       http://localhost/cgi-bin/awstats/awstats.pl

Das Konfig File von AWStat befindet sich in:

       \UniServer\udrive\cgi-bin\awstats\awstats.conf

Der Zugriff auf AWStat ist aus Security Gruenden auf "localhost" beschraenkt. Will man diese Beschraenkung aufheben muss das ".htaccess" File modifiziert werden:

       \UniServer\udrive\cgi-bin\awstats\.htaccess
       
       ------------------ .htaccess ------------------ 
       
       Order Deny,Allow
       Deny from all
       Allow from 127.0.0.1
       
       ------------------ .htaccess ------------------ 

Zusaetzlich kann AWStat mit einem Usernamen und Passwort geschuetzt werden dh. um das zu bewerkstelligen aktiviere folgende Zeilen im folgenden File:

       \UniServer\udrive\cgi-bin\awstats\.htaccess
       
       ------------------ .htaccess ------------------ 
       
       AuthName "Uniform Server - Server Access"
       AuthType Basic
       AuthUserFile /htpasswd/awstats/.htpasswd
       Require valid-user
       
       ------------------ .htaccess ------------------ 

Der Username und das Passwort sind per Default auf root:root gesetzt. Um dieszu aendern muss folgendes File abgeandert werden:

       \UniServer\udrive\htpasswd\awstats\.htpasswd
       
       ------------------ .htaccess ------------------
       
       root:root
       
       ------------------ .htaccess ------------------

Installation/Konfiguration von Zent Optimizer Pug-In

Der Zend Optimizer ist eine Erweiterung die gebraucht wird wenn "Encode PHP scripts von Zend Guard" benutzt werden. Per Standard kommt der Uniform Server nicht mit dem Zend Optimizer sondern mit "eAccelerator". Dieser ist schneller und per Standard aktiviert. Solange der Load klein ist auf dem Server ist der "eAccelerator" der Schnellere Beschleuniger . Steigt der Load sollte der Zend Optimizer aktiviert werden:

       http://wiki.uniformserver.com/index.php/UniServer_Zend_Optimizer
       
       Download         http://sourceforge.net/project/showfiles.php?group_id=53691&package_id=49448

Kopiere das File "UniServer_Zend_Optimizer_1.0.exe" nach:

       \UniServer\

Nun Doppelklicke das File "UniServer_Zend_Optimizer_1.0.exe" und installiere dieses dh. das File wird entpackt und a sich das File im \UniServer\ Ordner befindet werden alle Files korrekt an den richtigen Ort entpackt (nicht den Pfad veraendern). Nach dem erfolgreichen entpacken kann "UniServer_Zend_Optimizer_1.0.exe" geloescht werden. Folgendes wird dem Uniform Server hinzugefuegt:

       \UniServer\udrive\usr\local\php\zendOptimizer 
       \UniServer\udrive\usr\local\php\zendOptimizer\docs 
       \UniServer\udrive\usr\local\php\zendOptimizer\lib 
       \UniServer\udrive\usr\local\php\zendOptimizer\lib\Optimizer\php-5.2.x

Wenn gewuenscht kann das Readme von "UniServer_Zend_Optimizer_1.0.exe" geloescht werden:

       \UniServer\Read_me.txt

Der Zend Optimizer muss aktiviert werden. Um dies zu bewerkstelligen fuehre folgendes durch. Oeffne das File "php.ini" und fuege folgendes am Ende des Files hinzu:

       \UniServer\udrive\usr\local\php\php.ini 
       
       ------------------ php.ini ------------------
       
       [Zend] 
       zend_extension_ts = /usr/local/php/zendOptimizer/lib/ZendExtensionManager.dll 
       zend_extension_manager.optimizer_ts = /usr/local/php/zendOptimizer/lib/Optimizer 
       zend_optimizer.enable_loader = 1 
       zend_optimizer.optimization_level=15 
       
       
       ; Local Variables:
       ; tab-width: 4
       ; End:
       
       ------------------ php.ini ------------------

Fuehre einen Neustart von Uniform Servers aus. Um die Installation sowie die Aktivierung zu testen gehe zum Admin Panel des Uniform Servers und fuehre den Menuepunkt "phpinfo()" aus. Nun muss unter "phpinfo()" folgendes erscheinen:

       ------------------ output ------------------
       
        This program makes use of the Zend Scripting Language Engine:
        Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
           with eAccelerator v0.9.5.3, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
           with Zend Extension Manager v1.2.0, Copyright (c) 2003-2007, by Zend Technologies
           with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
       
       ------------------ output ------------------

Installation/Konfiguration von UniTray2 Pug-In

UniTray2 ist nichts anderes als ein TrayIcon das gestartet wird um den Uniform Server und seine Komponenten direkt ohne zuerst auf das Admin Panel zuzugreifen zu konfigurieren und einzusehen. Um das Plug-In zu installieren gehe folgendermassen vor:

       http://wiki.uniformserver.com/index.php/4.0-Mona:_UniTray
       
       Download         http://sourceforge.net/project/showfiles.php?group_id=53691&package_id=49448&release_id=677889

Kopiere das File "UniTray_2.0.exe" nach:

       \UniServer\udrive\plugins\

Nun Doppelklicke das File "UniTray_2.0.exe" und installiere dieses dh. das File wird entpackt und a sich das File im \UniServer\udrive\plugins\ Ordner befindet werden alle Files korrekt an den richtigen Ort entpackt (nicht den Pfad veraendern). Nach dem erfolgreichen entpacken kann "UniTray_2.0.exe" geloescht werden. Folgendes wird dem Uniform Server hinzugefuegt:

    \UniServer\udrive\plugins\UniTray2\READ ME.txt                      General information
    \UniServer\udrive\plugins\UniTray2\basic.ini                        Configuration file for UniTray2.exe
    \UniServer\udrive\plugins\UniTray2\root.ini                         Configuration file for UniTray2.exe
    \UniServer\udrive\plugins\UniTray2\service.ini                      Configuration file for UniTray2.exe
    \UniServer\udrive\plugins\UniTray2\UniTrayController1.dat           Image files
    \UniServer\udrive\plugins\UniTray2\UniTrayController2.dat
    \UniServer\udrive\plugins\UniTray2\UniTrayController3.dat
       
    \UniServer\udrive\plugins\UniTray2\Main Folder                      Folder contents to be copied as above
    \UniServer\udrive\plugins\UniTray2\Main Folder\UniTray2.exe         Main program file
    \UniServer\udrive\plugins\UniTray2\Main Folder\Start_UniTray2.bat   Start UniTray
    \UniServer\udrive\plugins\UniTray2\Main Folder\Stop_UniTray2.bat    Option to stop UniTray

Kopiere folgende Files in folgendes Verzeichnis:

       von:
       \UniServer\udrive\plugins\UniTray2\Main Folder\UniTray2.exe
       \UniServer\udrive\plugins\UniTray2\Main Folder\Start_UniTray2.bat 
       \UniServer\udrive\plugins\UniTray2\Main Folder\Stop_UniTray2.bat 
       
       nach:
       \UniServer\UniTray2.exe
       \UniServer\Start_UniTray2.bat 
       \UniServer\Stop_UniTray2.bat

Nun kann das Plug-In gestartet werden unabhaengig davon ob der Uniform Server laeuft oder nicht denn laueft er nicht kann er ueber UniTray2 gestartet werden sowie administriert werden. Sobald das Plug-In gestartet ist erscheint Ihn der Taskbar ein neues Icon das UniTray2 representiert. Ein Klick auf das Icon zeigt die Optionen etc.

Installation/Konfiguration einer zusaetzlichen lokalen IP auf Apache2

In unserem Beispiel hier ist der Uniform Server so konfiguriert das nur Localhost Zugriff hat (127.0.0.1) sowie alle Services nur auf "localhost" (127.0.0.1) hören. Dies bedeutet, dass "alle" Services von Aussen nicht zugaenglich sind. Wird dies jedoch dennoch benoetigt zB fuer den WebServer kann folgendes durchgefuehrt werden:

HINWEIS
In diesem Beispiel wird angenommen das die Lokale Maschinen die IP 192.168.101.34 hat und somit fuer die Services benutzt werden soll.

Oeffne folgendes File Lokal auf dem OS und erstelle einen Host Eintrag:

       c:\WINDOWS\system32\drivers\etc\hosts
       
       --------------- \UniServer\udrive\www\.htaccess --------------- 
       
       # Copyright (c) 1993-1999 Microsoft Corp.
       #
       # Dies ist eine HOSTS-Beispieldatei, die von Microsoft TCP/IP
       # für Windows 2000 verwendet wird.
       #
       # Diese Datei enthält die Zuordnungen der IP-Adressen zu Hostnamen.
       # Jeder Eintrag muss in einer eigenen Zeile stehen. Die IP-
       # Adresse sollte in der ersten Spalte gefolgt vom zugehörigen
       # Hostnamen stehen.
       # Die IP-Adresse und der Hostname müssen durch mindestens ein
       # Leerzeichen getrennt sein.
       #
       # Zusätzliche Kommentare (so wie in dieser Datei) können in
       # einzelnen Zeilen oder hinter dem Computernamen eingefügt werden,
       # aber müssen mit dem Zeichen '#' eingegeben werden.
       #
       # Zum Beispiel:
       #
       #      102.54.94.97     rhino.acme.com          # Quellserver
       #       38.25.63.10     x.acme.com              # x-Clienthost
       
       127.0.0.1             localhost
       127.0.0.1             localhost:80
       192.168.101.34        192.168.101.34:80
       
       --------------- \UniServer\udrive\www\.htaccess ---------------

Nun oeffne auf dem Uniform Server folgendes File und erweitere die entsprechende Position:

       \UniServer\udrive\www\.htaccess
       
       --------------- \UniServer\udrive\www\.htaccess --------------- 
       
       # This file provides security to the server limiting access to the localhost only. 
       # Comment to deactivate.
       
       Order Deny,Allow
       Deny from all
       Allow from 127.0.0.1 192.168.101.34
       
       # To allow execution of cgi scripts in this directory uncomment next two lines.
       
       AddHandler cgi-script .pl .cgi
       Options +ExecCGI +FollowSymLinks
       
       #--
       # Activate this to use the Private Server Feature!
       #--
       # To lock server, uncomment the next 4 lines.
       # Defaults: Username - root; Password - root
       
       #AuthName "Uniform Server - Server Access"
       #AuthType Basic
       #AuthUserFile /htpasswd/www/.htpasswd
       #Require valid-user
       
       --------------- \UniServer\udrive\www\.htaccess ---------------

Erstelle im folgenden Verzeichnis ein Verzeichnis mit dem Namen "download". In diesem Verzeichnis koennen nachtraeglich die Files etc. platziert werden die man runterladen moechte:

       \UniServer\udrive\www\

Nun muss das "httpd.conf" File von Apache2 manipuliert werden. Dies bedeutet wir geben dem Apache2 die Informaiton das er nicht nur auf "localhost" hören soll sondern ebenfalls auf die gewünschte IP sowie weisen wir der gewünschten IP einen Virtuellen Host hinzu:

       \UniServer\udrive\usr\local\apache2\conf\httpd.conf
       
       --------------- \UniServer\udrive\usr\local\apache2\conf\httpd.conf ---------------
            
       #Listen 80
       Listen 127.0.0.1:80
       Listen 192.168.101.34:80
       --------------- \UniServer\udrive\usr\local\apache2\conf\httpd.conf ---------------

Am ende des Files "httpd.conf" fuege folgendes hinzu:

       \UniServer\udrive\usr\local\apache2\conf\httpd.conf
       
       --------------- \UniServer\udrive\usr\local\apache2\conf\httpd.conf ---------------
       
       
       ##########VIRTUAL HOST SETUP##########
       # 192.168.101.34:80
       <VirtualHost *>
       ServerName 192.168.101.34:80
       DocumentRoot /www/download
       </VirtualHost>
       
       --------------- \UniServer\udrive\usr\local\apache2\conf\httpd.conf ---------------

Nun muss der Uniform Server gestoppt sowie neu gestartet werden. Danach kann in einer DOS Box mit netstat ueberprueft werden ob der Apache auf der IP mit dem entsprechenden Port läuft (Port 80):

       netstat.exe -p TCP -n -a| FIND "ABHÖREN" | FIND ":80 "
       
       oder
       
       netstat.exe -p TCP -n -a| FIND "ABHÖREN"

Wenn dem so ist kann nun ein Test-File in das neu erstellte "download" Verzeichnis erstellt werden und dieses ueber einen Browser runtergeladen/angezeigt werden:

       \UniServer\udrive\www\download\test.txt
       
       http://192.168.101.34/text.txt

HINWEIS
Falls der Download/Anzeige ueber den Browser nicht funktioniert jedoch der Server auf der entsprechenden IP/Port hört kontrolliere ob allenfalls lokale Firewalls/VPN Clients den Zugriff verweigern. Einen guten Hinweis liefert das Log von Apache im Admin Pannel oder im folgenden Verzeichnis:

       \UniServer\udrive\usr\local\apache2\logs
       
       oder
       
       http://localhost/apanel

Installation/Konfiguration einer zusaetzlichen lokalen IP auf FileZilla!

Um fuer den FTP Server (FileZilla) ebenfalls eine zusaetzliche IP zu konfigurieren benutze das Admin Tool fuer FileZilla das du im folgendem Verzeichnis findest:

       \UniServer\udrive\filezilla_server\filezilla_server_portable\FileZilla Server Interface.exe

Aktivierung der Sicherheitsfeatures von Uniform Server

Der Uniform Server ist betreffend Konfig per Default zugaenglich ohne Usernamen und Passwort. Wenn man diese Konfig Seiten wie Admin Pannel schuetzen will so kann dies per Aktivierung in den entsprechenden Files erreicht werden. Aktiere im folgenden File folgende Positionen:


       Aktivierung von Username und Passwort fuer "Admin Panel": 
       *********************************************************
       
       \UniServer\udrive\home\admin\www\.htaccess
       
       ------------------ .htaccess ------------------
       
       #--
       # Activate this to use the Admin Panel Feature!
       #--
       # To lock Admin Panel, uncomment the next 4 lines.
       # Defaults: Username - root; Password - root
       
       AuthName "Uniform Server - Admin Panel 2.0"
       AuthType Basic
       AuthUserFile /htpasswd/home/admin/www/.htpasswd
       Require valid-user
       
       ------------------ .htaccess ------------------

Aender Username und Passwort nach der Aktivierung der Positionen ueber:

       http://localhost/apanel/        MenuePosition        "Admin Panel Configuration"

Der neue Username und Passwort wird unverschluesselt abgespeichert in:

       \UniServer\udrive\htpasswd\home\admin\www\.htpasswd
       Aktivierung von Username und Passwort fuer "Private Server":
       ************************************************************
       
       \UniServer\udrive\www\.htaccess
       
       ------------------ .htaccess ------------------
       
       # This file provides security to the server limiting access to the localhost only. 
       # Comment to deactivate.
       
       Order Deny,Allow
       Deny from all
       Allow from 127.0.0.1
       
       #--
       # Activate this to use the Private Server Feature!
       #--
       # To lock server, uncomment the next 4 lines.
       # Defaults: Username - root; Password - root
       
       AuthName "Uniform Server - Server Access"
       AuthType Basic
       AuthUserFile /htpasswd/www/.htpasswd
       Require valid-user
       
       ------------------ .htaccess ------------------

Aender Username und Passwort nach der Aktivierung der Positionen ueber:

       http://localhost/apanel/        MenuePosition        "Private Server Configuration"

Der neue Username und Passwort wird unverschluesselt abgespeichert in:

       \UniServer\udrive\htpasswd\www\.htpasswd
       Aktivierung von Username und Passwort fuer "Private Server":
       ************************************************************
       
       \UniServer\udrive\ssl\.htaccess
       
       ------------------ .htaccess ------------------
       
       # This file provides security to the server limiting access to the localhost only. 
       # Comment to deactivate.
       
       Order Deny,Allow
       Deny from all
       Allow from 127.0.0.1
       
       #--
       # Activate this to use the Private Server Feature!
       #--
       # To lock server, uncomment the next 4 lines.
       # Defaults: Username - root; Password - root
       
       AuthName "Uniform Server - Server Access"
       AuthType Basic
       AuthUserFile /htpasswd/www/.htpasswd
       Require valid-user
       
       ------------------ .htaccess ------------------

Aender Username und Passwort nach der Aktivierung der Positionen ueber:

       http://localhost/apanel/        MenuePosition        "Private Secure Server Config"

Der neue Username und Passwort wird unverschluesselt abgespeichert in:

       \UniServer\udrive\htpasswd\ssl\.htpasswd

PHP laueft per Default nicht im "Safe Mode". Sofern nicht Gebraucht sollte dies aktiviert werden. Aendere dies ueber:

       http://localhost/apanel/        MenuePosition        "PHP Configuration"
       
       Safe Mode:        On

Der Uniform Server muss neu gestartet werden damit die Konfig aktiviert wird. Fuer den Uniform Server kann ein Zertifikat fuer https und andere Dienste generiert werden Um dies auszufuehren gehe folgendermassen vor:

       http://localhost/apanel/        MenuePosition        "Server Certificate and Key Gen"

Klicke auf Generate:

       ------------------ output from Dos Box ------------------
       
        ##############################################################################
        #                                                                            #
        # Uniform Server: Certificate and Key generator                              #
        #                                                                            #
        #----------------------------------------------------------------------------#
        # This script creates and installs a new self-signed certificate and key.    #
        #                                                                            #
        # 1) CN Common Name. Change this to your full domain name e.g. www.fred.com  #
        #    If you do not have a domain name use the default by pressing eneter.    #
        #                                                                            #
        # 2) To change any of the three defaults edit file:                          #
        #    uniform_server/udrive/plugins/key_cert_gen/ssl_gen.pl                   #
        #    search for the edit section and replace accordingly.                    #
        #                                                                            #
        #----------------------------------------------------------------------------#
       
         CN Common Name. Your full domain name [localhost] :
         OU Organization Unit (eg, section)  [Secure demo] : Mydomain Net Localhost
         O  Organization Name (eg, company)    [UniServer] : Mydomain Net
       
        Loading 'screen' into random state - done
       Generating a 1024 bit RSA private key
       ....................++++++
       ..............++++++
       writing new private key to 'server.key'
       -----
       Loading 'screen' into random state - done
       Signature ok
       subject=/O=Mydomain Net/OU=Mydomain Net Localhost/CN=localhost
       Getting Private key
       
        #----------------------------------------------------------------------------#
        # Copying new certificate and key to Server                                  #
        # Location:                                                                  #
        #           Certificate:  usr/local/apache2/conf/ssl.crt/server.crt          #
        #           Key:          usr/local/apache2/conf/ssl.key/server.key          #
        #                                                                            #
        # Certificate Signing Request                                                #
        # Location:                                                                  #
        #           Certificate:  plugins/key_cert_gen/server.csr                    #
        #----------------------------------------------------------------------------#
        #                                                                            #
        # You must now restart the servers to enable the new configuration.          #
        #                                                                            #
        ##############################################################################
       
       Drücken Sie eine beliebige Taste . . .
       
       ------------------ output from Dos Box ------------------

Die Zertifikate werden erstellt und folgendermassen abgelegt:

       Zertifikat:
       ***********
       
       \usr\local\apache2\conf\ssl.crt\server.crt
       Key:
       ****
       
       \usr\local\apache2\conf\ssl.key\server.key

Der Uniform Server muss neu gestartet werden damit die Konfig aktiviert wird. Danach kann der SSL Server getestet werden:

       https://localhost/apanel/

Upgrade Uniform Server 4.20 auf 4.30

Ein Uniform Server auf den neusten Stand zu bringen ist nicht immer einfach. Bei jeder Version muss wieder neu verifiziert werden wie es durchgefuehrt werden kann. Bei der neune Version 4.30 wurden nur Programme wie PHP auf den neusten Stand gebracht. Aus diesem Grund ist dieses Upgrade einfach durchzufuehren. Als Erstes stoppe alle Services des vorhandenen Uniform Servers 4.20. Danach kopiere den gesamten USB Stick/Drive als Sicherung in ein Verzeichnis auf der lokalen Festplatte. Danach lade die neue Version 4.30 runter von folgender Seite:

       Download 	Uniform Server v4.3		http://downloads.sourceforge.net/miniserver/

Doppelklicke nun auf die Datei UniServer4_3.exe. Nach dem Doppelklick auf die Datei muss die Destination angegeben werden.Gebe den USB Stick an. Es erscheint eine Meldung ob die vorhandenen Dateien etc. ueberschrieben werden sollen. Gebe an "Yes All". Sobald die Installation abgeschlossen ist fuehre folgendes durch:

       Kopiere folgende Files/Verzeichnisse vom lokalem Festplatten Backup
       UniformServer 4.2 nach neuer UniformServer 4.3 Installation:
       
       \Uniform Server\udrive\usr\local\Apache2\conf\httpd.conf
       \Uniform Server\udrive\usr\local\Apache2\conf\ssl.conf
       \Uniform Server\udrive\usr\local\Apache2\conf\ssl.crt
       \Uniform Server\udrive\usr\local\Apache2\conf\ssl.key
       
       \UniServer\udrive\usr\local\mysql\my
       
       \UniServer\Server_Start.bat
       \UniServer\Stop.bat
       
       \UniServer\udrive\usb_server_start.bat
       \UniServer\udrive\usb_server_stop.bat
       
       \UniServer\udrive\htpasswd\awstats
       \UniServer\udrive\htpasswd\home
       \UniServer\udrive\htpasswd\ssl
       \UniServer\udrive\htpasswd\www
       
       \UniServer\udrive\usr\local\php\php.ini 
       
       \UniServer\udrive\home\admin\www\.htaccess
       \UniServer\udrive\www\.htaccess
       \UniServer\udrive\ssl\.htaccess
       
       \Uniform Server\udrive\usr\local\mysql\data\mysql
       \Uniform Server\udrive\usr\local\mysql\data\wikidb

Starte den Server und setze im Admin Panel das User "root" Passwort fuer MySQL:

       http://localhost/apanel/		> MySQL Server Configuration
       
       Stoppe den Uniform Server
       Starte den Uniform Server

Jetzt sollten alle Services inkl. Wiki wieder erreichbar sein.

ACHTUNG
Wenn es zu Problemen kommt beim MySQL Server Passwort restore (recover) dieses im Admin Panel (zuruecksetzen auf Passwort "root". Wenn dies durchgefuehrt wird muss nachtraeglich wieder das alte Passwort fuer MySQL DB User root gesetzt werden. Auch hier muss der MySQL Server gestoppt sowie neu gestartet werden.