Nginx - Sajikan konten statis dari domain yang tidak memiliki cookie

11

Saya menggunakan ekstensi " kecepatan halaman " untuk Firebug untuk mencoba mengoptimalkan situs web dan saat ini saya sedang mengerjakan saran berikut: " Sajikan konten statis dari domain tanpa masak ".

Saya telah membuat sub-domain yang terpisah untuk beberapa konten sehingga saya miliki www.example.comdan images.example.comtetapi bagaimana cara menentukan yang images.example.comtidak bisa memasak? Dapatkah saya menegakkan bahwa itu tidak bisa dimasak dalam server web seperti Nginx atau Apache atau apakah itu hanya masalah memastikan untuk tidak menetapkan cookie apa pun di domain ini dalam kode sisi server (misalnya PHP)?

Alasan mengapa saya bertanya adalah karena "Kecepatan Halaman" masih menunjukkan rekomendasi yang sama bahkan setelah saya mencoba memperbaikinya - jadi saya kira beberapa cookie pasti telah lolos. Saya tidak bisa melihat cookie apa pun di pencarian cookie browser saya, tetapi jika saya memeriksa header HTTP sumber daya saya bisa melihat:

Cookie  __utma=73051794.676740941.1271792323.1277710025.1277900715.20; __utmz=73051794.1271792323.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmx=73051794.00009825591030858779:3:0; __utmxx=73051794.00009825591030858779:2295429:2592000; __gads=ID=0a768e3407302ff8:T=1272608001:S=ALNI_MZ-GKhg3ETniU0TVftk0DdGyUypkQ

Adakah yang tahu bagaimana saya bisa menghentikan cookie dari sub-domain saya?

Tom
sumber

Jawaban:

11

Cookie yang Anda sebutkan diatur oleh Google Analytics, biasanya ditetapkan berdasarkan domain-luas untuk mencakup semua subdomain.

Nginx tidak dapat membuat browser tidak mengirim cookie apa pun, tidak ada bagian dari spesifikasi HTTP yang memungkinkan server web untuk mengatakan itu tidak tertarik pada cookie sehingga browser akan selalu mengirimnya. Banyak situs terbesar tempat saran ini penting, gunakan domain yang sepenuhnya terpisah untuk file statis - seperti yimg.com untuk yahoo.

Martin Fjordvald
sumber
Terima kasih Martin, ini masuk akal dan sangat berguna bagi saya :-)
Tom
14

Berikut ini adalah artikel yang bermanfaat yang juga membahas cara menggunakan sub- domain tanpa masak: http://www.ravelrumba.com/blog/static-cookieless-domain/ .

Untuk menyiapkan subdomain tanpa masak, Anda harus memastikan bahwa server atau aplikasi Anda hanya menetapkan cookie untuk www.example.com dan bukan example.com tingkat atas. (Cookie yang diatur pada domain tingkat atas berlaku untuk semua subdomain juga.) Bagaimana Anda melakukannya tentu saja tergantung pada pengaturan khusus Anda. Tetapi dua setter cookie umum adalah Google Analytics dan WordPress. Untuk Google Analytics, Anda harus menyetel nilai " _setDomainName" ke domain www Anda . Seperti ini:

_gaq.push(
    ['_setAccount', 'UA-xxxxxxx-1'],
    ['_setDomainName', 'www.example.com'],
    ['_trackPageview']
);
Tom
sumber