InstallationInstall Sana Commerce Webshop on Web and Database Server

Install Sana Commerce Webshop on Web and Database Server

Configure the Connection Strings

In the previous steps, we have explained how to set up the Sana Commerce SQL database and the optional setting of the NAS. Now you have to configure the Sana Commerce Starter Site and backoffice web applications, so they can connect to these data stores:

Step 1: Open the 'web.config' file of the 'Sana.Commerce.StarterSite' project in any text editor ('Notepad' for example).

Step 2: Locate the 'connectionStrings' configuration section:

<connectionStrings>
<remove name="LocalSqlServer"/>
<add name="IndexDirectory" connectionString="IndexDirectoryFolder"/>
<add name="LocalSqlServer" connectionString="Server=ServerName\InstanceName;initial catalog=DatabaseName;User Id=Username;Password=Password;MultipleActiveResultSets=true;"/>
<add name="AxWebService" connectionString=
"EndPointConfigurationName=AX;UserName=UserName;Password=Password;Domain=Domain;"/>
<add name="NavisionStandardService" connectionString="NavisionServiceUrl"/>
</connectionStrings>
It is possible to specify Timeout for the connection. If this parameter is not specified, the default value (60 sec) will be used.
For example:
'Url=http://#SERVERNAME#:#PORT#/navision;Timeout=600'

Step 3: Delete the following line:

<add name="AxWebService" connectionString=
"EndPointConfigurationName=AX;UserName=UserName;Password=Password;Domain=Domain;"/>

Step 4: Replace the following values:

#INDEXDIRECTORYFOLDER#: The path to the folder where the index files are stored.
#SERVERNAME\INSTANCENAME#: Database server name or IP address of the SQL database server and optionally the SQL server instance name. For example, SERVER06 used in 'Install the NAS'.
#DATABASENAME#: Name of the SQL database used in 'Setup the SQL Database'.
#USERNAME#: Database username used in 'Setup the SQL Database'.
#PASSWORD#: Password of the database user.
#NAVISIONSERVICEURL#: This value has the following form:
"#PROTOCOL#://#SERVERNAME#:#PORTNUMBER#/navision" 

where:
#PROTOCOL#: the protocol which is used for connecting to the WCF service (HTTP or HTTPS)
#SERVERNAME#: is the name or IP address of the server running the NAS used in 'Configure the NAS'. When running the Sana Commerce startup code unit from the Microsoft Dynamics NAV client, enter 127.0.0.1.
#PORT#: is the port number to which the Sana Commerce Microsoft Dynamics NAV Service is listening.

Step 5: Open the 'web.config' file of the 'Sana.Commerce.BackOffice' project in any text editor.

Step 6: Locate the 'appSettings' configuration section:

<appSettings>
     <add key="FrontendUrl" value="ShopUrl"/>
     <add key="FrontendPath" value="PhysicalPathToFrontendFolder"/>
     <add key="FrontendContentPath" value="PhysicalPathToFrontendFolder\content\files"/>
     <add key="FrontendThumbnailPath" value="/content/files/images/ProductImages/Small/"/>
</appSettings>

More detailed information about frontend and frontend content paths can be found here.

Step 7: Replace the #FRONTENDURL# value, which should have the following form:

"#PROTOCOL#://#WEBSITEDOMAINNAME#:#PORT#"

where:
#PROTOCOL#: the protocol which is used for connecting to the SC website (HTTP or HTTPS)
#WEBSITEDOMANINAME#: the website address that is registered in the DNS servers of your network.
#PORT# (optional): the port number when it is not the default HTTP port number (80).

Attribute 'FrontendThumbnailPath' specifies the path to the folder which is used for storing the product images.
Attribute 'FrontendContentPath' specifies the folder which is used for storing the content files.

If your website and backoffice have different domains you should create the 'images' virtual directory in the
'BackOffice' website in IIS with the path to the original 'images' directory in the 'StarterSite' website.
This is done in order for HTML editor in backoffice to manage the content images correctly.

'Images' Virtual Directory in the 'Backoffice' Website in IIS

Step 8: Locate the 'connectionStrings' configuration section:

<connectionStrings>
<clear/>
<add name="IndexDirectory" connectionString="IndexDirectoryFolder"/>
<add name="LocalSqlServer" connectionString="Server=ServerName\InstanceName;initial catalog=DatabaseName;User Id=Username;Password=Password;MultipleActiveResultSets=true;" />
<add name="AxWebService" connectionString=
"EndPointConfigurationName=AX;UserName=UserName;Password=Password;Domain=Domain;"/>
<add name="NavisionStandardService" connectionString="NavisionServiceUrl"/>
</connectionStrings>

Step 9: Delete the following line:

<add name="AxWebService" connectionString=
"EndPointConfigurationName=AX;UserName=UserName;Password=Password;Domain=Domain;"/>

Step 10: Replace the following values:

#INDEXDIRECTORYFOLDER#: The path to the folder where the index files are stored.
#SERVERNAME\INSTANCENAME#: Database server name or IP address of the SQL database server and optionally the SQL server instance name. e.g. DEV-UA-WS003\SQLEXPRESS used in 'Install the NAS'.
#DATABASENAME#: Name of the SQL database used in 'Setup the SQL Database'.
#USERNAME#: Database username used in 'Setup the SQL Database'.
#PASSWORD#: Password of the database user.
#NAVSERVICEURL#: This value has the following form:
"#PROTOCOL#://#SERVERNAME#:#PORT#/navision"

where:
#PROTOCOL#: the protocol which is used for connecting to the WCF service (HTTP or HTTPS).
#SERVERNAME#: is the name or IP address of the server running the NAS used in 'Configure the NAS'. When running the Sana Commerce startup code unit from the Microsoft Dynamics NAV client, enter 127.0.0.1.
#PORT#: is the port number to which the Sana Commerce Microsoft Dynamics NAV Service is listening.

You can find more information about different SQL connection strings here: http://connectionstrings.com/sql-server-2005.