Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


The following tutorial will demonstrate the setup of X Dispatch Server on a machine running Windows Server 2016. If you have any questions or are in need of assistance at any time, please visit our ServiceDesk Portal to open a ticket.

...

Terminology

Database ServerA database server is a server that houses a database application that provides database services to other computer programs or to computers.
Application ServerAn application server is a software framework that provides both facilities to create web applications and a server environment to run them.
Web ServerWeb server refers to software or hardware dedicated to running a website and serves it's contents to the World Wide Web. It processes network requests over HTTP & other related protocols.

X Dispatch Install Types

Single Server When you use just one machine for both the database, web, and even potentially remote desktop roles, this is a single server or combination server setup.
Multi Server 

When you are just running one role per machine, this would be a multi server setup.

Example: You have one machine for the database, one machine for web, etc.

...


Expand
titleImportant Information About Virtualization

CXT Software recommends using a physical server for X Dispatch database server role, however, it is possible to use a Virtual Machine and requires expert level virtualization skills. If a Virtual Machine is configured, it's important to note that performance failures can occur in the Host Operating System (OS), the Virtualization Layer, and Guest Operating System (OS). To minimize potential performance failures, these areas must be configured properly. 

For specific virtualization instructions please refer to your virtualization technology documentation. 




Expand
titleDomain Accounts

You will need to create three domain administrator accounts to handle various back-end processes and roles for X Dispatch. 

  1. cxtbll - For running the cxtbll COM+ application.
  2. cxtjobs -For running the App Pools in IIS and X Stream.
  3. cxtsupport - For RDP access and troubleshooting.

Once these accounts are created you can move on to installing roles and features in the last prerequisite below.


...


Expand
titleStep 4 - SQL Server Installation & Configuration


Warning
You must use "Run As Administrator" to properly install SQL Server 2016 and avoid issues with the configuration. 
  1. Download Microsoft SQL server here. (SQL Server Express is Free to use but is limited to a Database of 10 GB)
  2. Follow Microsoft instructions to register and download Microsoft SQL Server 2008 R2  Express with Mgmt Tools. (64 Bit ENU\x64\SQLEXPRWT_x64_ENU.exe, 32 Bit ENU\x86\SQLEXPRWT_x86_ENU.exe)
  3. Right Click on the downloaded SQL Server installer and click Run as Administrator
  4. In the SQL Server Installation Center window click on New SQL Server stand-alone installation or add feature to an existing installation.
  5. Check the box I accept the license terms and click Next. 
  6. On the Products Updates page check the box to Include SQL Server product updates, then click Next.
  7. On the Feature Selection page check the boxes Database Engine ServicesSQL Server ReplicationManagement Tools - BasicSQL Client Connectivity SDK, then click Next
  8. On the Instance Configuration page select Named Instance and name it "MSSQLSERVER", then click Next.
  9. On the Server Configuration window ensure the SQL Server Database Engine is configured to use the NT AUTHORITY\SYSTEM account.
  10. On the Database Engine Configuration page set Authentication Mode to Mixed in Database Engine Configuration window. 
  11. Set the Password and confirm.
  12. Click ADD and add the 3 users created at the start (cxtbll, cxtjobs, cxtsupport) click Next.
  13. Click Next to start the installation.
  14. Once the installation is complete click Close then Close again.
  15. Click on the Windows start button.
  16. Start typing "SQL Server Configuration Manager" in the search box.
  17. Click on SQL Server Configuration Manager
  18. In the SQL Server Configuration Manager window expand SQL Server Network Configuration so that Protocols for MSSQLSERVER is visible.
  19. Click on Protocols for MSSQLSERVER.
  20. Right click on Shared Memory and select Disable.
  21. Click OK.
  22. Right click on TCP/IP and select Enable.
  23. Click OK
  24. Click on SQL Server Services
  25. Right click on SQL Server Browser and select Properties
  26. Select the Service tab. 
  27. Click Disabled on Start Mode to show options, then select Automatic
  28. Click OK
  29. Right click on SQL Server (MSSQLSERVER).
  30. Click Restart
  31. Right click on SQL Server Browser
  32. Click Start
  33. Close all windows.


