yüksek çözünürlüklü php logosu

PHP ile Cross-Origin Etkinleştirme

CDN yada uzak dizinden dosya kullandıran sitelerdeki en büyük sorun tarayıcıların uzak dizin hatası vermesidir. CDN tarafında tuttuğunuz dosyaları kullanıcılara bu hata yüzünden gösterilmez tarayıcı güvensiz gibi görüp kaynağa ulaşmaz bunu çözmek için ise ya Nginx kurallarına ekleme yapmanız gerekir.

Çoğu zaman bu ekleme bile yeterli gelmez yada çalışmaz header bilgisine tanımladığınız uzak dizin kullanımı tanımı geçmez bu gibi durumlarda PHP kullanarak istenilen domain adreslerinden uzak dizini kabul ettirebiliriz.

<?php
/**
 * Created by PhpStorm.
 * User: mertcan
 * Date: 28.11.2015
 * Time: 22:38
 */

// allowed origins
$allowedOrigins = array(
    '(http(s)://)?(www\.)?my\-domain\.com',
    '(http(s)://)?(www\.)?my\-domain\.com',
    '(http(s)://)?(www\.)?my\-domain\.com'
);

if (isset($_SERVER['HTTP_ORIGIN']) && $_SERVER['HTTP_ORIGIN'] != '') {
    foreach ($allowedOrigins as $allowedOrigin) {
        if (preg_match('#' . $allowedOrigin . '#', $_SERVER['HTTP_ORIGIN'])) {
            header('Access-Control-Allow-Origin: ' . $_SERVER['HTTP_ORIGIN']);
            header('Access-Control-Allow-Methods: GET, PUT, POST, OPTIONS, DELETE');
            header('Access-Control-Max-Age: 1728000');
            header('Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With');
            break;
        }
    }
}

PHP sayesinde header bilgisine belirttiğiniz originsleri ekleyebilirsiniz birden çok domain tanımlaması yapabilirsiniz. Kullanıcılarınız içeriklerinizi sıkıntısız bir şekilde görebilirler

Share this article
Shareable URL
Prev Post

Magento’da Tüm Siparişlerin Temizlenmesi

Next Post

Let’s Encrypt ile Web Server Yapılandırma

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Read next
0
Share