Support

Site Restoration

#39377 Site Transfer Wizard – Kickstart not running on new site

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
831
CMS Type
Joomla!
CMS Version
3.10
Backup Tool Version
Backup Pro 8.3.3.
Kickstart version
n/a

Latest post by nicholas on Monday, 04 September 2023 03:49 CDT

alevogel

In the last weeks, I migrated several websites to Joomla 4 – always using the Site Transfer Wizard to create a new dev-site. It worked perfectly all the time – but not with one website. The site is hosted at the same Hoster as the others, so I don't have any idea, why it doesn't work this time. The problem is, that Kickstart is not running on the new site. No matter what I try, I always get this error:

Akeeba Backup cannot run Akeeba Kickstart on your new site. If you are trying to restore inside a subdirectory of an existing site this means that the main site is blocking access to the subdirectory; please contact your site administrator. In any other case you need to contact your host and verify that your default PHP version matches Kickstart's minimum requirements.

PHP Version is 8.1 on both sides. I already contacted the hoster: they told me, everything is correct. The strange thing is, that Kickstart seems to produce an additional directory. The structure on the server is the following: www/neu.bodenmatt-malters.ch > it's the directory I created in the hosting for my dev-site. When trying to upload Kickstart in this directory, it produces in the existing directory neu.bodenmatt-malters.ch to neu folders: one "www" and one "kickstart". After that, I get the mentioned error. I do exactly the same with many other websites, so I have no plan, what is going wrong here… 

Alexandra

 

nicholas
Akeeba Staff
Manager

Check the directory you set up in the Site Setup Wizard. I think you have accidentally added a /kickstart which would cause the subdirectory to be created.

Remember, the Site Transfer Wizard needs you to configure it in such a way that the FTP/SFTP connection information will allow it to upload files to the directory which corresponds to the site URL you entered in the first step of the wizard. If you are indeed trying to upload to a subdirectory of a domain, e.g. https://www.example.com/kickstart, then you need to enter the URL with the subdirectory in the first step.

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!

alevogel

I didn't added /kickstart > see screenshot. I added a new ftp-connection now to directory www, so the ftp-directory I'm pointing to is now only "neu.bodenmatt-malters.ch". Kickstart starts working and creates a directory "Kicktemp" inside neu.bodenmatt-malters.ch, but then, die error message appears. I send you screenshots for better understanding.  

nicholas
Akeeba Staff
Manager

