Support

Site Restoration

#27498 Site Transfer Wizard, Kickstart does not transfer to existing Joomla install

Posted in ‘Site restoration’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

PHP version
n/a
CMS Type
Other
CMS Version
n/a
Backup Tool Version
n/a
Kickstart version
n/a

Latest post by on Saturday, 13 May 2017 17:17 CDT

MJLWebster
 Hi. A few weeks ago I asked this question: #26854 – Moving site - Kickstart or Site Transfer Wizard or?
And didn't fully understand the answer. Because of "stuff" I haven't had time to return to this until now. Getting XAMPP properly configured took ages.
I know this support section says don't post during weekends but I have spent 3 - 5 hours on this today so need to get it down when fresh - if I wait until Monday, I'll have to start again.

Anyhow. Here is the situation, I have three versions of my site

a. Live (effectively a manual copy of dev1) on a known good Joomla friendly host
b. dev1 - on a working but not very well configured version of XAMPP/Joomla on PC1 - one of my PCs on local network
c. dev2 - a properly configured fresh install of XAMPP / Joomla using vhosts (I will be building more than one site) on PC2 - another PC on local network

What I am trying to achieve, ultimately, is so that I can dev and write and tweak stuff on dev 2, and when happy with it, upload to Live. So, I thought, better test first to see if you can get dev1 copied across to dev 2. Live and dev1 have the desired content, template, users. dev 2 only has sample data as done during original joomla install.

I used the manual method of Site Transfer Wizard and watched the video first. I then re watched the video, pausing step-by-step to follow instructions. I simply used Windows File Manager to copy the backup jpa and kickstart.php from PC1 to C:/xampp/vhosts/site/htdocs folder

After changing the name of kickstart.php (not mentioned in the video but required) it went through Select a backup archive, found the right one, did stuff and then instead of doing what the video said and going to Pre-installation check, went straight to "Congratulations! Joomla! is now installed" screen.

Both the Site and the Administrator site are the unchanged content / template / modules etc from dev2 and not the site from dev1.

I am now baffled and going to do something else for the rest of the weekend.

Should I install Akeeba Backup on dev2 and restore a backup from dev1 (remember they are on different php versions)?

So far I have been unable to find any way of developing a joomla site offline and then uploading updates to the live site. All I can do is to dev on the offline dev PC, write down everything I do, get it looking nice with the right content and then repeat the whole thing manually on the Live site. Which is very very boring. Never had this issue with Dreamweaver :) get offline right then sync it and Robert is the relative of your choice. There must be something I'm not grokking yet with the Joomla environment.

Your advice will, as always, be appreciated and followed assiduously. Thanks.

nicholas
Akeeba Staff
Manager
Don't worry for posting here on a weekend. We only have that notice up because we don't reply on weekends and we don't want to give the wrong impression that we don't care about your tickets. We just need some rest to let us work our regular 10 to 12 hour days on weekdays ;)

