Set permissions:
% chmod a+w ./
% chmod a+w file
% chmod a+w file/avatar (make this directory if it doesn't exist)
Tell the hosting provider to point the domain at the new application
It didn't work. Running the config script is going to nuke my old db. Is there a way forward?
The upgrade instructions are for GNU social 1.0 and do not work moving from 1.0 to 2.0 if the admin has qvitter installed.
This is what I tried.
1. Back up the database: $ mysqldump -u dbuser -p dbname > social-backup.sql
2. Create a new application on my hosting provider
3. Clone the repo into the folder created by the provider by navigating into that directory and typing: % git clone https://notabug.org/diogo/gnu-social.git .
4. Copy folders: avatar, and file. The old instructions suggest also copying local, but I didn't have that folder.
5. Copy files config.php and .htaccess
6. Comment out addPlugin('Qvitter'); in config.php
7. Run: % php scripts/upgrade.php
8. Start queue daemons: % bash scripts/startdaemons.sh
9. Set permissions:
% chmod a+w ./
% chmod a+w file
% chmod a+w file/avatar (make this directory if it doesn't exist)
10. Tell the hosting provider to point the domain at the new application
It didn't work. Running the config script is going to nuke my old db. Is there a way forward?
I don't think v2 is compatible with Qvitter. Qvitter is a third party plugin that, afaik, is no longer maintained.
About the upgrade procedure, I haven't tested upgrading from v1 directly to v2, without first upgrading to v1.20. But it honestly shouldn't make any difference. Upgrading the source like you did and running ./scripts/upgrade.php should be all it takes to update the database properly. Have you got any error message to share?
I don't think v2 is compatible with Qvitter. Qvitter is a third party plugin that, afaik, is no longer maintained.
About the upgrade procedure, I haven't tested upgrading from v1 directly to v2, without first upgrading to v1.20. But it honestly shouldn't make any difference. Upgrading the source like you did and running `./scripts/upgrade.php` should be all it takes to update the database properly. Have you got any error message to share?
Please note that you have to upgrade your webserver configuration to use v2: https://notabug.org/diogo/gnu-social/src/master/RELEASE_NOTES.md#for-userssysadmins
Ok, so this is how I finally got the upgrade to work -
I created a new application and a pull from the repo with a chmod a+w .
I copied over
avatar/
file/
plugins/
config.php
.htaccess
I commented out all the addPlugin() lines in config.php
I ran stopdeamons - this required the plugin directory!
I ran the upgrade command
I created a new database on my server
I moved config.php to confid-old.php
Using my server's web interface I changed the db type to be utf8mb4_bin for both the old and the new database
I pointed my web browser at public/install.php
I filled out the form using all my old settings except I put in the new database
It made an empty site
I edited the new config.php and change the $config['db']['database'] = line to point at the old database (by copying that line from the original config.php)
I can now see all the old content
This method is . . . not great, but this was the only thing that seemed to work. Before I was getting a 403 forbidden. My apache error_log is full of:
[Fri Sep 17 12:42:29.941076 2021] [autoindex:error] [pid 71935] [client 51.155.127.75:56342] AH01276: Cannot serve directory /home/celesteh/apps/gnusoc/: No matching DirectoryIndex (index.html,index.shtml,index.htm,Index.html,Index.htm,Index.shtml,default.htm,Default.htm,default.html,Default.html,default.shtml,Default.shtml,page1.html,index.pl,index.cgi,index.php,index.php3,index.phtml,home.htm,home.html,home.shtml,index.wml,index.pcgi,quickstart.html) found, and server-generated directory index forbidden by Options directive
[Fri Sep 17 12:42:29.941378 2021] [actions:info] [pid 71935] [client 51.155.127.75:56342] AH00652: File does not exist: /home/celesteh/apps/gnusoc/index.php
Ok, so this is how I finally got the upgrade to work -
1. I created a new application and a pull from the repo with a chmod a+w .
* I copied over
* avatar/
* file/
* plugins/
* config.php
* .htaccess
* I commented out all the addPlugin() lines in config.php
* I ran stopdeamons - this required the plugin directory!
* I ran the upgrade command
* I created a new database on my server
* I moved config.php to confid-old.php
* Using my server's web interface I changed the db type to be utf8mb4_bin for both the old and the new database
* I pointed my web browser at public/install.php
* I filled out the form using all my old settings except I put in the new database
* It made an empty site
* I edited the new config.php and change the $config['db']['database'] = line to point at the old database (by copying that line from the original config.php)
* I can now see all the old content
This method is . . . not great, but this was the only thing that seemed to work. Before I was getting a 403 forbidden. My apache error_log is full of:
[Fri Sep 17 12:42:29.941076 2021] [autoindex:error] [pid 71935] [client 51.155.127.75:56342] AH01276: Cannot serve directory /home/celesteh/apps/gnusoc/: No matching DirectoryIndex (index.html,index.shtml,index.htm,Index.html,Index.htm,Index.shtml,default.htm,Default.htm,default.html,Default.html,default.shtml,Default.shtml,page1.html,index.pl,index.cgi,index.php,index.php3,index.phtml,home.htm,home.html,home.shtml,index.wml,index.pcgi,quickstart.html) found, and server-generated directory index forbidden by Options directive
[Fri Sep 17 12:42:29.941378 2021] [actions:info] [pid 71935] [client 51.155.127.75:56342] AH00652: File does not exist: /home/celesteh/apps/gnusoc/index.php
Because you have to update your webserver conf as noted in the release notes: https://notabug.org/diogo/gnu-social/src/master/RELEASE_NOTES.md#for-userssysadmins
That probably is a huge chunk of the issues you're experiencing...
The upgrade instructions are for GNU social 1.0 and do not work moving from 1.0 to 2.0 if the admin has qvitter installed. This is what I tried.
It didn't work. Running the config script is going to nuke my old db. Is there a way forward?
What config script?
I don't think v2 is compatible with Qvitter. Qvitter is a third party plugin that, afaik, is no longer maintained.
About the upgrade procedure, I haven't tested upgrading from v1 directly to v2, without first upgrading to v1.20. But it honestly shouldn't make any difference. Upgrading the source like you did and running
./scripts/upgrade.php
should be all it takes to update the database properly. Have you got any error message to share?Please note that you have to upgrade your webserver configuration to use v2: https://notabug.org/diogo/gnu-social/src/master/RELEASE_NOTES.md#for-userssysadmins
Ok, so this is how I finally got the upgrade to work -
This method is . . . not great, but this was the only thing that seemed to work. Before I was getting a 403 forbidden. My apache error_log is full of:
[Fri Sep 17 12:42:29.941076 2021] [autoindex:error] [pid 71935] [client 51.155.127.75:56342] AH01276: Cannot serve directory /home/celesteh/apps/gnusoc/: No matching DirectoryIndex (index.html,index.shtml,index.htm,Index.html,Index.htm,Index.shtml,default.htm,Default.htm,default.html,Default.html,default.shtml,Default.shtml,page1.html,index.pl,index.cgi,index.php,index.php3,index.phtml,home.htm,home.html,home.shtml,index.wml,index.pcgi,quickstart.html) found, and server-generated directory index forbidden by Options directive [Fri Sep 17 12:42:29.941378 2021] [actions:info] [pid 71935] [client 51.155.127.75:56342] AH00652: File does not exist: /home/celesteh/apps/gnusoc/index.php
Wait, no, the url that works is https://algonoise.social/public/index.php
Why doesn't this work at the root?
Because you have to update your webserver conf as noted in the release notes: https://notabug.org/diogo/gnu-social/src/master/RELEASE_NOTES.md#for-userssysadmins That probably is a huge chunk of the issues you're experiencing...