WebSecurity Italy Logo
  • WP PLUGINS
    • FaceBook Image Fix v0.4.3
    • wp-users-page
  • Staff
  • Job
  • Contacts
RSS WebSecurity Italy su Google WebSecurity Italy su Scoop.it WebSecurity Italy on Twitter WebSecurity Italy on Facebook WebSecurity Italy on Google+
  • Home
  • News
  • Sicurezza
  • Mobile
  • Seo&Social
  • Tips&Tricks
  • Video Geek
  • Crack Tools
    • Alice Wpa Calculator OnLine
    • Fastweb Wpa Calculator OnLine
    • MD5 Encrypt / Decrypt

Ads

Translator

Social Connection

Segui @capn3m0
Seguicisu Capn3m0 WebSecurity su Google+
Seguicisu Capn3m0 WebSecurity su Google Currents

Ultime Notizie

  • Keylogger: cosa sono e come difendersi Keylogger: cosa sono e come difendersi 18 giugno 2013 17:49
  • Tecnologia e connettività dentro e fuori l’Italia Tecnologia e connettività dentro e fuori l’Italia 17 giugno 2013 13:38
  • La guerra di Kim Dotcom La guerra di Kim Dotcom 17 giugno 2013 09:30
  • MajesticSEO rende gratuito Site Explorer! MajesticSEO rende gratuito Site Explorer! 14 giugno 2013 18:17

Tag Cloud

android anonymous app apple Browser censura cina copyright cupertino exploit facebook Google google glass hacker hacking ios ipad iphone iphone 5 joomla kim dotcom malware mega megaupload Microsoft mobile mountain-view novità privacy samsung seo Sicurezza sicurezza informatica sistema-operativo smartphone social social network tablet torrent twitter vulnerabilità windows windows 8 wordpress youtube

Meta

  • Registrati
  • Collegati
  • Voce RSS
  • RSS dei commenti
  • WordPress.org

[RAW FIX] – VIRTUEMART – Errore 500 nell’upload immagini

Tips&Tricks — scritto da capn3m0 il 9 marzo 2009 16:33

Anche in questa occasione ciò che pubblico non è una vera e propria Fix ma un modo “rudimentale” per aggirare il problema e garantire il funzionamento dell’applicativo.

In questo caso parliamo del componente “Virtuemart” di Joomla che consente di trasformare il Cms in un negozio on line. In alcuni Hosting a causa della configurazione del “Timeout CGI” impostato in Apache possono verificarsi errori “500 Internal Server Error” in occasione dell’aggiunta di nuove immagini per un prodotto.

Questo perché quando si carica l’interfaccia di upload il Virtuemart esegue un check su tutti i file e cartelle della cartella predefinita delle immagini. Se, quindi, sono presenti numerosi file lo script non riesce a terminare in tempo la verifica di ogni singolo file andando in errore di “Timeout CGI”.

Nel mio attuale Hosting tale Timeout è impostato a 60 secondi e, quindi, ho provveduto ad editare direttamente il codice sorgente del Virtuemart per fare in modo che non esegua tale verifica indipendentemente da quanti file son presenti nella cartella predefinita.

Per fare ciò è necessario aprire il file “product.file_form.php” presente nella path:

<root_di_Joomla>/administrator/components/com_virtuemart/html/

e successivamente posizionarsi alla Riga 105 che apparirà come segue:


$downloadRootFiles = vmReadDirectory(DOWNLOADROOT, '.', true);

e modificarla variando il parametro da “true” a “false” come di seguito:

$downloadRootFiles = vmReadDirectory(DOWNLOADROOT, '.', false);

In questo modo il problema dell’error “500 Internal Server Error” in fase di upload dei file sarà risolto.

Tengo a precisare che la versione del Virtuemart su cui ho eseguito tali modifiche è la 1.1.3.

Resto a disposizione per qualsiasi chiarimento o qualora dopo tali modifiche si riscontrino altri generi di problematiche.

[11/03/2009 - 00.40] AGGIORNAMENTO #1: Ho fatto delle verifiche per validare il perché di tale modifica e vi riporto direttamente il codice dell’intera funzione “vmReadDirectory” presa dal file originale “ps_main.php“:

/**
* Utility function to read the files in a directory
* @param string The file system path
* @param string A filter for the names
* @param boolean Recurse search into sub-directories
* @param boolean True if to prepend the full path to the file name
*/
function vmReadDirectory( $path, $filter='.', $recurse=false, $fullpath=false  ) {
	$arr = array();
	if (!@is_dir( $path )) {
		return $arr;
	}
	$handle = opendir( $path );
 
	while ($file = readdir($handle)) {
		$dir = vmPathName( $path.'/'.$file, false );
		$isDir = is_dir( $dir );
		if (($file != ".") &amp;&amp; ($file != "..")) {
			if (preg_match( "/$filter/", $file )) {
				if ($fullpath) {
					$arr[] = trim( vmPathName( $path.'/'.$file, false ) );
				} else {
					$arr[] = trim( $file );
				}
			}
			if ($recurse &amp;&amp; $isDir) {
				$arr2 = vmReadDirectory( $dir, $filter, $recurse, $fullpath );
				$arr = array_merge( $arr, $arr2 );
			}
		}
	}
	closedir($handle);
	asort($arr);
	return $arr;
}

Come spiegato nei commenti della funzione stessa l’impostare su “false” il 3° parametro disabilita la ricorsione evitando che il check dei file venga effettuato anche nelle sottocartelle generando l’errore di Timeout (Timeout CGI = 60 sec; max_execution_time = 120).

Articoli che potrebbero interessarti:

Joomla su Kickstarter per creazione di API mo...
Joomla: Pizza, Bugs and Fun
WordPress e Joomla: iframe malevoli in aument...
Joomla Day 2012: a Torino la 5a edizione
  • Pingback: [RAW FIX] - JOOMLA - Errore 500 in "Gestione Media" (com_media) | capn3m0.org - Web&Security

  • paranella

    Grazie fratello!

capn3m0

Site Facebook Google+Segui @capn3m0
(administrator)
Sono un geek /nerd classe '83, innamorato dell'informatica dall'età di 7. Appassionato del Web, dei linguaggi di programmazione e di sicurezza informatica. Nel 2007 ho creato questo sito per raccogliere tutto ciò che apprendo giorno dopo giorno nelle mie esperienze con il mondo informatico.

315 16

Pingback/Trackback

    21 October 2009 at 10:10pm
    [...] 2008 Articoli correlati[RAW FIX] - VIRTUEMART - Errore 500 nell'upload ...
  • [RAW FIX] - JOOMLA - Errore 500 in "Gestione Media" (com_media) | capn3m0.org - Web&Security
Tags: error 500 internal server error, internal server error, joomla, virtuemart

Subscribe to RSS Iscriviti al Feed RSS

Oppure lascia la tua email per essere sempre aggiornato con le ultime notizie.

© Copyright 2008-2013 — WebSecurity IT. All Rights Reserved. | Hosted by WpSEO - Hosting WordPress Power
Il Bloggatore Paperblog : le migliori informazioni in diretta dai blog Segnala a Zazoom - Blog Directory
Tweet