soap_box Posted June 19 Posted June 19 Hello I have inherited an old hosted version of Invision - 4.2.6 I'm trying to upgrade to the latest version. The problem I have is that the site/upgrade tool won't run on a version of php higher than 7.4, but the upgrade process won't run on a version lower than 8.0. It's trivial for me to switch versions of PHP but I can't proceed on the upgrade tool with either version Is my only option to start with a fresh copy of the files and try and migrate content?
Solution Nathan Explosion Posted June 19 Solution Posted June 19 Ensure site working as-is on 7.4 Disable any non-IPS plugins/applications that you may have installed Turn site offline via ACP Switch PHP version to 8.0 or 8.1 - site will stop working Run this https://invisioncommunity.com/files/file/7046-invision-community-requirements-checker/ and fix any issues Download update from client area, upload it to your site via FTP Go to /admin/upgrade manually Marc, soap_box and 4akpa 2 1
soap_box Posted June 19 Author Posted June 19 (edited) Thank you for this. I got as far as step 7 fairly smoothly. However, it is now telling me that I don't have all the updated versions of the files in the /applications/convert/ directory. Sure enough, the zip file I have downloaded from the client area does not even contain this directory. Could I have downloaded from the wrong place? (Client Area > Manage this purchase > Download Invision Community) ? Edited June 19 by soap_box
soap_box Posted June 19 Author Posted June 19 Ahh thanks, in my defence I had downloaded the file days ago so that little tickbox was no longer in my head 🫣
soap_box Posted June 19 Author Posted June 19 Thanks again for your help, it went mostly smoothly from there. The only issue I ran into was this: Out of range value for column 'achievements_points' at row 1222 /var/www/mysite.com/public_html/applications/core/setup/upg_106100/upgrade.php::351 UPDATE core_members core_members SET achievements_points=member_posts Not sure why it would be out of range as the highest member_posts value was only ~40k I had to comment out this line to proceed in the end, and will maybe deal with setting achievements_points later if it's necessary
Marc Posted June 19 Posted June 19 Check the support area in your admin CP, and if there are any issues with the database, it should correct them
soap_box Posted July 2 Author Posted July 2 When I followed these steps in a test, everything went fairly smoothly in the end. However now I've come to do it for real, and I'm hitting this error when I go to the ugprade path: Too few arguments to function IPS\Theme\theme_forms_core_setup_login(), 1 passed in /var/www/(...)/public_html/system/Theme/Dev/Template.php on line 171 and exactly 2 expected The only difference I can think of between the two attempts is that 1) this time the forum was switched off before I started and 2) perhaps last time I was already logged in before I changed from php 7.4 to 8.1 and this time I wasn't
soap_box Posted July 2 Author Posted July 2 (edited) I'm on php 8.1, a fresh copy of the old files, with the zip file contents uploaded (with "include converters" checked) and the permissions for `/datastore` set to writeable. Also checked the ips4 file to confirm all green ticks. (Tried to put this in an edit but, short timer!) Edited July 2 by soap_box
soap_box Posted July 2 Author Posted July 2 Sorry, resolved this, the issue that I forgot I changed during the test, was that I have a custom admin URL defined in constants.php and a custom admin folder. Renamed my folder back before I started, overwrote it, and commented out the definition.
Recommended Posts