It is normal to have a kicktemp folder (note that it's not kickstart). It is a temporary directory created by the Site Transfer Wizard and given 0777 permissions. This is a precaution, in case we have to use the Hybrid or FTP file write mode (as opposed to Direct File Writes).

The existence of this folder and the message you get tells me that kickstart.php was also uploaded in that folder, but accessing it over the web failed. Accessing over the web means accessing the URL https://neu.EXAMPLE.COM/kickstart.php, where example.com is your site's domain which I am redacting because this is a public ticket. Upload kickstart.php yourself and try accessing that URL on your subdomain. If you get an error you can figure out what the problem is (e.g. wrong PHP version).

If, however, it works, I have to ask you where this subdomain's web root is. If it's under the web root of a site which is already using a .htaccess file created by Admin Tools' .htaccess Maker it won't work because the main site's .htaccess gets in the way. The correct approach is to move the subdomain's site root one level above (i.e. next to) the main site's web root folder. If that's not the case, ask your host whether this particular server and site may be blocking access based on IP address or the HTTP User-Agent header.

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!

alevogel

kickstart.php wasn't uploaded – the directory kicktemp is completely empty… So it's also not possible accessing it with the described URL. The new subdomain root is correctly places on the same level, means next to, as the main site root folder:

www/mainsite folder

www/devsite folder

So there should be no blocking by a htaccess. Neither there is a blocking from host, they already checked.   I'm really a bit confused, because I do ABSOLUTELY the same procedures as with 8 other websites by the same host: same structure of directory, same kind of ftp, same version of Joomla, Akeeba etc.. Maybe it's a problem with the Akeeba Backup Version, since I installed 8.3.3. pro before transferring?

nicholas
Akeeba Staff
Manager

Just because kickstart.php is no longer there does not mean it has not been uploaded at all. In fact, you cannot possibly receive the error message you mentioned in your first message unless the upload has completed successfully. It just so happens that if the next step after that, trying to access the file over the web, does not work the Site Transfer Wizard removes the uploaded kickstart.php for security reasons.

I am of course fully aware of this. I wrote this code myself. This is why the last period of my previous reply states "Upload kickstart.php yourself and try accessing that URL on your subdomain. If you get an error you can figure out what the problem is (e.g. wrong PHP version)".

Can you please do that and tell me what results you get?

Maybe it's a problem with the Akeeba Backup Version, since I installed 8.3.3. pro before transferring?

No, it is not. The Site Transfer Wizard code has not been touched in over two years, as you can easily see in the changelog in the backend.

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!

alevogel

Ok, I understand what you mean now – sorry for misunderstanding. I uploaded kickstart.php manually into the devsite's folder – and I can access it via URL. As I wrote before, the structure should be ok, as the devsites's folder is next to the main site folder, means on the same level:

www/mainsite
www/devsite

Is there anything I could check? I also tried with another website, the same problem happens there. Strange thing is, that everything worked perfect with 8 other websites before…

 

Thanks!

 

nicholas
Akeeba Staff
Manager

Contact the host of the original site and ask them if they are using a transparent proxy for outgoing HTTP / HTTPS requests, and whether the requests to the new site are cached or blocked. This is the most common problem.

The second most common problem is that the request was blocked at the target site's server (where you are transferring the site to). Ask that host if they are blocking the requests from your original host in any way. Hosts tend to have automations which may not like repetitive, similar requests from the same IP address; they look like a hacker trying to attack sites, therefore they drop the ban-hammer (they block the entire IP of the source server).

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!

alevogel

I contacted the host – it's the same for the original and the new site, even the same hosting. They checked your inputs, but didn't find any problem or blocking. I will try to lower the PHP-Version; maybe that helps (two of the former websites I transferred werde with PHP 7.4).

nicholas
Akeeba Staff
Manager

The PHP version should not be a problem. Akeeba Backup and Kickstart are developed on PHP 8.2 and tested with PHP 7.4, 8.0, 8.1, and 8.3 (development snapshots, it's not officially released yet).

I am currently on vacation and my connection sucks. When I'm back at the office I will test again, but I don't see how anything would've changed as no changes to this feature or Kickstart have been done for a very long while. Strange.

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!

alevogel

Update: I tried with with a lower PHP-Version and set this for the two sites I tried to transfer to 7.4 instead of 8.1 – and suddenly Site Transfer Wizard works without any problem. Maybe you could check this after your vacation, it seems to has to do something with PHP-Version and maybe some hosts.

nicholas
Akeeba Staff
Manager

Open the file administrator/components/com_akeeba/Master/Installers/kickstart.transfer.php line 255 and change it to 

$last = strtolower(substr($val, -1));

Please keep in mind that Akeeba Backup 8 for Joomla! 3 is End of Life and only receives security updates. This is not a security update. We do not plan on releasing any new version to address it. This issue has already been addressed since October 2022 in Akeeba Backup 9 for Joomla 4.

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!

alevogel

Thank you. It seemed to work now also with PHP 8.1 – but wenn uploading the backup archive, I get the following error message after a about 20 seconds: 

"An error has occurred AJAX Loading Error HTTP Status: 500 Internal status: error XHR ReadyState: 4 Raw server response:"

When I check it via FTP, I see that the following directories and files have already been uploaded:

  • kicktemp
  • kickstart.php
  • kickstart.transfer.php
  • jpa-archive 

It seems, as these website hasn't a good karma ;-)) since I encounter no problems with any other sites. I already tried to set minimum and maximum execution time as you suggested in a former ticket in the forum, but it didn't help. And there is plenty of free space on the server. Any suggestions?

 

nicholas
Akeeba Staff
Manager

Best use the old-fashioned site transfer method. Take a backup. Upload the backup archive file(s) and kickstart.php (Kickstart Core). Access the /kicsktart.php URL on the new server and proceed with the restoration.

The only thing the Site Transfer Wizard does is upload the backup archive and Kickstart. Nothing less and nothing more. There's no "special magic" in what it does. Transferring sites with Akeeba Backup and its predecessor, JoomlaPack, has always been possible from the very first version. That was actually what I wrote this software for; taking backups as a side-effect of the transfer process was merely a happy accident.

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!

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!