> For the complete documentation index, see [llms.txt](https://clients.medianova.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://clients.medianova.com/products/performance-cdn/dynamic-content-acceleration/create-dynamic-resource.md).

# Create Dynamic Resource

A **Dynamic Resource** uses **Aksela**, Medianova's dynamic content acceleration platform, to optimize the delivery of HTML pages, APIs, and other frequently changing content.

By operating between your origin server and end users, Aksela reduces origin load through micro-caching while improving response times and applying CDN acceleration, connection optimization, and security features at the edge. Additional protection can be provided through the Web Application Firewall (WAF).

### When to Use a Dynamic Resource

Use a Dynamic Resource for:

* Dynamic websites
* HTML page delivery
* REST and GraphQL APIs
* Personalized or frequently changing content
* Micro-caching of cacheable dynamic responses
* Applications that benefit from origin acceleration

{% hint style="info" %}
For images, CSS, JavaScript, web fonts, and other static assets, use a [**Small CDN Resource**](/products/performance-cdn/static-content-delivery/create-small-cdn-resource.md).
{% endhint %}

{% hint style="info" %}
For large downloadable files or live streaming workloads, use a [**Large CDN Resource**](/products/performance-cdn/static-content-delivery/create-large-cdn-resource.md).
{% endhint %}

{% hint style="info" %}
For on-demand video that requires adaptive bitrate packaging, use a [**VOD Resource**](/products/performance-cdn/static-content-delivery/create-vod-resource.md).
{% endhint %}

{% hint style="warning" %}
Your **Website URL** and **Origin URL** should not be identical.

If your origin is configured by IP address instead of hostname, configure the appropriate **Host Header** after creating the Dynamic Resource so that your origin receives the expected hostname.

If your DNS provider does not support root-domain CNAME records, use a subdomain (for example, `www.example.com`) or an **ANAME** or **ALIAS** record if supported by your DNS provider.
{% endhint %}

If your origin is configured by IP address instead of hostname, configure the appropriate **Host Header** after creating the Dynamic Resource so that your origin receives the expected hostname.

If your DNS provider does not support root-domain CNAME records, use a subdomain (for example, `www.example.com`) or an **ANAME** or **ALIAS** record if supported by your DNS provider.

## Create a Dynamic Resource

Create and manage **Dynamic CDN Resources** from the [**Medianova Control Panel**](https://cloud.medianova.com).&#x20;

Navigate to **CDN** and select **Create CDN Resource** to launch the **Create CDN** wizard.

{% stepper %}
{% step %}

### Select the Resource Type

Navigate to **CDN** and click **Create CDN Resource**.

The **Create CDN** wizard opens.

<figure><img src="/files/JYXIIbbsZxDj7G2IjEA5" alt=""><figcaption></figcaption></figure>

Select **Dynamic CDN**, then click **Create** to continue.
{% endstep %}

{% step %}

### Name the Resource

Provide the information used to identify the Dynamic Resource.

#### Resource Name

Enter a unique resource name.

The resource name becomes part of the default CDN hostname.

Example:

```
example.sm.mncdn.com
```

#### Internal Label (Optional)

Optionally assign a private label to help your team identify and manage the resource.

Internal labels are used only within the Control Panel and for API filtering. They do not affect the public CDN hostname.

Click **Next**.
{% endstep %}

{% step %}

### Configure Your Source

Specify where Aksela should retrieve your application content.

#### Website URL

Enter the public website URL that users will access through the CDN.

This hostname represents the website accelerated by the Dynamic Resource.

#### Customer Origin

Dynamic Resources retrieve content from your own origin infrastructure.

Click **Add Origin** to configure one or more origin servers.

The origin list displays:

<table><thead><tr><th width="140.3333740234375">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Host</strong></td><td>Origin hostname or IP address.</td></tr><tr><td><strong>Protocol</strong></td><td>HTTP or HTTPS used for CDN-to-origin communication.</td></tr><tr><td><strong>Priority</strong></td><td>Determines the order in which origins are selected.</td></tr><tr><td><strong>Weight</strong></td><td>Controls traffic distribution between origins with the same priority.</td></tr></tbody></table>

Multiple origins can be configured to improve availability.

#### Add Origin

Configure the origin server using the following fields.

<table><thead><tr><th width="219">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Protocol</strong></td><td>HTTP or HTTPS used when connecting to the origin.</td></tr><tr><td><strong>Domain or IP Address</strong></td><td>Hostname or IP address of the origin server.</td></tr><tr><td><strong>HTTP Port</strong></td><td>Port used for HTTP connections.</td></tr><tr><td><strong>HTTPS Port</strong></td><td>Port used for HTTPS connections.</td></tr><tr><td><strong>Host Header</strong> <em>(Optional)</em></td><td>Overrides the Host header sent to the origin server.</td></tr><tr><td><strong>Origin SNI Request</strong> <em>(Optional)</em></td><td>Specifies the hostname presented during the TLS handshake with the origin.</td></tr><tr><td><strong>Priority</strong></td><td>Determines the order in which origins are selected.</td></tr><tr><td><strong>Weight</strong></td><td>Controls traffic distribution between origins with the same priority.</td></tr></tbody></table>

#### S3 Presigned Authentication (Optional)

Enable **S3 Presigned Authentication** when the origin is an Amazon S3-compatible storage service that requires Signature Version 4 authentication.

Configure the following fields:

<table><thead><tr><th width="287">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Access Key</strong></td><td>Access key used to authenticate requests.</td></tr><tr><td><strong>Secret Key</strong></td><td>Secret key associated with the access key.</td></tr><tr><td><strong>Region</strong></td><td>AWS region containing the bucket.</td></tr><tr><td><strong>Bucket Name</strong></td><td>Name of the bucket containing the objects.</td></tr></tbody></table>

Click **Next**.
{% endstep %}

{% step %}

### Configure SSL/TLS

Choose how HTTPS should be configured for the Dynamic Resource.

Available options:

* **Use Existing SSL**
* **Add Own SSL**
* **Free SSL**
* **Skip for Now**

#### Use Existing SSL

Assign an SSL certificate that already exists in your account.

Only certificates available in the current account are listed.

#### Add Own SSL

Upload or paste your own certificate and private key.

Supported methods:

* Domain SSL
* Paste `.crt` and `.key`
* Upload Files
* `.pfx` / PKCS#12

For certificate upload and domain configuration, see [**CNAME & SSL**](/products/performance-cdn/static-content-delivery/advanced-configuration/cname-and-ssl.md).

#### Free SSL

Request a free Let's Encrypt certificate using DNS validation.

Coverage options:

* Single Domain
* Wildcard

Wildcard certificates require CNAME validation.

For the complete provisioning process, see [**Use Free SSL Certificates**](/products/security/ssl-tls-encryption/use-free-ssl-certificates.md).

#### Skip for Now

Continue without assigning a dedicated certificate.

The default CDN hostname remains accessible over HTTPS using Medianova's shared certificate. A dedicated certificate can be assigned later from **Settings →** [**SSL & TLS**](/products/security/ssl-tls-encryption.md).

For [Upload and Manage SSL Certificates](/products/security/ssl-tls-encryption/upload-and-manage-ssl-certificates.md)

Click **Next**.
{% endstep %}

{% step %}

### Review & Activate

Review the configuration before creating the Dynamic Resource.

The summary includes:

* Resource information
* Source configuration
* SSL/TLS configuration
* Deployment information

When the configuration is valid, click **Create Resource**.

Dynamic Resources are typically provisioned within **30 seconds**.
{% endstep %}
{% endstepper %}

## Validate Dynamic Delivery

Verify connectivity by requesting an existing page through the CDN hostname.

```c
curl -svo /dev/null "https://example.sm.mncdn.com/" --compressed
```

Replace `example.sm.mncdn.com` with your Dynamic Resource hostname.

The command sends an HTTP `GET` request to the CDN, displays the connection details and HTTP request and response headers, and discards the response body.

Use a URL that returns **HTTP 200 OK**. If a custom CNAME is configured, validate the custom hostname instead of the default MNCDN hostname.

## Troubleshooting

If the resource does not serve content correctly:

* Verify that the origin server is reachable.
* Confirm that the configured HTTP or HTTPS ports are accessible.
* Verify that the Website URL and Origin URL are configured correctly.
* Confirm that custom CNAME records have propagated before testing the custom hostname.
* Verify that the assigned SSL certificate is active and covers the requested domain.
* If S3 Presigned Authentication is enabled, verify the configured access key, secret key, region, and bucket name.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://clients.medianova.com/products/performance-cdn/dynamic-content-acceleration/create-dynamic-resource.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
