Nextcloud
Upgrading from owncloud 9.0.0 to latest Nextcloud
It 2017-12 and we had been using owncloud 9.0.0 for some time on our old server. Now we wanted to migrate to Nextcloud.
Step 1
Copying everything from old server to new server
/usr/share$ tar cvfz owncloud.tgz owncloud/
- copy the tgz file to the new server and unpack at /usr/share
- to a mysqlump of the owncloud mysql database on the old server
- create a new owncloud mysql database on the new server
- use the dump to restore the data on the new server
- copy the apache configuration from the old server to the new server and activate it
- modify the config.php to fit the new server
At this point things to frustrating We ran into the owncloud issues:
Internal Server Error The server encountered an internal error and was unable to complete your request. Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report. More details can be found in the server log. Technical details Remote Address: Request ID: ...
root@server:/usr/share/owncloud/data# tail -1 owncloud.log
{"reqId":"...","remoteAddr":"","app":"index","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"The requested uri() cannot be processed by the script '\\\/owncloud\\\/index.php')\",\"Code\":0,\"Trace\":\"#0 \\\/usr\\\/share\\\/owncloud\\\/lib\\\/private\\\/appframework\\\/http\\\/request.php(636): OC\\\\AppFramework\\\\Http\\\\Request->getRawPathInfo()\\n#1 \\\/usr\\\/share\\\/owncloud\\\/lib\\\/base.php(828): OC\\\\AppFramework\\\\Http\\\\Request->getPathInfo()\\n#2 \\\/usr\\\/share\\\/owncloud\\\/index.php(39): OC::handleRequest()\\n#3 {main}\",\"File\":\"\\\/usr\\\/share\\\/owncloud\\\/lib\\\/private\\\/appframework\\\/http\\\/request.php\",\"Line\":610}","level":3,"time":"2017-12-28T09:06:17+00:00"}
That was a known issue that seems not to be fixed - the bug report was simply closed:
- https://central.owncloud.org/t/the-requested-uri-login-cannot-be-processed-by-the-script-owncloud-index-php/993
- https://github.com/owncloud/core/issues/24525
So we deciced to migrate/upgrade to Nextcloud
Step 2 - migration to nextcloud
We followed the instructions at:
Which worked like a charm.
Current version is 9.0.0. Migration to Nextcloud 9.0.58 available. sudo -u www-data php occ upgrade Nextcloud is already latest version
We had to replace the contacts and calendar apps from
- https://apps.nextcloud.com/
- https://apps.nextcloud.com/apps/calendar
- https://apps.nextcloud.com/apps/contacts
move the owncloud directory
mv /usr/share/owncloud /usr/share/nextcloud
update apache configuration
#
# nextcloud Server configuration
# 2017-12-28 nextcloud upgrade to version 10
#
<VirtualHost *:80>
ServerName nextcloud.yourdomain.com
DocumentRoot /usr/share/nextcloud
<Directory /usr/share/nextcloud/>
Options +FollowSymLinks
AllowOverride All
<IfVersion < 2.3>
order allow,deny
allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
</IfVersion>
</Directory>
ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined
</VirtualHost>
nextcloud config.php
<?php
$CONFIG = array (
'updatechecker' => false,
'instanceid' => 'see config.php',
'passwordsalt' => 'see config.php',
'secret' => 'see config.php',
'trusted_domains' =>
array (
0 => 'nextcloud.bitplan.com',
),
'datadirectory' => '/usr/share/nextcloud/data',
'overwrite.cli.url' => 'http://nextcloud.bitplan.com',
'dbtype' => 'mysql',
'version' => '9.0.58.1',
'logtimezone' => 'UTC',
'installed' => true,
'maintenance' => false,
'dbname' => 'owncloud',
'dbhost' => '127.0.0.1',
'dbuser' => 'owncloud',
'dbpassword' => 'see config.php',
'theme' => '',
'loglevel' => 2,
'htaccess.RewriteBase' => '/',
'appstore.experimental.enabled' => true,
);
Step 4 upgrading from version 9 to 10
Since the major upgrades need downloading we decided to write a helper script. The script will attempt to find out your major version with an occ command. Each time you run the script it will do the steps from https://intux.de/2016/08/upgrade-nextcloud-9-0-50-10-0-0/ automatically. Before each step you might want to
- backup your database
After each step you might want to
- run the upgrade by visiting your nextcloud url and watch that things work ok.
We had to run the script three times
- to upgrade from 9 to 10
- to upgrade from 10 to 11 => 11.0.6
- to upgrade from 11 to 12