> 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/static-content-delivery/create-small-cdn-resource.md).

# Create Small CDN Resource

A Small CDN Resource is designed for delivering static web assets such as images, CSS, JavaScript, and web fonts.&#x20;

Content is cached and served from Medianova's global edge network to reduce latency, improve website performance, and offload requests from your origin infrastructure.

You can configure a Small CDN Resource to:

* Fetch content from your own infrastructure (**Customer Origin**)
* Serve content stored in [**Stook Object Storage**](/products/object-storage-stook/stook-cloud-object-storage.md) (**Origin Push**)

{% hint style="info" %}
The Create CDN wizard provides a guided workflow for selecting the resource type, configuring the source and SSL settings, reviewing the configuration, and deploying the resource.&#x20;

Configuration is saved automatically as a draft until the resource is created or discarded.
{% endhint %}

### When to use a Small CDN Resource

Use a Small CDN Resource for static website assets, including:

* Images
* CSS files
* JavaScript files
* Web fonts
* Other static website resources

{% hint style="info" %}
If your content includes any of these extensions, create a [**Large CDN Resource**](/products/performance-cdn/static-content-delivery/create-large-cdn-resource.md) (for large downloads or live streaming) or a [**VOD Resource**](/products/performance-cdn/static-content-delivery/create-vod-resource.md) (for on-demand video) instead.
{% endhint %}

{% hint style="warning" %}
**Unsupported file extensions**\
Small CDN Resources do **not** support the following file extensions.\
Requests for these file types return **HTTP** **403 Forbidden** responses.\
`3gp, 3gpp, aac, asf, asx, avi, f4v, flv, m2p, m4a, m4v, midi, mov, mp3, mp4, mpeg, mpg, ogg, ogv, wav, wm`
{% endhint %}

## Create a Small CDN Resource

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

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

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

The Create CDN wizard opens as an overlay without leaving the current page.

{% stepper %}
{% step %}

### Select the Resource Type

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

The **Create CDN** wizard opens.

<figure><img src="/files/58Jy7t3EXuzCTM8szc1S" alt=""><figcaption></figcaption></figure>

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

{% step %}

### Enter the Resource Name

Provide the information required to identify the CDN Resource.

**Resource Name**

Enter a unique resource name.

The resource name is used to generate the default CDN hostname.

Example:

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

**Internal Label (Optional)**

Enter an internal label to help identify the resource.

{% hint style="info" %}
Optionally assign a private label to help your team identify and manage the resource. Internal labels are used only within the Control Panel and API filtering and do not affect the public hostname.
{% endhint %}

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

{% step %}

### Configure Your Source

Select where the CDN should retrieve content from. You can use your own origin infrastructure or content stored in Medianova Stook Object Storage.

**Customer Origin**

Select **Customer Origin** to use your own web server, application server, load balancer, or storage endpoint as the origin.

Click **Add Origin**.

The **Add Origin** dialog opens.

Configure the following fields:

<table><thead><tr><th width="271">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Protocol</strong></td><td>Select the protocol used for connections from the CDN to the origin. Available options are <strong>HTTP</strong>, <strong>HTTPS</strong>, and <strong>Same as Request</strong>. <strong>Same as Request</strong> uses the protocol of the incoming client request.</td></tr><tr><td><strong>Domain or IP Address</strong></td><td>Enter the hostname or IP address of the origin server. Do not include the protocol or a URL path.</td></tr><tr><td><strong>HTTP Port</strong></td><td>Enter the port used for HTTP origin connections. The default value is <code>80</code>.</td></tr><tr><td><strong>HTTPS Port</strong></td><td>Enter the port used for HTTPS origin connections. The default value is <code>443</code>.</td></tr><tr><td><strong>Host Header</strong> <em>(Optional)</em></td><td>Specify the value sent in the HTTP <code>Host</code> request header. Leave this field blank to use the configured origin domain.</td></tr><tr><td><strong>Origin SNI Request</strong> <em>(Optional)</em></td><td>Specify the hostname sent through Server Name Indication during the TLS handshake with an HTTPS origin. Leave this field blank to use the configured origin domain.</td></tr><tr><td><strong>Priority</strong></td><td>Set the origin priority. Select <strong>Primary</strong> for an origin that should actively receive requests.</td></tr><tr><td><strong>Weight</strong></td><td>Define how traffic is distributed between origins with the same priority. Supported values range from <code>1</code> to <code>100</code>; a higher value receives a larger proportion of traffic.</td></tr><tr><td><strong>S3 Presigned Authentication</strong></td><td>Enable this option when the origin requires S3 presigned authentication for CDN-to-origin requests.</td></tr></tbody></table>

