Komut dosyasını çalıştırmak için yönlendirme kullanma

4 Cevap php

Bu yönlendirme sitede bağlı bir komut dosyası çalıştırmak mümkün olup olmadığını merak ediyordum. Örneğin, bir kullanıcı Facebook siteme erişirse o zaman ben komut aktif olmasını istediğiniz, ancak kullanıcı google arama yoluyla siteyi erişilen eğer komut koştu olmayacaktır. Bu mümkün mü?

4 Cevap

Sen $_SERVER['HTTP_REFERER'] kullanıcı facebook geldiyse görmek ve farklı davranmaya sınamak gerekir.

Eğer bir sunucu tarafında veya istemci tarafı komut dosyası demek?

Istemci tarafında itibaren document.referrer (evet, bir iki 'r' ile, gelen HTTP başlığı yanlış yazılmış olsa bile) yoluyla yönlendirme erişebilirsiniz. örn.:

if (document.referrer.toLowerCase().indexOf('//www.example.com')) {
    document.getElementById('message').innerHTML= 'Hello, visitor from example.com';
}

Bu mümkün. Sadece referer sahte olabilir aklınızda, bu yüzden kendi değerine göre güvenlik alakalı şeyler yapmak asla.

Ben böyle bir şey yapardı:

if (array_key_exists('HTTP_REFERER', $_SERVER) === true)
{
    // this will give you something like google.com or facebook.com
    $domain = str_ireplace('www.', '', parse_url($_SERVER['HTTP_REFERER'], 'PHP_URL_HOST'));

    // check if there is any referer script you want to execute
    if (is_file('path/to/scripts/' . $domain . '.php') === true)
    {
    	// include the path/to/scripts/google.com.php for instance
    	include('path/to/scripts/' . $domain . '.php');
    }
}