Prerequisites

  • IIS 7 or higher is installed, if not you can enable it from Windows Feature Configuration.
  • .NET framework 4.6 is installed.
  • You have at least a little familiarity with IIS and that you are able to create a database and database user in SQL Server.
  • If you want to access the site from outside your location machine and network, you have setup your network and machine firewall to forward web traffic (tcp ports 80 and 443) to your server/workstation and the host name/domain name you use is properly configured in DNS to point to your server/workstation IP address.

Steps

  1. Create a new Web Site in IIS and name it whatever you like, e.g. "mojoportal".
    1. Take note of the name of the Application Pool, it should match the Site name.
    2. Set the Physical path to the file location you want to run your site from.
    3. Create a unique Binding for your site by setting the IP Address or leave as "All Unassigned" and then set the host name with the domain you're going to be using for your site. Don't enabled 'http' until you have a certificate installed on the site. If you are not using a routable domain or host name, e.g. "www.myawesomesite.com" (or "JoesComputer" and your local network DNS knows the IP of "JoesComputer"), you will need to follow the steps for creating a "hosts" file entry below.
  2. Ensure the file permissions are set on the folder you used for the Physical path above to allow the website access to the files.
    1. In Windows File Explorer, right-click the folder and choose Properties.
    2. Select the Security tab, click Edit, click Add
    3. Enter "IIS AppPool\AppPoolName" without quotes where AppPoolName is the name of the Application Pool created in Step 1 above, e.g. "mojoportal".
    4. Click OK
    5. Select the user you just added and ensure it has "Read & execute", "List folder contents", and "Read" permissions. As a general rule, you should not grant the user "Write", "Modify", or "Full Control" permissions here.
    6. Click OK, click OK
  3. Download the mojoPortal content management system package mojoportal-x-x-x-x-mssql.zip from our Download page.
  4. Extract the zip file to the folder used for the Physical path above and that you just set permission on.
  5. Locate the Data folder in the extracted files and right-click it, then choose Properties.
    1. Select the Security tab, click Edit
    2. Select the user you added above and ensure then select the "Modify" permission. "Full Control" is unnecessary for the website application user. 
    3. Click OK, click OK
  6. Using SQL Server Management Studio, or any tool you are already using to manage your databases, create a SQL user.
  7. Create a database, it can be named whatever you want, mojodb for example.
    1. Set the owner to the user created above.
  8. In the root of the folder you used for the Physical path of the site, rename the "user.config.sample" file to "user.config".
  9. Edit the "user.config" with a text editor like Notepad and set your connection string. It should look similar to the following:
    <add key="MSSQLConnectionString" value="server=.\;database=mojodb;UID=mojoportal-user;PWD=password123;" />
  10. As mentioned in the first section of this tutorial, if you are not using a routable domain name, you will need to create a hosts file entry. If you are using a routable domain or host name, skip this step.
    1. Right click Notepad and choose Run as Administrator.
    2. From the File menu choose open, then change the file type to all files instead of .txt
    3. Browse to C:\Windows\System32\drivers\etc and open the hosts file (it has no file extension but it is a text file).
    4. In the hosts file add a line as follows (where "mojoportal" is the host name used in the Binding you created in the first step of this tutorial. Once the line is added, save the file and close out of Notepad:
      127.0.0.1 mojoportal
  11. Open a web browser and navigate to "http://mojoportal/", where "mojoportal" is the host name used in the Binding you created in the first step of this tutorial.

If all the above steps were done correctly it should automatically redirect to http://mojoportal/Setup/Default.aspx where the initial installation where complete.

Video Tutorial

This video walks through the manual steps to install mojoPortal in IIS 7.5 using MS SQL. The steps followed aren't exactly the same as those above but the general idea is the same.

See other videos on the mojoPortal channel on YouTube.