i7MEDIA / mojoportal

mojoPortal is an extensible, cross database, mobile friendly, web content management system (CMS) and web application framework written in C# ASP.NET.
https://www.mojoportal.com
Other
197 stars 100 forks source link

MojoPortal release for MVC 3 #214

Closed georgiosd closed 1 year ago

georgiosd commented 1 year ago

Hey guys!

I know I am probably bringing back memories (maybe good, maybe bad) but I have been tasked with restoring a mojoPortal backup that seems to be missing the actual mojoPortal binaries and the original host is nowhere to be found.

I can see that the MVC dll included in the backup is MVC3, but the history of the repo stops in 2015, and I'm guesstimating that MVC3 was circa 2010.

Does anyone have those files or source code lingering and could help a guy out? :)

Thanks!

ElijahFowler commented 1 year ago

Hello!

We do have old versions of mojoPortal archived, so if you could send us an export of the mp_SchemaVersion table in your database we should be able to find the appropriate version of mojoPortal and send you the files that you are missing.

georgiosd commented 1 year ago

Oh my goodness, that would be amazing, thank you!

Here's what I see on that table:

image

My email is my username at gmail dot com.

JosephMDavis commented 1 year ago

Hi @georgiosd,

It looks like you're using 2.3.9.4 but we don't have a copy of it. It was released in November 2012.

You do have some options though because generally upgrading doesn't cause issues and if it does, they're generally easily fixed.

You can upgrade to the latest version, 2.9, or to another publicly available release, which goes back to 2.4.0.9. The oldest version I have is 2.4.0.3 but I don't see a lot of value in upgrading to those anyway. We have a patch release coming for 2.9 as well.

You would do the following to upgrade and get your site working:

  1. Choose a release to upgrade to and download it from the releases area on GitHub
  2. Copy your backup to a location on your server and set your IIS site up to point to it. Set up permissions to allow the web user to write to the Data folder.
  3. Copy the machineKey values from the web.config of this backup
  4. Unzip the contents of the release you downloaded to the folder containing your IIS site. As long as you have your original backup, you shouldn't need to worry about overwriting anything.
  5. Copy your machineKey values back to the new web.config

Go to the url for your site (defined in IIS) + the setup page. So it would be something like http://mysire.url/setup

Let us know if you have trouble.

georgiosd commented 1 year ago

Hi, and thank you!

So I managed to get the old DLLs from the old host backup and that didn't work, so I tried upgrading with your steps above, which also didn't work. The upgrade process completes, but when I visit the root URL I get the same error as without the upgrade:

[SqliteException (0x80004005): Unable to open the database file]
   Mono.Data.Sqlite.SQLite3.Open(String strFilename, SQLiteOpenFlagsEnum flags, Int32 maxPoolSize, Boolean usePool) +296
   Mono.Data.Sqlite.SqliteConnection.Open() +2354
   ASP.data_sites_1_skins_artisteer31_bluenwhite_internal_layout_master.__RenderfrmMain(HtmlTextWriter __w, Control parameterContainer) +471
   System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +103

Any ideas?

I can't quite get how the upgrade would work without being able to access sqlite. I also tried manually openning the file with the same Mono DLL and it works 😢

EDIT: Nevermind. I see now that the layout line is an actual path, and the connection string is hardcoded in that file..... no further comments your honor 😆

JosephMDavis commented 1 year ago

Hey @georgiosd,

Just checking with you on this. I think you got it working. Is that right?

georgiosd commented 1 year ago

I did thank you!

-- Georgios Diamantopou