Skip to content

Commit c898e62

Browse files
committed
docs(cdn): redesigned the CDN articles and keep them up-to-date
1 parent fc195f9 commit c898e62

File tree

3 files changed

+50
-196
lines changed

3 files changed

+50
-196
lines changed

controls/scriptmanager/cdn-support/custom-cdn-provider.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ If you want to use your own **CDN provider** to host the Telerik UI for ASP.NET
6363
Now the HTML output of the scripts tag will be like this:
6464

6565
````HTML
66-
<script src="http://my.favorite.cdn/ajaxz/2025.2.609/Common/Core.js" type="text/javascript"></script>
67-
<script src="http://my.favorite.cdn/ajaxz/2025.2.609/Common/jQuery.js" type="text/javascript"></script>
68-
<script src="http://my.favorite.cdn/ajaxz/2025.2.609/Common/jQueryPlugins.js" type="text/javascript"></script>
69-
<script src="http://my.favorite.cdn/ajaxz/2025.2.609/Common/Scrolling/ScrollingScripts.js" type="text/javascript"></script>
66+
<script src="https://my.favorite.cdn/ajaxz/2025.2.609/Common/Core.js" type="text/javascript"></script>
67+
<script src="https://my.favorite.cdn/ajaxz/2025.2.609/Common/jQuery.js" type="text/javascript"></script>
68+
<script src="https://my.favorite.cdn/ajaxz/2025.2.609/Common/jQueryPlugins.js" type="text/javascript"></script>
69+
<script src="https://my.favorite.cdn/ajaxz/2025.2.609/Common/Scrolling/ScrollingScripts.js" type="text/javascript"></script>
7070
...
7171
````
7272

@@ -79,10 +79,8 @@ For more detailed instructions, check out the Configure Local CDN for Telerik UI
7979
<iframe width="560" height="315" src="https://www.youtube.com/embed/iPcvj7Vl5TM" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
8080

8181

82-
> If you are using a non-IIS CDN hosting service configuration might be different.
82+
> If you are using a non-IIS CDN hosting service configuration can be different.
8383
8484
# See Also
8585