...


Expand
titleStep 5 - Installing X Dispatch Server
  1. Download the latest version of X Dispatch Server here.
  2. Extract the downloaded file. 
  3. Right click Run as Administrator
  4. Agree to the terms. 
  5. Click Next.
  6. Click Install
  7. Accept the ASP.NET MVC Install. 
  8. Click Finish ASP.NET MVC.
  9. Click the Windows start button.
  10. Start typing in "Services" in the search box.
  11. Click on Services
  12. Scroll down to X Stream.
  13. Double click and open the X Stream service.
  14. Click the Log On tab. 
  15. Change from Local System account to the domain account cxtjobs. 
  16. Click OK.
  17. Click OK on the account has been granted permissions pop up. 
  18. Click OK to the restart Ppp up. 
  19. Right click On X Stream and Click Restart


...

Web Server Setup & Configuration

Note

The Database Setup & Configuration must be completed and have the IIS Role installed.

The web portion of this installation will go through the setup and configuration of all CXT web apps such as Rapidship, X Tracking, and various X Dispatch web modules.

...


Expand
titleStep 1 - App Pool & Sites Configuration
  1. Click on the Windows start button
  2. Start typing "IIS" in the search box.
  3. Click on Internet Information Services (IIS) Manager
  4. Expand the server in the tree on the left.
  5. Right click on Application Pools, click on Add Application Pool...  
  6. In the Add Application Pool window, set the Name to .NET 2.0 and the .NET CLR Version to .NET CLR Version v2.0.50727
  7. Click OK
  8. Right click on Application Pools, click on Add Application Pool... 
  9. In the Add Application Pool window set the Name to .NET 4.0 and the .NET CLR Version to .NET CLR Version v4.0.30319
  10. Click OK.
  11. Right click on the .NET 2.0 application pool, then click on Advanced Settings...
  12. In the Advanced Settings window click on ... under Identity.
  13. Select Custom account and press the Set... button.  
  14. Enter cxtjobs domain account information for the server, then click OK
  15. In the Advanced Settings window set the Enable 32 Bit Applications to True, then click OK
  16. Repeat steps 11 - 15 for the .NET 4.0 Application Pool.
  17. Unzip X internet. Download here.
  18. Copy the second XInternet folder (there is a XInternet folder inside the XInternet folder) to C:\Inetpub\wwwroot so all the content is in C:\Inetpub\wwwroot\XInternet. These are the web files.
  19. Expand the Sites folder in the tree on the left.
  20. Right click on Sites, then click Add New Site.
  21. Name the new site "XInternet".
  22. Click on the Select... button.
  23. Select .Net 2.0 as Application Pool.
  24. Click OK

    Tip
    titleQuick Tip
    • If the "Duplicate..." message appears, press OK to continue.  
    • If the "Default" website exists and is not used, right click on it and select Remove
    • Click on Sites and check the status of XInternet site.  If the status is "Stopped" then click on XInternet and select Start from the right pane.


  25. Set the Physical path to where you saved the web files.
  26. Open a web browser and navigate to 127.0.0.1 to verify the site is running. 
  27. In IIS, click on the Server then click Server Certificates.
  28. Check for existence of current license under Name. If the license doesn't exist, select Create Self-Signed Certificate
  29. Specify a friendly name for certificate and press OK
  30. Select the XInternet website.
  31. Select Bindings.
  32. In the Bindings window set the Type to https.
  33. Set the SSL certificate to the one created.
  34. Click OK.
  35. Close the Bindings window.
  36. Right click on the XInternet site and select Add Application... 
  37. In the Add Application window, name the application "CxtWebService".
  38. Click Select... to set Application Pool to ".Net 4.0". 
  39. Set the Physical Path to "C:\Program Files (x86)\Connexion\XInternet\CxtWebService".
  40. Press OK.  
  41. Right click on XInternet site and select Add Application...
  42. In Add Application window, name the application "XInternetMVC". 
  43. Click Select... to set Application Pool to ".Net 4.0". 
  44. Set the Physical Path to "C:\Program Files (x86)\Connexion\XInternet\v2". 
  45. Click OK
  46. Click on CxtWebService.
  47. Click on Authentication.
  48. Right click on Anonymous Authentication and select Enable
  49. Right click on Anonymous Authentication and select Edit
  50. Select Application Pool Identity and press OK
  51. Verify that the status is enabled.
  52. Repeat steps 48 - 51 for XIntenetMVC.
  53. Click on CXTWebService and open Application Settings
  54. Select Add from pane on right.  
  55. Enter "RemoteServer" as Name and Data Source=127.0.0.1;Initial Catalog=cxtdata;Integrated Security=SSPI into Value field. The IP address (127.0.0.1 is used as this is a single server replace with IP address of Database server for multi server setup..) 
  56. Right click on XInternet site and select Add Application
  57. Enter "ROWS" for Alias.
  58. Select ".Net 2.0" for Application Pool
  59. Set  Physical path to "C:\Program Files(x86)\Connexion\ROWS".
  60. Press OK
  61. Right click on X Internet, and select Add Application
  62. Set Alias to XInternet.
  63. Set Physical Path to "C:\Program Files(x86)\Connexion\XInternet".
  64. Set Application Pool to ".NET 2.0".
  65. Press OK
  66. Change Connect As user to cxtbll. 
  67. Click Test Settings... to verify path and user account are accurate. 
  68. Select the XInternet application and open Application Settings section.
  69. Set the AspAddress value under Application Settings to URL location of ASP site. " / " can be entered if a virtual directory is created under ASP website and ASP website is the default website in IIS.
  70. Select Add under Actions to add a new Application Setting.
  71. Set Name to "RemoteServer" and enter the IP address of X Dispatch Server under Value.
  72. Click OK
  73. Add (for new installations) or modify (for upgrades) the following settings below. 
         - Name: XTrackingWebserviceURL
         - Value: http://127.0.0.1/XInternet/CxtMappingWebService.svc?wsdl
  74. Click OK.
  75. Close IIS.


