Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 973
  • Last Modified:

Joomla upgrade 1.5.25 - 2.5 broke site

Recently I have decided to upgrade my existing Joomla 1.5.25 website to the newest version of Joomla 2.5. Following the documentation on Joomla's website to complete the migration to 2.5, I made a sandbox environment for to test the upgrade. Essentially what I mean by this is I copied all the files in the httpdocs folder to a new location, then copied all the tables (including contents) from the database it was using to a new database, and allowed the same user/pass combination all privileges on that new database. Then I made sure this new sandbox site was working and independent of the live site, which it was. I enabled the mootools plugin, and downloaded/installed the latest version of jupgrade. Changed the parameters of jupgrade to fit those of the sandbox site, and upgraded.

Jupgrade completed successfully, but when I go to visit the upgraded sandbox site, the generic template loads and gives a 404 complaining about a component not being found. I'm not real sure what to do to fix this, as I'm not sure which component it can't find, it seemingly has broken the site. Also I installed the same template (only the version for J2.5) we used on Joomla 1.5.25 (which is rocket theme's hivemind) and switching this to be the default results in an all around 404 message from Joomla as if the page doesn't exist.

The sandbox site that runs Joomla 1.5.25 is located at: http://www.couponerpro.com/
It's 2.5 upgraded counterpart is located at: http://www.couponerpro.com/jupgrade/
Does anyone know what may have caused jupgrade to break our site?
0
ruavol2
Asked:
ruavol2
  • 8
  • 7
4 Solutions
 
Rowby GorenCommented:
Can you look at your configuration.php file (in the root directory) and see   what it says regarding "live site"

And double check your .htaccess file (also in the root) to check any urls that may be in that file.

I see that you are using user friendly urls.  Are they set up with or without "Use URL rewriting"  -- in your joomla Control Panel Global Configuration section.

Also, are you using SH404sef?

Rowby
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
Offline is set to 0 which is what I assume you meant by live site.

I went ahead and turned off sef urls just now to make sure that wasn't causing any problems. Also all url rewriting options are turned off as seen below:
public $sef = '0';
public $sef_rewrite = '0';
public $sef_suffix = '0';

Open in new window


Also the .htaccess file is missing in the root folder for the Joomla 2.5 install, but I don't imagine this will cause a problem since we aren't using sef urls, or mod rewrite.
0
 
Rowby GorenCommented:
In your configuration.php file what do you have on this line:


      public $live_site = 'http://www.yoursitenamee.com';

And confirm that you are not using the third party component: SH404sef
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
Rowby GorenCommented:
Looking at your earlier comment, I am thinking you do need the .htaccess file.  

Are you sure it's not there?  On some hosting environments it is "invisible".

Also if there is an "invisible" .htaccess file that could possibly be causing the problem if there is anything written in it that might point to a different url.....????
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
As mentioned earlier there is no .htaccess file in this directory:
cat .htaccess
cat: .htaccess: No such file or directory

Open in new window


The live_site variable has nothing, but I'm not sure what it should have either... perhaps http://www.couponerpro.com?
cat configuration.php | grep -i \$live_site
	public $live_site = '';

Open in new window


And I've never heard of the sh404sef component you are referring to, but with some googling I found out it is a joomla component? Anyway this should confirm we aren't using it for you:
ls components
com_banners  com_finder  com_media	com_users     index.html
com_contact  com_k2	 com_newsfeeds	com_weblinks
com_content  com_mailto  com_search	com_wrapper

Open in new window

0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
Hmm it would seem someone had meddled with our php version (this is a shared hosting account and they give you the option to use either php 4.x, 5.2.x, or 5.4.0). Obviously only 5.4.0 will support the new Joomla 2.5 which requires at least php 5.3.x. So anyway I reverted our php version back to 5.4.0, as it had been previously. Now I get a connection problem so I wrote a short php script to print out the mysql error that it encounters when connecting, this is the error given:
Failed mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password'). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file

Open in new window


So following it's lead I logged in as admin on the mysql server it is using and executed the following command (replacing the xxx's with the appropriate user/host/pass):
set password for 'xxx'@'xxx' = password('xxx');

Open in new window

which executed successfully. Retried the page and got the same error... now I'm confused as to why this didn't fix the problem.

Anyway the mysql database is remote to the server handling the website, but the user/host for the website end has been granted all privileges on the mysql database in use. Here's the version info for the mysql database though:
mysql --version
mysql  Ver 14.12 Distrib 5.0.77, for redhat-linux-gnu (x86_64) using readline 5.1

Open in new window


Not real sure what's gone wrong
0
 
Rowby GorenCommented:
Shouldn't the live site variable include the subdirectory?


http://www.couponerpro.com/jupgrade/
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
Perhaps it should, but seeing as how I'm not having database issues, I can't verify that.
0
 
Rowby GorenCommented:
Also, in your configuration.php file make sure the correct info is here:


public $host = 'localhost OR WHATEVER';
      public $user = 'yourdatabase username;
      public $password = 'your username passowrd';
      public $db = 'your databasename';
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
yes I've verified all the database stuff many times over since this occurred. Like I said this didn't occur until I changed the php version in use to 5.4.0. Before this the same database information worked perfectly.
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
To see the mysql error I'm referring to for yourself simply visit:
http://www.couponerpro.com/jupgrade/test.php

line 2 that it refers to as having a problem with is a simple call to mysql_connect ('server', 'user', 'pass'); that all match those given in the configuration.php.
0
 
Rowby GorenCommented:
Here's a thread that might or might not help.
http://forum.joomla.org/viewtopic.php?f=429&t=310575

Also
Have you thought of creating a new database with a new password....and then importing your mysql into that???  And then manually entering the new database  info into configuration.php?

Also, the error message indicates that the system does not like the "less secure" authentication.   And wants and more secure, hash value in mysql user..... (But I assume you know that.).  

P..S.  If there are any lurkers here, don't hesitate to jump in!
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
I followed that post's solution and created a brand new user, but this time specifying the user's password as a hash:
create user 'xxx'@'xxx' identified by password 'xxxhash';
grant all on xxx.* to 'xxx'@'xxx' identified by password 'xxxhash';

Open in new window


those returned fine with no errors. Went back to the configuration.php and changed it to match but replacing the password hash with the actual password.... Same error. No fix yet.
0
 
Rowby GorenCommented:
Could this issue be related to the version of mysql?    You might want to

1)  Contact 1&1 support (i think that is your host?)
and/or
2)  Post this error on the Experts-Exchange Mysql section.

Rowby
0
 
ruavol2Tableau Trainer & Consultant Sales Exec.Author Commented:
Thanks for the tips sir.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

  • 8
  • 7
Tackle projects and never again get stuck behind a technical roadblock.
Join Now