The problem:
-Adwords shopping campaign can not be measured because HttpsRedirection ToLower url address.
-Google AdWords auto-tagging don't work when HttpsRedirection applied.
Problematic code is in file:
\Presentation\Nop.Web.Framework\Security\NopHttpsRequirementAttribute.cs
string url = webHelper.GetThisPageUrl(true, true);
\Libraries\Nop.Core\WebHelper.cs
public virtual string GetThisPageUrl(bool includeQueryString, bool useSsl)
{
...
url = url.ToLowerInvariant(); //Case conversion in this case causes analytic session loss gclid=TEST123
return url;
}
Google support document:https://support.google.com/analytics/answer/2938246?hl=en
However, the relevant section:
URL case conversion
If the auto-tagging gclid value case is being altered by a URL rewrite engine on your server (like if gclid=TeSter is being changed to all lower cases gclid=tester), Analytics can't determine which the AdWords click is associated with the session. If any gclid parameter exists, the data is identified as as coming from source=google and medium=cpc, but all other click-specific data such (like campaign, adgroup, keyword etc.) appears as (not set) in Analytics reports.
To resolve this issue, configure your web server to allow all non-reserved URL characters, including uppercase characters and symbols like '-' (hyphen) and '_' (underscore), since these may be utilized by AdWords in generating a unique gclid parameter for a click.
The problem is reproduced on:
nopCommerce 3.80 source code version, downloaded by the official site, without any modifications.
SQL: both MS SQL Server 2008 R2 and MS SQL Server 2012
OS: Windows Server 2016
I hope that everything is understandable. If something is unclear, please write back for more clarifications.