Handle HTTPS when running jobs asynchronously
authorCindy Cicalese <cicalese@mitre.org>
Mon, 14 Mar 2016 16:04:40 +0000 (12:04 -0400)
committerCindy Cicalese <cicalese@mitre.org>
Mon, 14 Mar 2016 16:08:09 +0000 (12:08 -0400)
Bug: T107290
Change-Id: Ie9af0e38c44c4097f25e701fc6a9a47a00f25d88

includes/MediaWiki.php

index 45a1385..5b7e151 100644 (file)
@@ -830,9 +830,18 @@ class MediaWiki {
                $errno = $errstr = null;
                $info = wfParseUrl( $this->config->get( 'Server' ) );
                MediaWiki\suppressWarnings();
+               $host = $info['host'];
+               $port = 80;
+               if ( isset( $info['scheme'] ) && $info['scheme'] == 'https' ) {
+                       $host = "tls://" . $host;
+                       $port = 443;
+               }
+               if ( isset( $info['port'] ) ) {
+                       $port = $info['port'];
+               }
                $sock = fsockopen(
-                       $info['host'],
-                       isset( $info['port'] ) ? $info['port'] : 80,
+                       $host,
+                       $port,
                        $errno,
                        $errstr,
                        // If it takes more than 100ms to connect to ourselves there