diff --git a/.gitignore b/.gitignore
index 3ae099a82f6d..ebbfe9357662 100644
--- a/.gitignore
+++ b/.gitignore
@@ -176,3 +176,5 @@ cypress.env.json
/src/Umbraco.Tests.AcceptanceTest/cypress/videos/
/src/Umbraco.Tests.AcceptanceTest/cypress/screenshots/
src/Umbraco.Web.UI/Umbraco/telemetrics-id.umb
+
+/src/Umbraco.Web.UI/config/umbracoSettings.config
diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/BackOfficeElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/BackOfficeElement.cs
index 79bff51d0558..a84ae3d31cad 100644
--- a/src/Umbraco.Core/Configuration/UmbracoSettings/BackOfficeElement.cs
+++ b/src/Umbraco.Core/Configuration/UmbracoSettings/BackOfficeElement.cs
@@ -8,5 +8,10 @@ internal class BackOfficeElement : UmbracoConfigurationElement, IBackOfficeSecti
internal TourConfigElement Tours => (TourConfigElement)this["tours"];
ITourSection IBackOfficeSection.Tours => Tours;
+
+ [ConfigurationProperty("id", DefaultValue = "")]
+ internal string Id => (string)base["id"];
+
+ string IBackOfficeSection.Id => (string)base["id"];
}
}
diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IBackOfficeSection.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IBackOfficeSection.cs
index 36dd6a22ed53..32e8e4e3ecb1 100644
--- a/src/Umbraco.Core/Configuration/UmbracoSettings/IBackOfficeSection.cs
+++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IBackOfficeSection.cs
@@ -1,7 +1,10 @@
-namespace Umbraco.Core.Configuration.UmbracoSettings
+using System;
+
+namespace Umbraco.Core.Configuration.UmbracoSettings
{
public interface IBackOfficeSection
{
ITourSection Tours { get; }
+ string Id { get; }
}
-}
\ No newline at end of file
+}
diff --git a/src/Umbraco.Core/IO/SystemFiles.cs b/src/Umbraco.Core/IO/SystemFiles.cs
index d33e9dfdfc92..337c97d081e3 100644
--- a/src/Umbraco.Core/IO/SystemFiles.cs
+++ b/src/Umbraco.Core/IO/SystemFiles.cs
@@ -7,7 +7,7 @@ public class SystemFiles
{
public static string TinyMceConfig => SystemDirectories.Config + "/tinyMceConfig.config";
- public static string TelemetricsIdentifier => SystemDirectories.Data + "/telemetrics-id.umb";
+ public static string UmbracoSettings => SystemDirectories.Config + "/UmbracoSettings.config";
// TODO: Kill this off we don't have umbraco.config XML cache we now have NuCache
public static string GetContentCacheXml(IGlobalSettings globalSettings)
diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
index 6e4a4b780e69..f2733ad60e83 100644
--- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
+++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
@@ -377,6 +377,7 @@
+
diff --git a/src/Umbraco.Web.UI/config/umbracoSettings.Release.config b/src/Umbraco.Web.UI/config/umbracoSettings.Release.config
index fa998a9856fa..454da921e7a6 100644
--- a/src/Umbraco.Web.UI/config/umbracoSettings.Release.config
+++ b/src/Umbraco.Web.UI/config/umbracoSettings.Release.config
@@ -41,11 +41,11 @@
-
+
…
-
-
+
+
+
]]>
@@ -231,6 +232,14 @@
By default you can call any content Id in the url and show the content with that id, for example:
http://mysite.com/1092 or http://mysite.com/1092.aspx would render the content with id 1092. Setting
this setting to true stops that behavior
+ @disableRedirectUrlTracking
+ When the URL changes for content, redirects are automatically created for redirect handling within the
+ request pipeline. Setting this setting to true stops the automatic creation of redirects. Note that this
+ does not stop the request pipeline from handling any previously created redirects.
+ @urlProviderMode
+ By default Umbraco automatically figures out if internal URLs should be rendered as relative or absolute,
+ depending on the current request and the configured domains. By setting this setting to "Relative" or
+ "Absolute" you can force Umbraco to always render URLs as either relative or absolute.
@umbracoApplicationUrl
The url of the Umbraco application. By default, Umbraco will figure it out from the first request.
Configure it here if you need anything specific. Needs to be a complete url with scheme and umbraco
@@ -242,4 +251,17 @@
umbracoApplicationUrl="">
+
+
diff --git a/src/Umbraco.Web.UI/config/umbracoSettings.config b/src/Umbraco.Web.UI/config/umbracoSettings.config
deleted file mode 100644
index 454da921e7a6..000000000000
--- a/src/Umbraco.Web.UI/config/umbracoSettings.config
+++ /dev/null
@@ -1,267 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- 1
-
-
-
-
-
-
-
- your@email.here
-
-
-
-
-
-
-
- …
-
-
-
-
-
-
-
- ]]>
-
-
-
- throw
-
-
- ashx,aspx,ascx,config,cshtml,vbhtml,asmx,air,axd,swf,xml,xhtml,html,htm,php,htaccess
-
-
- assets/img/login.jpg
-
-
-
-
-
- false
-
- true
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Umbraco.Web/Install/InstallStepCollection.cs b/src/Umbraco.Web/Install/InstallStepCollection.cs
index 125572fef89c..240a1dae8e4f 100644
--- a/src/Umbraco.Web/Install/InstallStepCollection.cs
+++ b/src/Umbraco.Web/Install/InstallStepCollection.cs
@@ -21,6 +21,7 @@ public InstallStepCollection(InstallHelper installHelper, IEnumerable().First(),
a.OfType().First(),
a.OfType().First(),
+ a.OfType().First(),
a.OfType().First(),
a.OfType().First(),
a.OfType().First(),
diff --git a/src/Umbraco.Web/Install/InstallSteps/TelemetryIdentifierStep.cs b/src/Umbraco.Web/Install/InstallSteps/TelemetryIdentifierStep.cs
new file mode 100644
index 000000000000..92fe70f7c50d
--- /dev/null
+++ b/src/Umbraco.Web/Install/InstallSteps/TelemetryIdentifierStep.cs
@@ -0,0 +1,78 @@
+using System;
+using System.IO;
+using System.Threading.Tasks;
+using System.Xml.Linq;
+using Umbraco.Core.Configuration.UmbracoSettings;
+using Umbraco.Core.IO;
+using Umbraco.Core.Logging;
+using Umbraco.Web.Install.Models;
+
+namespace Umbraco.Web.Install.InstallSteps
+{
+ [InstallSetupStep(InstallationType.NewInstall | InstallationType.Upgrade,
+ "TelemetryIdConfiguration", 0, "",
+ PerformsAppRestart = false)]
+ internal class TelemetryIdentifierStep : InstallSetupStep