{% hint style="info" %}
The **Host Header** and **Origin SNI Request** fields serve different purposes:

* **Host Header** identifies the virtual host in the HTTP request.
* **Origin SNI Request** identifies the requested hostname during the TLS handshake.

For HTTPS origins, ensure that the Origin SNI hostname matches a domain covered by the origin server's SSL certificate.
{% endhint %}

Click **Save Origin**.

The configured origin is added to the resource. Repeat this process to configure additional origin servers.

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

#### Stook Object Storage

Select [**Stook Object Storage**](/products/object-storage-stook/stook-cloud-object-storage.md) to use an existing Stook bucket as the origin for this CDN resource.

Configure the following fields:

<table><thead><tr><th width="189.666748046875">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Storage Bucket</strong></td><td>Select the <a href="/pages/5ojR9dKd97A8AataulOs">Stook bucket</a> that contains the content to be served through the CDN.</td></tr><tr><td><strong>Subfolder</strong> <em>(Optional)</em></td><td>Restrict the origin to a specific folder within the selected bucket. Only objects under this path are served by the CDN.</td></tr></tbody></table>
{% endstep %}

{% step %}

### Configure SSL/TLS

Choose how HTTPS should be configured for your CDN resource.

Select one of the following certificate 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.

#### Configuration

* Select a certificate from the list.
* Continue to the next step.

{% hint style="info" %}
Only certificates available in your account are listed. To create a new certificate, select [**Add Own SSL**](/products/performance-cdn/static-content-delivery/advanced-configuration/cname-and-ssl.md) or [**Free SSL**](/products/security/ssl-tls-encryption/use-free-ssl-certificates.md).
{% endhint %}

#### Add Own SSL

Create a new certificate by uploading your own certificate files.&#x20;

For detailed certificate upload instructions, see [**CNAME & SSL**.](/api-documentation/performance-cdn/cname-and-ssl.md)

#### Required fields

* SSL Certificate Name
* Certificate format
* Domain

Supported formats:

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

#### Free SSL

Provision a free Let's Encrypt certificate. See [**Use Free SSL Certificates**](/products/security/ssl-tls-encryption/use-free-ssl-certificates.md)

#### Required fields

* SSL Certificate Name
* Domain
* Coverage
  * Single Domain
  * Wildcard

{% hint style="info" %}
Wildcard certificates require DNS (CNAME) validation.
{% endhint %}

#### Skip for Now

Continue without assigning a dedicated certificate.

The CDN is created using Medianova's shared SSL certificate for the default MNCDN hostname.

{% hint style="info" %}
If you later configure a custom domain, you can assign a dedicated certificate from **Settings →** [**SSL & TLS**](/products/security/ssl-tls-encryption.md).
{% endhint %}
{% endstep %}

{% step %}

### Review & Activate

Review your resource configuration before creating the CDN resource. All settings can be modified later from the Control Panel.

The summary includes:

<table><thead><tr><th width="137.6666259765625">Section</th><th>Description</th></tr></thead><tbody><tr><td><strong>Resource</strong></td><td>Displays the selected resource type, CDN hostname, and internal label.</td></tr><tr><td><strong>Source</strong></td><td>Shows the selected origin type, primary origin, and origin protocol.</td></tr><tr><td><strong>SSL / TLS</strong></td><td>Displays the selected certificate method and assigned certificate, if applicable.</td></tr><tr><td><strong>Propagation</strong></td><td>Shows the CDN hostname that will be provisioned and the protocol that will be served.</td></tr></tbody></table>

If the configuration is valid, a confirmation message indicates that the resource is ready to deploy.

Click **Create Resource** to provision the CDN resource.

{% hint style="success" %}
New CDN resources are typically provisioned within **30 seconds**.
{% endhint %}
{% endstep %}
{% endstepper %}

## Validate CDN Delivery

After the resource is created, verify that the CDN is serving content.

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

Replace `example.mncdn.com` with your CDN hostname or custom CNAME.

The requested URL should return **HTTP 200 OK**.

This command:

* Sends an HTTP GET request to the CDN endpoint.
* Displays the remote IP address.
* Displays the HTTP request and response headers.
* Discards the response body.

If validation fails:

* Verify that the origin server is reachable.
* Verify that the configured origin port is accessible.
* Verify that the requested path exists on the origin.

## Troubleshooting

* Verify that the origin server is reachable from the CDN.
* Confirm that the configured origin port is open.
* Ensure DNS changes have propagated before testing a custom CNAME.
* Verify that the assigned SSL certificate matches the requested hostname.
* Confirm that the origin serves the requested content and returns the expected response.


---

# 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/static-content-delivery/create-small-cdn-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.
