# Create Small CDN Resource

A Small CDN Resource is optimized for **small-sized static assets** such as images, CSS, JavaScript files, and web fonts.\
It delivers these assets through Medianova’s global edge network to reduce latency and minimize load on your origin servers.

You can configure a Small CDN Resource to:

* Fetch content directly from your own server (**Origin Pull**), or
* Serve content hosted on [**Stook Object Storage**](https://clients.medianova.com/products/object-storage-stook) (**Origin Push**).

### When to use a Small CDN Resource

Use a Small CDN Resource **only for static assets**.

For large files, video content, or downloadable media, use [**Large & VOD Streaming Resources**](https://clients.medianova.com/products/performance-cdn/static-content-delivery/create-large-cdn-resource) instead.

### Create a Small CDN Resource

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

If your content includes any of these extensions, create a **Large & VOD Streaming Resource** instead.
{% endhint %}

{% stepper %}
{% step %}

#### Access the Create CDN Resource page.

From the left menu, navigate to **CDN → Create CDN Resource**.
{% endstep %}

{% step %}

#### Select the resource type.

In **Select CDN Resource Type**, choose **Small**.

<figure><img src="https://542970813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtK7oIwmhUHdEJcaH4Hx8%2Fuploads%2FWyiIB6w7pmvKbJZvUYY8%2Fimage.png?alt=media&#x26;token=34818a4e-43f9-4d83-85a9-bc25ba1ba358" alt="" width="563"><figcaption><p>Selecting <strong>Small CDN Resource</strong> in the creation form.</p></figcaption></figure>

{% hint style="info" %}
This option is optimized for static content such as images, CSS, and JavaScript files.
{% endhint %}
{% endstep %}

{% step %}

#### Enter general information.

* Enter a **CDN Resource Name**.\
  This name appears in your default CDN hostname (for example, `example.mncdn.com`).
* (Optional) Enter a **CDN Resource Label** for internal reference.
  {% endstep %}

{% step %}

#### Select the origin type

**Option 1: My Origin (Origin Pull)**

Medianova fetches content directly from your server when users request files.

1. Select **My Origin**.
2. Click **Add** and complete the **Origin Settings**:
   * **Domain or IP**
   * **HTTP Port / HTTPS Port**
   * **Protocol**
   * **Host Header**
   * (Optional) **Origin SNI Request**, **Priority**, and **Weight** if you add multiple origins.

**Option 2: Stook Object Storage (Origin Push)**

Medianova hosts your files on **Stook Object Storage**.

1. Select **Stook Object Storage**.
2. In **Stook Bucket/Path**, choose an existing **Bucket** and optional **Subfolder**.
3. (Optional) Add a **CDN Resource Label** for internal tracking.
   {% endstep %}

{% step %}

#### Create the resource.

The new resource appears in the **CDN Resources** list.

Configuration and availability are indicated by status icons:

* Config Status: A green icon confirms that the configuration is valid.
* Resource Status: A blue toggle indicates that the resource is active and enabled.
  {% endstep %}

{% step %}
**(Optional) Configure your custom domain (CNAME).**

If you want to serve content using your own domain (for example, `cdn.yourdomain.com`) instead of the default hostname (`example.mncdn.com`), configure a **CNAME** record.

{% hint style="info" %}
To use your own domain instead of the default CDN hostname, add a CNAME under the **CNAME & SSL** tab of your CDN Resource.\
For detailed steps, see [CNAME](https://clients.medianova.com/products/performance-cdn/static-content-delivery/advanced-configuration/cname-and-ssl) for CDN Resource.
{% endhint %}
{% endstep %}
{% endstepper %}

* Use **Small** only for static assets. For large files, video, or downloadable content, use **Large & VOD Streaming** instead.
* **Config Status** and **Resource Status** icons confirm that your setup is complete.
* If configuration fails, verify origin accessibility and port settings.

### Validate CDN delivery

After creating the resource, test CDN connectivity using the following command:

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

* Replace `example.mncdn.com` with your CDN URL.\
  Use the **Custom CNAME** if it is configured.
* Use a URL path that returns `200 OK`.
* This command sends a `GET` request to the CDN.
* The output shows:
  * Remote IP address
  * HTTP request and response headers
* The response body is intentionally discarded.

If validation fails, verify that the origin server is reachable and that the configured port is accessible from the CDN.

### **Troubleshooting**

* If configuration fails, verify origin accessibility and port settings.
* Ensure DNS updates (especially Custom CNAME) have propagated before testing.
* For SSL errors, confirm that the certificate matches the domain and is active.
