User:Mainframe98/Sandbox

The goal of this guide is to give some a quick and easy way to install MediaWiki on a Windows Server 2016 environment.

Requirements
The following items will be required:
 * Administrative access to the Windows Server 2016 server
 * PHP non-thread safe zip (Available here.)
 * MySQL installer (The file mysql-[version]-winx64.msi should be available here.)
 * MediaWiki archive (The file mediawiki-[version].tar.gz should be available here.)
 * 7-Zip or your favorite decompression utility to extract MediaWiki
 * A Visual C++ Redistributable for Visual Studio, the required version is noted on the PHP download page. (Available here.)

Internet Information Services (IIS)
To install IIS follow the steps below:
 * 1) Open Server Manager, select Roles.
 * 2) Add the Web Server role and include the following:
 * Common HTTP Features -> HTTP Redirection
 * Application Development -> CGI.
 * 1) Open Internet Explorer and access http://localhost, it should bring up the IIS10 splash page.

Set Default Document
Set default document to index.php.
 * 1) Open the Internet Information Services (IIS) Manager, select the server name from the list.
 * 2) Select the Default Document, highlight index.php and choose Move Up from the Actions side panel until index.php is at the top.

Adding PHP as FastCGI application
Instructions from php.net, that page also contains a visual guide.
 * 1) Open Handle Mappings
 * 2) Select Add Module Mapping... in the Actions pane.
 * 3) Add *.php as Request path.
 * 4) Choose FastCgiModule as Module from the drop down list.
 * 5) Add the path to the php-cgi.exe file in the Executable field. (C:\PHP\php-cgi.exe in this example)
 * 6) Add PHP_via_FastCGI as name.
 * 7) Open the Request Restrictions menu and select File or folder.

PHP
To install PHP follow the steps below:
 * 1) Extract the PHP zip into to a location of your choice. In this example C:\PHP is ud
 * 2) Create the php.ini file by opening the php.ini-production file and saving it as php.ini.
 * 3) Open your C:\PHP\php.ini file in Notepad and uncomment the values below by removing the semi colon symbol . The following recommendations are from php.net.
 * 4) cgi.fix_pathinfo = 1
 * 5) fastcgi.impersonate = 1
 * 6) cgi.force_redirect = 0
 * 7) fastcgi.logging = 0
 * 8) extension=php_mysqli.dll
 * 9) In the same file, change the path for   to the location of the extension folder. (In this example: extension_dir = "c:\PHP\ext")
 * 10) Edit permissions on the images directory of the MediaWiki installation and add IUSR with modify privileges.
 * 11) Edit permissions on the temp directory of windows (C:\Windows\Temp) and add IUSR with modify privileges.
 * 12) Create a file called C:\inetpub\wwwroot\phpinfo.php, include the lines below.
 * 13) Open Edge and access http://localhost/phpinfo.php, it should bring up a PHP information page.

Contents of file PHPInfo.php



Current Identity :  

Enable PHP Caching (Optional)

 * Currently not supported.

MySQL

 * To be finished

To install MySQL follow the steps below:
 * 1) Launch the installer, select Typical settings.
 * 2) After installation you will be prompted to run the MySQL Server Instance Configuration Wizard.
 * 3) Select Detailed Configuration, then click Next.
 * 4) Select Server Machine, then click Next.
 * 5) Select Multifunctional Database, then click Next.
 * 6) Select the database path, then click Next.
 * 7) Select Decision Support (DSS)/OLAP, then click Next.
 * 8) Confirm Enable TCP/IP Networking, Add firewall exception for this port and Enable Strict Mode are checked, then click Next.
 * 9) Select Standard Character Set, then click Next.
 * 10) Confirm Install as Windows Service is checked, then click Next.
 * 11) Enter in root password, then click Next.

MediaWiki
To install MediaWiki follow the steps below:
 * 1) Extract the media wiki archive into C:\inetpub\wwwroot\mediawiki directory.
 * 2) If you have just one .tar file, extract that file into the C:\inetpub\wwwroot\mediawiki directory.
 * 3) If you want MediaWiki to be the default website follow the optional instructions below.
 * 4) Configure MediaWiki by accessing the configuration URL.
 * 5) Follow guide for using the configuration script.  Ignore the GNU diff3 not found error.

Create specific IIS website for MediaWiki (Optional)
Configure MediaWiki as the default website for a host name or an IP address.
 * 1) Select a name for the web site.
 * 2) Rename the C:\inetpub\wwwroot\mediawiki folder to C:\inetpub\wwwroot\[web site name].
 * 3) Open the Internet Information Services (IIS) Manager, open the server name from the list.
 * 4) Right click on Sites and choose Add Web Site....
 * 5) Enter the web site name in the Site Name field.
 * 6) Change the physical directory to C:\inetpub\wwwroot\[web site name].
 * 7) Add a host name for your website or select an IP address.
 * 8) Click OK to create the web site.

GNU diff3 Installation (Optional)
Install GNU diff3 files.
 * 1) Create directory GnuWin in C:\Program Files (x86).
 * 2) Navigate to DiffUtils website.
 * 3) Download the file diffutils-2.8.7-1-bin.zip.
 * 4) Extract to the C:\Temp directory.
 * 5) Copy the bin directory to C:\Program Files (x86)\GnuWin.
 * 6) Navigate to File website.
 * 7) Download the file file-5.03-bin.zip.
 * 8) Extract to the C:\Temp directory.
 * 9) Copy the bin directory to C:\Program Files (x86)\GnuWin.
 * 10) Update the LocalSettings.php located in C:\inetpub\wwwroot\[media wiki name].

Original LocalSettings.php

$wgDiff3 = "";
 * 1) Path to the GNU diff3 utility. Used for conflict resolution.

Updated LocalSettings.php

$wgDiff3 = "C:/Program Files (x86)/GnuWin/bin/diff3.exe"; $wgMimeDetectorCommand = "C:/Program Files (x86)/GnuWin/bin/file.exe -bi";
 * 1) Path to the GNU diff3 utility. Used for conflict resolution.
 * 1) Use external mime detector