Firstly, the IIS CORS module needs to be installed:

  1. Download the Web Platform Installer (if it is not installed)


    Div


  2. Install the CORS module


    Div



Next, the ApplicationHost.config file needs to be updated to include the CORS information.

  1. Find the ApplicationHost.config file. Normally, it can be found under: C:\Windows\System32\inetsrv\config

  2. Under the <system.webServer> tag, add the following:



    1. Paste code macro
      languagexml
      <cors enabled="true" failUnlistedOrigins="false"> <add origin="capacitor://localhost" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="ionic://localhost" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="http://localhost" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="https://localhost" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="http://localhost:4200" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="http://localhost:8100" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="http://localhost:8101" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="http://localhost:8200" allowCredentials="true"> <allowHeaders allowAllRequestedHeaders="true"> </allowHeaders> <allowMethods> <add method="GET" /> <add method="OPTIONS" /> <add method="POST" /> <add method="PUT" /> <add method="DELETE" /> <add method="PATCH" /> </allowMethods> <exposeHeaders> <add header="CXTWCF-Version" /> </exposeHeaders> </add> <add origin="http://*" allowed="false" /> </cors>


Save the file and restart IIS.


...

Remote Desktop Setup & Configuration

Note

The Database Setup & Configuration must be completed and have the IIS Role installed.

Detailed instructions for installing Remote Desktop is beyond the scope of this documentation, however, brief notes are provided below. Remote desktop is a standard remote connectivity platform from Microsoft and your IT team should have the ability to install this Microsoft product.

...

Review the Global.asa file located in the c:\inetpub\wwwroot\XInternet directory.

  • RemoteServer - Default "127.0.0.1"    - This should be pointed at the DB Server 
  • XInternetURL - Default "/XInternet/" 
  • XInternetMvcURL - Default "/XInternetMVC/" 

...