I see that Ticket 26854 was mostly focusing on how to get that site transferred. You were not given the reason of why the Site Transfer Wizard (I'll abbreviate it as STW from now on) didn't work for you.

STW is designed to transfer a site to a new location or server. In order to do that it expects that the target location is completely empty of anything that looks like another site. This is done for two reasons. First and foremost, the most common mistake people make when transferring a site is that they inadvertently transfer it on top of another, existing site they didn't mean to delete / replace. Of course this results to a total disaster which cannot be reverted (unless they had a backup). Even though this is 100% the user's fault we were getting all the blame and a bad reputation so we took measures for this not to happen.

The other reason is that depending on what you already have there you might get conflicts. For example, if you try to restore Joomla! 3.6 on top of Joomla! 2.5 (surprisingly not uncommon) you'll end up with a botched site that doesn't work. That's down to how Joomla! itself works. Furthermore, some .htaccess or php.ini / .user.ini settings could cause the helper script being uploaded to the site to facilitate the process malfunction, leading to a failure. So, again, if we detect an existing site we won't let you proceed.

Unless, of course, you click the Big Scary Red Button which tells Akeeba Backup that you really know what you are doing and you really want to transfer a site on top of an existing one (in which case if it breaks you get to keep both pieces without complaining). In your case you can totally use that since you're overwriting a slightly older version of the site with a new one.

Now that we clarified this, let's go to your specific questions.

After changing the name of kickstart.php (not mentioned in the video but required)


Only if you are using Akeeba Kickstart Professional which is only required if you want to transfer files from Amazon S3. In all other cases you can simply use Akeeba Kickstart Core which does not require renaming anything. That's why renaming is not mentioned in the video.

instead of doing what the video said and going to Pre-installation check, went straight to "Congratulations! Joomla! is now installed" screen.


This cannot happen because, quite simply put, there is no such page in ANGIE. What seems to be going on here is that you have a caching proxy or CDN in front of your site. You will need to disable it while restoring or, more correctly, flush it THREE times: before restoring, right after the extraction is complete (before you run the installer) and after the installer tells you that it's done. Otherwise you are going to see cached, static versions of the pages and the installer never runs. Of course if that happens you end up with an unconfigured site so everything else you say makes perfect sense: you never run the installer.

FWIW your local site (XAMPP) won't have this kind of cache in front of it. Try restoring there to see what I mean.

Finally, some browsers (Chrome, Opera, Safari) tend to cache redirections. This can get in your way. Before starting a restoration or a site transfer you should completely quit the browser (close all Windows and, if you have a macOS computer, use CMD-Q to completely exit the browser application). This tells the browser to "forget" redirections. I know it's VERY annoying but there is no way to control this! Chrome started doing this since version 4 (and now it's in version 57). Possibly the only thing you can do is use Firefox Developer Edition which disables all sorts of consumer-grade "helpers" which simply get into the way of web professionals like you and I.

So far I have been unable to find any way of developing a joomla site offline and then uploading updates to the live site. All I can do is to dev on the offline dev PC, write down everything I do, get it looking nice with the right content and then repeat the whole thing manually on the Live site.


Many have tried to create a real dev - staging - live solution for Joomla! but, frankly, this is just not possible unless you are only interested in very basic things. The whole problem is that everything is interconnected in Joomla! through the ACL and UCM systems. Adding an article on the live site has a direct impact on transferring the permissions of modules and extensions from the staging site. If you want to have a dev - staging - live workflow you have to be very religious on NOT making any changes in the live site. Which is kinda dumb on most sites since you want users to make changes. For example, if you don't use a cache and you rely on the hit counter then you expect that the articles will get updated (with the new hit counter) every time they are viewed. The dev - staging - live ends up having a limited potential.

Not that it's useless. We do use it on our own site, but in moderation. We use partial backups whenever we change something substantial on the site, e.g. when we completely overhauled the Support section which involved changing menus, adding modules, installing and updating extensions and changing content. The key to this process was that anything added to the live site was (manually) added back to the dev site to prevent the content and permissions from getting out of sync. This let us refactor the entire Support section, essentially restructuring the site, with a grand total of 1 minute 40 seconds of downtime (and a week of full time intense testing to minimize that time and any potential impact it might have had on our site).

When we need to add a new news articles we start by publishing an article with its Access set to Special so only us can see it, in the frontend of the site, in context with the rest of the page. Once it's formatted as we want we switch the Access to Public. This doesn't work on my blog where publishing an article in a specific Category results in Tweets and Facebook posts. So there I have to use a category with its access set to Special to format my article, then copy paste it into a new article in the correct Category. Even though it sounds inconvenient, it's actually more efficient in my use case. Remember, when I publish a blog item I want to send out tweets (with Open Graph content) and Facebook posts (with Instant Article content) and the only way to do that is if these items originate from my live domain. Doing a staging to live transfer would require inventing some complicated way to send the social media posts which becomes too convoluted too fast.

So I can see where you come from, but there is a quantum leap between static HTML (Dreamweaver) and dynamic content managed by a CMS (Joomla!). If you only ever use Joomla! as a glorified DreamWeaver you are using the wrong tool for the task. Perhaps you want a flat file, database-free CMS like Grav instead, something that combines the fine-grained control of static content with a modicum of CMS amenities like navigation generation and templating. Of course these flat file CMS stop being of any use as soon as you want real interactive features, from self-hosted comments to e-commerce. But, hey, being a professional is all about choosing the right tool for the task at hand, not trying to shoehorn the task to your tools or vice versa ;)

Nicholas K. Dionysopoulos

Lead Developer and Director

