This is my config on storefront
{
"ConnectionStrings": {
"ContentConnectionString": "provider=LocalStorage;rootPath=~/cms-content"
// Set this connection string to switch the cache to hybrid mode. The Redis server will keep the local memory cache of multiple instances in a consistent state.
//"RedisConnectionString": "127.0.0.1:6379,ssl=False"
},
"VirtoCommerce": {
"DefaultStore": "B2B-store",
"StoreUrls": {
// Define mapping of concrete stores with public urls in this section
//"{store id}":"{store public url}"
},
"CacheEnabled": "true",
"CacheSlidingExpiration": "0:10:0",
//The setting responds of frequency storefront requests to platform /api/changes/lastmodifieddate to get the latest timestamps of any data changes and use it for the cached data expiration,
//any data changes in the platform side will invalidate all data cache in storefront because of hard to implement graceful cache invalidation for dependencies
"ChangesPollingInterval": "0:0:15",
"Redis": {
// The name of the channel. All instances with the same ChannelName will only receive events within their own channel.
"ChannelName": "VirtoCommerceStorefrontChannel",
"BusRetryCount": 3
},
"PageSizeMaxValue": 100,
"Endpoint": {
"Url": "http://arcadiadev.ddns.net:5000/",
// Use AppId and SecretKey for Platform API authentication (has higher priority than UserName/Password)
//"AppId": "27e0d789f12641049bd0e939185b4fd2",
//"SecretKey": "34f0a3c12c9dbb59b63b5fece955b7b2b9a3b20f84370cba1524dd5c53503a2e2cb733536ecf7ea1e77319a47084a3a2c9d94d36069a432ecc73b72aeba6ea78",
// Use client credential flow for Platform API authentication
//"ClientId": "",
//"ClientSecret": "",
// Use UserName and Password for Platform API authentication
"UserName": "admin",
"Password": "Admin1234",
"RequestTimeout": "0:0:30"
},
"LiquidThemeEngine": {
"RethrowLiquidRenderErrors": false,
// The path to the base theme that will be used to discover the theme resources not found by the path of theme for current store.
// This parameter can be used for theme inheritance logic.
// Example values: Electronics/default_theme -> wwwroot/cms-content/Themes/Electronics/default_theme
"BaseThemePath": "B2B-store/default",
// Set to true if you want to merge current theme settings with base theme settings instead of placement
"MergeBaseSettings": false
},
"RequireHttps": {
"Enabled": false,
"StatusCode": "308",
"Port": "443"
},
"AzureBlobStorage": {
"PollForChanges": true,
"ChangesPollingInterval": "0:0:15"
},
// This option sets how notification is delivered in reset password workflow. Possible values: "Email", "Phone".
"ResetPasswordNotificationGateway": "Email",
// This option sets how notification is delivered in two factor authentication workflow. Possible values: "Email", "Phone".
"TwoFactorAuthenticationNotificationGateway": "Phone"
},
"CookieAuthenticationOptions": {
"Cookie": {
"HttpOnly": true
},
"ExpireTimeSpan": "00:30:00",
"LoginPath": "/sign-in",
"LogoutPath": "/sign-out",
"AccessDeniedPath": "/error/accessdenied",
"SlidingExpiration": true
},
"IdentityOptions": {
"Password": {
"RequiredLength": 8,
"RequireDigit": false,
"RequireNonAlphanumeric": false
},
"Lockout": {
"DefaultLockoutTimeSpan": "0:15:0"
}
},
"SnapshotCollectorConfiguration": {
"IsEnabledInDeveloperMode": false,
"ThresholdForSnapshotting": 1,
"MaximumSnapshotsRequired": 3,
"MaximumCollectionPlanSize": 50,
"ReconnectInterval": "00:15:00",
"ProblemCounterResetInterval": "1.00:00:00",
"SnapshotsPerTenMinutesLimit": 1,
"SnapshotsPerDayLimit": 30,
"SnapshotInLowPriorityThread": true,
"ProvideAnonymousTelemetry": true,
"FailedRequestLimit": 3
}
}
Run on Linux and theme is vc-theme-b2b-vue, storefront and platform ,I cloned from dev repo.