İçeriğe geç
🛠️ToolsShed

HTTP Cache Header Generator

Yönergeler açıklanmış Cache-Control başlıklarını görsel olarak oluşturun.

Oluşturulan Başlık

Cache-Control: (none)

Ön Ayarlar

Bu araç hakkında

Cache-Control başlığı, tarayıcıların, CDN'lerin ve proxy'lerin içeriği nasıl depoladığını ve yeniden kullandığını kontrol eden HTTP önbelleğinin temel bir parçasıdır. Bunu doğru şekilde yapılandırmak web performansı için gereklidir — yanlış yapılandırma, eski içeriğin kullanıcılara sunulmasına veya önbellek kaçakları nedeniyle gereksiz sunucu yüküne neden olabilir. Ancak sözdizimi karmaşıktır ve birden çok yönergenin etkileşimleri genellikle deneyimli geliştiricileri bile karıştırır.

Bu araç, Cache-Control başlıkları için görsel bir oluşturucu sağlayarak, tek tek yönergeleri açıp kapatabilir ve oluşturulan başlığı gerçek zamanlı olarak görebilirsiniz. `public, max-age=3600, s-maxage=7200, stale-while-revalidate=86400` gibi sözdizimini ezberlemenin yerine, sezgisel bir arayüz aracılığıyla seçenekleri seçer ve son başlığı doğrudan HTTP yanıtlarınıza kopyalarsınız. Yaygın senaryolar için ön ayarlı şablonlar — statik varlıklar, API uç noktaları, HTML sayfaları ve CDN tarafından önbelleğe alınan içerik — tahminde bulunmadan yapılandırmanızı başlatır.

Web geliştiricileri, DevOps mühendisleri ve arka uç uzmanları bu aracı önbellek sorunlarını hata ayıklamak, CDN önbelleğe alma ilkelerini ayarlamak veya farklı yönergelerin nasıl etkileşimde bulunduğunu öğrenmek için çok değerli bulacaklardır. Oluşturulan başlık doğrudan sunucu yanıtlarınıza (Express.js, FastAPI, Java, Go, vb.) kopyalanabilir, el ile yazma hatalarını ortadan kaldırır ve önbelleğe alma stratejisi uygulamasını hızlandırır.

Sıkça Sorulan Sorular

Kod Uygulaması

from flask import Flask, make_response, send_file
import hashlib
import time

app = Flask(__name__)

@app.route('/static/asset')
def serve_immutable_asset():
    """Cache forever — content-hashed file (e.g., bundle.abc123.js)"""
    response = make_response("asset content")
    response.headers['Cache-Control'] = 'public, max-age=31536000, immutable'
    return response

@app.route('/api/data')
def serve_api_data():
    """Short-lived private API response with ETag"""
    data = "dynamic content"
    etag = hashlib.md5(data.encode()).hexdigest()

    response = make_response(data)
    response.headers['Cache-Control'] = 'private, max-age=60'
    response.headers['ETag'] = f'"{etag}"'
    return response

@app.route('/page')
def serve_page():
    """HTML page: always check freshness, cache 10 minutes"""
    response = make_response("<html>...</html>")
    response.headers['Cache-Control'] = 'public, max-age=600, must-revalidate'
    response.headers['Last-Modified'] = 'Mon, 01 Jan 2024 00:00:00 GMT'
    return response

@app.route('/auth')
def serve_auth_page():
    """Never cache sensitive pages"""
    response = make_response("sensitive content")
    response.headers['Cache-Control'] = 'no-store'
    return response

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.