Jump to content

Topic on Project:Support desk

Permitted File Types Issue 1.17 Upgrade

7
152.121.19.253 (talkcontribs)

MediaWiki 1.17.0

PHP 5.2.17 (cgi-fcgi)

MySQL 5.1.46-community

Hi all,

Recently upgraded to 1.17 and have an issue now where when I goto Uploads the permitted file types are missing.

Permitted file types: . 

I commented out $wgFileExtensions in LocalSettings.php but that didn't set it to the defaults which are defined in defaultsettings.php. I upgraded from MW 1.16.0 and file uploads were working fine before the upgrade.

Suggestions?

Emufarmers (talkcontribs)

We need to see the rest of your LocalSettings.php file (minus passwords). What's the URL for your site?

152.121.19.253 (talkcontribs)

My site is on my companies local intranet. Should I go ahead and post the whole localsettings.php(sans passwords) here?

Emufarmers (talkcontribs)

Yes. Remove hostnames and such if they're sensitive.

152.121.19.253 (talkcontribs)

Ok here it is. FileExtensions are at the bottom.

 <?php
# This file was automatically generated by the MediaWiki 1.17.0
# 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

# Protect against web entry
if ( !defined( 'MEDIAWIKI' ) ) {
	exit;
}

## Uncomment this to disable output compression
# $wgDisableOutputCompression = true;

$wgSitename      = "Removed";
$wgMetaNamespace = "Removed";

## 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       = "";
$wgScriptExtension  = ".php";

## The relative URL path to the skins directory
$wgStylePath        = "$wgScriptPath/skins";

## The relative URL path to the logo.  Make sure you change this from the default,
## or else you'll overwrite your logo when you upgrade!
$wgLogo = "logo.png";

## UPO means: this is also a user preference option

$wgEnableEmail      = true;
$wgEnableUserEmail  = false; # UPO

$wgEmergencyContact = "removed";
$wgPasswordSender   = "removed";

$wgEnotifUserTalk      = false; # UPO
$wgEnotifWatchlist     = false; # UPO
$wgEmailAuthentication = false;

## Database settings
$wgDBtype           = "mysql";
$wgDBserver         = "localhost";
$wgDBname           = "removed";
$wgDBuser           = "removed";
$wgDBpassword       = "removed";

# 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";

# InstantCommons allows wiki to use images from http://commons.wikimedia.org
$wgUseInstantCommons  = false;

## 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.utf8";

## 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;

## Set $wgCacheDirectory to a writable directory on the web server
## to make your wiki go slightly faster. The directory should not
## be publically accessible from the web.
#$wgCacheDirectory = "$IP/cache";

# Site language code, should be one of ./languages/Language(.*).php
$wgLanguageCode = "en";

$wgSecretKey = "removed";

# Site upgrade key. Must be set to a string (default provided) to turn on the
# web installer while LocalSettings.php is in place
$wgUpgradeKey = "removed";

## Default skin: you can change the default skin. Use the internal symbolic
## names, ie 'standard', 'nostalgia', 'cologneblue', 'monobook', 'vector':
$wgDefaultSkin = "vector";

## 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

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

# The following permissions were set based on your choice in the installer
$wgGroupPermissions['*']['edit'] = false;


# Query string length limit for ResourceLoader. You should only set this if
# your web server has a query string length limit (then set it to that limit),
# or if you have suhosin.get.max_value_length set in php.ini (then set it to
# that value)
$wgResourceLoaderMaxQueryLength = -1;

# Enabled Extensions. Most extensions are enabled by including the base extension file here
# but check specific extension documentation for more details
# The following extensions were automatically enabled:
require( "extensions/ConfirmAccount/ConfirmAccount.php" );
require( "extensions/ParserFunctions/ParserFunctions.php" );
require( "extensions/Sort/Sort.php" );
#require( "extensions/StringFunctions/StringFunctions.php" );
require( "extensions/UserMerge/UserMerge.php" );
require( "extensions/WikiEditor/WikiEditor.php" );
include("extensions/anywebsite.php");

# End of automatically generated settings.
# Add more configuration options below.

$wgLocaltimezone = "America/Los_Angeles";
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
# Versions before 1.7.0 used $wgLocalTZoffset as hours.
# After 1.7.0 offset as minutes
$wgLocalTZoffset = date("Z") / 60;
putenv("TZ=$oldtz");

## Confirm Account Extension settings

$wgAccountRequestExtraInfo = false;
$wgAllowAccountRequestFiles = false;
$wgAccountRequestToS = false;
$wgAccountRequestMinWords = 0;

## Usermerge extension settings

require_once( "$IP/extensions/UserMerge/UserMerge.php" ); $wgGroupPermissions['bureaucrat']['usermerge'] = true; 
$wgUserMergeUnmergeable = array( 'sysop');

## Some other settings
array_push($wgUrlProtocols, "file://");
$wgPFEnableStringFunctions = true;

## File Types

$wgFileExtensions = array_merge($wgFileExtensions, array('png', 'gif', 'jpg', 'jpeg', 'doc', 'xls', 'pdf', 'ppt', 'tiff', 'bmp', 'docx', 'xlsx', 'pptx', 'zip', 'vsd', 'txt'));

$wgFileBlacklist = array_diff( $wgFileBlacklist, 'zip' );
$wgMimeTypeBlacklist = array_diff( $wgMimeTypeBlacklist, 'application/zip');

## Manual Uploads/Images Directory Settings

$wgUploadPath = "/wiki_images";
$wgUploadDirectory = "d:\images";

152.121.19.253 (talkcontribs)

Found the issue. Turns out this line causes my problem:

$wgFileBlacklist = array_diff( $wgFileBlacklist, 'zip' );

Still not sure whats wrong with this line though.

Edit: Turns out zip files are no longer blacklisted.

Emufarmers (talkcontribs)

A few things: array_diff requires that both arguments be arrays. The instructions you were following (which, um, I wrote) make the second argument a string.

In r79693 I made it so that $wgFileExtensions now overrides $wgFileBlacklist. $wgMimeTypeBlacklist will still prevent you from uploading zip files, though, so what you'll want there is $wgMimeTypeBlacklist = array_diff( $wgMimeTypeBlacklist, array( 'application/zip' ) );

Reply to "Permitted File Types Issue 1.17 Upgrade"