Hosting .NET RESTful Engine on Azure Virtual Machine (HTTP)

It is assumed that you already logged in to a Microsoft Azure account with the correct permissions to create new VMs in the Azure portal.

Creating a Windows Server VM in Azure#

  1. Select Create Resource in the side bar
  2. Select Compute
  3. Select Virtual machine
  4. If your account is attached to multiple subscriptions, you will need to select the subscription you would like it to be a part of.
  5. For the option “Resource group” choose “Create new” and enter the name “RESTfulEngine”.
  6. For “Virtual machine name” enter RESTfulEngine.
  7. Select the region you want your RESTfulEngine to run in.
  8. Select the Image “Windows Server 2019 Datacenter”
  9. Choose your desired machine size. The number of VCPUs should not exceed the number of cores your RESTful Engine license can run on.
  10. Fill in the username and password for your administrator account.
  11. For “Public inbound ports” choose allow selected ports.
  12. Choose to allow HTTPS(443), HTTP(80), and RDP(3389)
  13. Click Review + Create
  14. Verify that the options on the verification page are correct and click Create
  15. On the overview page for the Virtual machine you created, select configure next to “DNS name”.
  16. Enter the name you want the machine to have on the resulting page.

Enabling Inernet Information Services (IIS)#

  1. Open the Server Manager and click Add Roles and Features from the Manage menu item
  2. When the dialog opens, click the Next button
  3. For Installation Type keep the default selection of "Role-based or feature based installation", Click the Next button
  4. For Server Selection, keep the default selection and click the Next button
  5. For Server Roles, select Web Server (IIS) and click the Next button
  6. A dialog will be shown, click the Add Features button
  7. Click the Next button
  8. For Features, select the following
    • .NET Framework 4.7 Features -> ASP.NET 4.7
    • .NET Framework 4.7 Features -> WCF Services -> HTTP Activation
  9. Click Next
  10. Click Next again
  11. Click Install
  12. Test that IIS is installed successfully by navigating to http://localhost/ in the browser of your instance. You should see the Internet Information Services (IIS) default page.
  13. Test that you can reach the VM from outside of your VM by navigating to the Public DNS of your instance from your local PC. (You can find this in the Overview section of your resource within the Azure portal).

Installing the .NET RESTful Engine#

  1. Start Internet Explorer
  2. Navigate to :
  3. Find the RESTful Engine link in the most recent version and click on the link, when prompted select Save.
  4. Unzip
  5. Copy the RESTfulEngine directory to C:\inetpub\wwwroot
  6. Depending on how you unzip the folder you may end up with a folder named RESTfulEngine inside of another folder named RESTfulEngine. If this happens you want the inner one.
  7. Start the Server Manager
  8. Select Tools >> Internet Information Services (IIS) Manager
  9. Expand the Connections Treeview until you see the Default Web Site node
  10. Select the Default Web Site node and then in the right most menu select Stop
  11. Right click the Sites node from the left most treeview and select Add Website...
  12. The Add Website dialog will show
  13. Specify a Site name
  14. Specify the Physical path of the RESTfulEngine directory (should be 1. C:\inetpub\wwwroot\RESTfulEngine)
  15. You may see a warning dialog concerning Port 80 being assigned to another site, just select the 1. OK button
  16. Update the web.config file with your license key.
    1. Look for this node in web.config
    2. Replace [[LICENSE]] with your license key.
  17. Test that the .NET RESTful engine is installed and configured correctly by clicking the Browse link in the right-hand Actions menu.
  18. You should see the API documentation for the .NET RESTful engine.
  19. Test that the .NET RESTful engine is accessible from outside your VM by navigating to the Public DNS of your instance from your local PC. (You can find this in the Overview section for your resource within the Azure portal)