86-
* [CDN Support Overview]({%slug scriptmanager/cdn-support/overview%})
87-
88-
* [Code Library example: CDN Fallback](https://www.telerik.com/support/code-library/cdn-fallback)
86+
* [CDN Support Overview]({%slug scriptmanager/cdn-support/overview%})

controls/scriptmanager/cdn-support/overview.md

Lines changed: 22 additions & 115 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,12 @@ position: 0
1010

1111
# CDN Support Overview
1212

13-
14-
15-
Starting with the **Q3 2009 Service Pack 1** release you will be able to load the controls scripts and skins from the Telerik CDN. Telerik CDN is hosted on the Amazon CloudFront service. This is a **global content delivery service** with edge locations in the US, Europe and Asia.
13+
Telerik UI for ASP.NET AJAX supports loading control scripts and skins from the Telerik CDN. This functionality has been available since Q3 2009 SP1 and is included in all supported versions. Telerik CDN is hosted on the Amazon CloudFront service. This is a **global content delivery service** with edge locations in the US, Europe and Asia.
1614

1715
Using the Content Delivery Network has a number of advantages:
1816

1917
* **Reduced latency** – requests will be automatically redirected to the nearest server
2018

21-
* **Compressed output** - the javascript files are already compressed so they are in minimum size
22-
2319
* **Better use of caching** – each resource only needs to be downloaded once
2420

2521
* **Reduced hosting expenses** – we host the resources for you so you can pay less
@@ -28,15 +24,13 @@ Using the Content Delivery Network has a number of advantages:
2824
>
2925
3026

31-
32-
33-
**Caching** is what a CDN is all about. Say you have a number of applications that all utilize RadGrid. A customer will load the RadGrid scripts just once and then use the cached version until he clears his browser’s cache. Proxies will also aggressively cache these resources.
27+
**Caching** is what a CDN is all about. Say you have a number of applications that all utilize RadGrid. A customer will load the RadGrid scripts just once and then use the cached version until they clear the browser cache. Proxies will also aggressively cache these resources.
3428

3529
## When NOT to use CDN?
3630

37-
* Intranet applications in particular are a bad candidate for it. Your Intranet is likely to be a lot faster than any type of CDN. You’ll also lose the ability to run your application without an Internet connection.
31+
* Intranet scenarios often do not benefit from external CDNs, as internal networks can provide lower latency and do not depend on external connectivity.
3832

39-
* When you are using a latest internal build (not an official one).
33+
* When you are using an internal build (not an official one).
4034

4135
## How to enable Telerik CDN
4236

@@ -46,7 +40,6 @@ The **RadStyleSheetManager** has the same configuration for enabling the Telerik
4640
>
4741
* Official Major Releases
4842
* Official Service Packs
49-
* BETA releases>
5043

5144

5245
1. Make sure you are using Telerik.Web.UI version 2009.3.1207 (**Q3 2009 SP1**) or later.
@@ -60,14 +53,15 @@ The **RadStyleSheetManager** has the same configuration for enabling the Telerik
6053
CdnSettings-TelerikCdn="Enabled">
6154
</telerik:RadScriptManager>
6255
63-
<telerik:RadStyleSheetManager runat="server" ID="RadStyleSheetManager1"
56+
<telerik:RadStyleSheetManager
57+
ID="RadStyleSheetManager1"
58+
runat="server"
6459
CdnSettings-TelerikCdn="Enabled">
6560
</telerik:RadStyleSheetManager>
6661
6762
````
6863

6964

70-
7165
Another way to set that property is to use the composite **<CdnSettings>** property of RadScriptManager:
7266

7367
````ASPNET
@@ -77,7 +71,9 @@ Another way to set that property is to use the composite **<CdnSettings>** prope
7771
<CdnSettings TelerikCdn="Enabled" />
7872
</telerik:RadScriptManager>
7973
80-
<telerik:RadStyleSheetManager runat="server" ID="RadStyleSheetManager1">
74+
<telerik:RadStyleSheetManager
75+
ID="RadStyleSheetManager1"
76+
runat="server">
8177
<CdnSettings TelerikCdn="Enabled" />
8278
</telerik:RadStyleSheetManager>
8379
````
@@ -94,138 +90,49 @@ Moreover, you can enable the CDN support **globally** by adding the following ke
9490
````
9591

9692

97-
9893
Note, that the second line will enable the [CDN support for the CSS and image files]({%slug stylesheetmanager/cdn-support/overview%}) for the skins.
9994

10095
## How are my users affected?
10196

102-
The Telerik CDN uses the following host names for loading the control resources.
103-
104-
* **http://aspnet-scripts.telerikstatic.com** - for the scripts;
105-
106-
* **http://aspnet-skins.telerikstatic.com** - for the skins (css and images);
107-
108-
Your users need to have access to the above URLs.
109-
110-
>note Check the [CDN Troubleshooting - Links to web resources are non-secure although the page is requested through SSL]({%slug scriptmanager/troubleshooting/cdn%}) for issues with pages loaded over HTTPS that still request the HTTP CDN scripts.
111-
112-
113-
## What about SSL?
114-
115-
When a SSL connection is used RadScriptManager and RadStyleSheetManager will use the native Amazon CloudFront distribution hosts:
97+
When CDN support is enabled (`EnableCdn="true"` or `<CdnSettings TelerikCdn="Enabled" />`), the RadScriptManager and RadStyleSheetManager render CDN URLs that match the page protocol (HTTP or HTTPS). The CDN does not switch protocols on its own; the framework renders URLs based on the page request scheme, and modern browsers may upgrade requests to HTTPS (HSTS, corporate policies, etc.). Telerik provides distinct host names for each protocol.
11698

117-
* **https://d2i2wahzwrm1n5.cloudfront.net** - for the scripts;
99+
Active CDN host names:
118100

119-
* **https://d35islomi5rx1v.cloudfront.net** - for the skins (css and images);
101+
CloudFront (HTTPS pages):
102+
* **https://d2i2wahzwrm1n5.cloudfront.net** – scripts
103+
* **https://d35islomi5rx1v.cloudfront.net** – skins (CSS and images)
120104

105+
TelerikStatic (supports both HTTP and HTTPS):
106+
* **http://aspnet-scripts.telerikstatic.com** / **https://aspnet-scripts.telerikstatic.com** – scripts
107+
* **http://aspnet-skins.telerikstatic.com** / **https://aspnet-skins.telerikstatic.com** – skins (CSS and images)
121108

122109

123-
## Detailed information with an example
124-
125-
Let's add some RadControls on the page (RadMenu, RadTabStrip, RadListBox) and RadScriptManager with enabled CDN support. When you run the page you will observe the following:
126-
127-
1. RadScriptManager combined the **MicrosoftAjax.js** and **MicrosoftAjaxWebForms.js** into a single compressed axd resource.
128-
129-
2. The Core.js, jQuery.js and all the scripts needed for the RadControls are loaded from the CDN network. If the browser supports compression (the request has **Accept-Encoding** HTTP header set to *gzip,deflate*) then the files are served **compressed**. The compression is done before uploading of the files to the CDN network, so there are no CPU cycles on the server to compress at run-time. If the browser is **IE6** then the files are served **uncompressed** (from another URL) that is because earlier versions of the browser has problems with decompressing the output.
130-
131-
Here is how the html output looks like:
132-
133-
````HTML
134-
<script src="/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=RadScriptManager1_TSM&amp;compress=1&amp;_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d3.5.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-US%3a0d787d5c-3903-4814-ad72-296cea810318%3aea597d4b%3ab25378d2" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/Common/Core.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/Common/jQuery.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/Common/jQueryPlugins.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/Common/Scrolling/ScrollingScripts.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/Common/Navigation/NavigationScripts.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/Menu/RadMenuScripts.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/TabStrip/RadTabStripScripts.js" type="text/javascript"></script><script src="https://aspnet-scripts.telerikstatic.com/ajaxz/2009.3.1203/ListBox/RadListBoxScripts.js" type="text/javascript"></script>
135-
````
136-
137-
138-
139-
Note that scripts from the CDN are placed in the **/ajaxz/** folder - this means that the compressed file is downloaded. If your browser does not support content encoding (or it is IE6) then you will notice that the scripts are loaded from the **/ajax/** folder.
140-
110+
These CDN endpoints are certificate-enabled and served over secure HTTPS. The actual domain used is selected automatically by the framework based on protocol and browser behavior. Do not hard-code CDN URLs; always rely on the built-in CDN support.
141111

112+
> Note: If your environment uses firewalls, proxies, or strict corporate security policies, ensure the Telerik CDN domains are allowed. Otherwise, disable CDN support to serve resources locally.
142113
143114
## More Optimizations
144115

145-
To further optimize the load of the scripts you can download the **MicrosoftAjax.js** file from the Microsoft CDN (valid for **.NET 3.5** only):
146-
147-
````ASPNET
148-
<telerik:RadScriptManager
149-
ID="RadScriptManager1"
150-
runat="server">
151-
<CdnSettings TelerikCdn="Enabled" />
152-
<Scripts>
153-
<asp:ScriptReference
154-
Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
155-
Name="MicrosoftAjax.js"
156-
Path="http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.js" />
157-
</Scripts>
158-
</telerik:RadScriptManager>
159-
````
160-
161-
162-
163-
164-
165-
## Recommended setup
166-
167-
## ASP.NET 4.0 and above
116+
To further optimize the load of the scripts you can download the Microsoft ASP.NET AJAX scripts from the Microsoft CDN by setting EnableCdn="true":
168117

169118
````ASPNET
170119
<telerik:RadScriptManager
171120
runat="server"
172121
ID="RadScriptManager1"
173122
EnableCdn="true">
174-
</telerik:RadScriptManager>
175-
<telerik:RadStyleSheetManager
176-
runat="server"
177-
ID="RadStyleSheetManager1">
178123
<CdnSettings TelerikCdn="Enabled" />
179-
</telerik:RadStyleSheetManager>
180-
````
181-
182-
183-
184-
All ASP.NET scripts and Telerik resources are served from the respective CDNs.
185-
186-
187-
188-
## ASP.NET 3.5
189-
190-
````ASPNET
191-
<telerik:RadScriptManager
192-
runat="server"
193-
ID="RadScriptManager1">
194-
<CdnSettings TelerikCdn="Enabled" />
195-
<Scripts>
196-
<asp:ScriptReference Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
197-
Name="MicrosoftAjax.js"
198-
Path="http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.js" />
199-
</Scripts>
200124
</telerik:RadScriptManager>
201-
````
202-
203-
204-
205-
Both MS AJAX scripts and Telerik resources will be served from the respective CDNs.
206-
207-
## ASP.NET 2.0
208-
209-
````ASPNET
210-
<telerik:RadScriptManager
211-
runat="server"
212-
ID="RadScriptManager1">
213-
<CdnSettings TelerikCdn="Enabled" />
214-
</telerik:RadScriptManager>
215-
216125
<telerik:RadStyleSheetManager
217126
runat="server"
218127
ID="RadStyleSheetManager1">
219128
<CdnSettings TelerikCdn="Enabled" />
220129
</telerik:RadStyleSheetManager>
221130
````
222131

132+
Both MS AJAX scripts and Telerik resources will be served from the respective CDNs.
223133

224134

225-
The Telerik resources will be loaded from the CDN, MS AJAX will be served by RadScriptManager.
226-
227135

228136
## Additional Resources
229137

230-
* [CDN Fallback to Local Resources](https://www.telerik.com/support/code-library/cdn-fallback)
231138
* [Configure Local CDN](https://www.youtube.com/watch?v=iPcvj7Vl5TM)

0 commit comments

Comments
 (0)