• 23-08-2010, 22:37:00
    #10
    $_SERVER ile sayfa url'si çekildiğinde gerçek url'nin değil görünen url'nin gösterilmesi gerek diye biliyorum. Bu sayfalara ?q=key gibi adresleri kullanarak erişimi engellemek istiyorsanız, sayfanın url'sini alıp içinde örneğin ".php" geçiyor mu diye kontrol ettirin, varsa break; dersiniz ya da header ile yönlendirirsiniz. Google indexleri için de arkaşın verdiği kodu kullanabilirsiniz.
    Yanlış anlamış olabilirim.
  • 24-08-2010, 05:06:22
    #11
    hocam $_SERVER değişkenleri QUERY STRING için gerçek, REUQEST URI için windows xammp altında seo urlleri URL leri veriyor.

    bende dediğiniz gibi bir kaç detay daha ekleyip yaptım zaten. ama htaccess ile yapamadım php ile yaptım aynen öyle. Ama yine farklı sorunlarım var değişken işleri ile ilgili. Onları aşmakta mümkün görünmüyor
  • 24-08-2010, 14:17:29
    #12
    Bunun teknik olarak .htaccess ile yapılabileceğinden emin değilim. O sayfaya erişimi .htaccess ile engellerseniz seo url'lerinizle eriştiğinizde de sayfa engelli görünecek diye düşünüyorum.

    En iyisi php ile yapmak, sayfalarınızın ve değişkenlerinizin adları görünse dahi php dosyalara direkt erişim sağlanamaz. Şöyle bir kodu sayfanın başına ekleyerek halledebilirsiniz;
    $sayfa = $_SERVER['REQUEST_URI'];
    if(strstr($sayfa,'.php')) {
    	echo 'Bu sayfaya erişim izniniz yok.';
    	//veya header('Location: index.php');
    	exit;
    }
    Bu kodun ekli olduğu sayfalarda x.php?a=4 gibi bir erişim söz konusu olmaz.

    İlla ki .htaccess ile yapacağım diyorsanız bir şey öneremeyeceğim, bildiğim yöntemler sayfaya herhangi bir şekilde dışarıdan erişimi tamamen engellemek üzerine.
  • 25-08-2010, 08:34:18
    #13
    htacces ile QUERY STRING ve THE REQUEST, REQUEST URI farklı değişkenler olduğundan yapılabilmeli gibime geliyor.

    bu arada .php kapatmak yetmiyor /?a=1 de çalışıyor indeks için. Onuda söyleyim.
  • 25-08-2010, 16:56:15
    #14
    .htaccess ile çözüm bulabilirseniz görmek isterim.

    Dediğiniz olay şu şekilde çözülebilir aynı kodla;
    <?
    $sayfa = $_SERVER['REQUEST_URI'];
    if(strstr($sayfa,'.php') || strstr($sayfa,'/?')) {
        echo 'Bu sayfaya erişim izniniz yok.';
        //veya header('Location: index.php');
        exit;
    }
    ?>