πŸ‡¬πŸ‡·Greek: native πŸ‡¬πŸ‡§English: excellent πŸ‡«πŸ‡·French: basic β€’ πŸ• My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

nicholas
Akeeba Staff
Manager
(sorry for the accidental blank message you received; my cat thought it be funny to step on the ENTER key before I could close the tab...)

Nicholas K. Dionysopoulos

Lead Developer and Director

πŸ‡¬πŸ‡·Greek: native πŸ‡¬πŸ‡§English: excellent πŸ‡«πŸ‡·French: basic β€’ πŸ• My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

MJLWebster
Nicholas, thanks. That's a really helpful exposition. I hear what you say about dev - staging - live and why it is not do-able for a real live interactive site with users publishing. If there isn't a solution, I'll stop the head/wall interface :) In the past, I have done this in the manual way you describe.

ATM, my sites are simple with only myself as user and content generator. I am trying to dev locally and then when I've found the right template and modules and basic content etc, and then upload to Live and start to allow users to interact. Once Live and interactive, I realise I'll have to do updates as you describe.

Both local PCs (and Live) are on Joomla 3.6.5. So to get the site on dev1 onto dev2 would it be best to install AKB onto dev2 and then use that to restore a full backup from dev1. Or I can remove the joomla files from c:/xampp/vhosts/site/htdocs and then use STW manual to install using kickstart / backup to install the site/joomla afresh in the new location.

I'm not going to attempt to do anything on Live until I manage to get one site moved from dev1 to dev2. Then in future, I will dev on dev2 and when ready, use kickstart to upload to an "empty" live site (having setup a database / user there to connect to).

(No probs about the cat related messages - I have a similar issue. Sibyl says "hi").
Thanks again for the explanations.

nicholas
Akeeba Staff
Manager
Both local PCs (and Live) are on Joomla 3.6.5. So to get the site on dev1 onto dev2 would it be best to install AKB onto dev2 and then use that to restore a full backup from dev1.


No. You do not need Akeeba Backup to restore a backup. The backups include everything you need: the site's files, the site's database and the restoration script. Therefore you'd need to install Akeeba Backup on dev1 and use Site Transfer Wizard to transfer it to dev2 (FROM dev 1 TO dev 2).

Or I can remove the joomla files from c:/xampp/vhosts/site/htdocs and then use STW manual to install using kickstart / backup to install the site/joomla afresh in the new location.


Yes, that's what I described above :)

I'm not going to attempt to do anything on Live until I manage to get one site moved from dev1 to dev2. Then in future, I will dev on dev2 and when ready, use kickstart to upload to an "empty" live site (having setup a database / user there to connect to).


Technically you can restore on top of slightly older version of the same site as long as the Joomla! version is the same and there have been no extensions added / removed / updated. This makes sure that you don't have leftover files which could cause undesirable and unpredictable effects. So, yeah, restoring on top of an empty site is the best way to ensure you won't have a problem!

Nicholas K. Dionysopoulos

Lead Developer and Director

πŸ‡¬πŸ‡·Greek: native πŸ‡¬πŸ‡§English: excellent πŸ‡«πŸ‡·French: basic β€’ πŸ• My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

MJLWebster
Or I can remove the joomla files from c:/xampp/vhosts/site/htdocs and then use STW manual to install using kickstart / backup to install the site/joomla afresh in the new location.



Yes, that's what I described above :)


OK, that has worked, thank you.
Deleted everything in /htdocs (on dev2)
uploaded the backup (from dev1)
uploaded the kickstart file
followed the procedure
*note need to have a database connection setup before doing this (I did)
*note 2 haven't checked what happened to the old database tables with the previous dev2 prefix yet, but assume I can just drop them if they are still there.
I have now moved dev1 to dev2 which is the desired first step.
Thanks for your help

Best, Mike (and Sibyl)

nicholas
Akeeba Staff
Manager
You're welcome!

PS: Simba says meow to Sibyl ;)

Nicholas K. Dionysopoulos

Lead Developer and Director

πŸ‡¬πŸ‡·Greek: native πŸ‡¬πŸ‡§English: excellent πŸ‡«πŸ‡·French: basic β€’ πŸ• My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

System Task
system
This ticket has been automatically closed. All tickets which have been inactive for a long time are automatically closed. If you believe that this ticket was closed in error, please contact us.

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!