.Htaccess ile ilgili Döküman&kaynak ihtiyacım var..

Kodla Büyü

mustafayilmaz28

Süper Üye
Süper Üye
Seçkin Üye
Mesajlar
1,425
Selamün Aleyküm Arkadaşlar..
Ht Access ile ilgili derslere (özellikle video,Text döküman) ihtiyacım var.
bu konuda elince kaynağı olanlar varsa paylaşabilirlermi??yada kaynak olabilecek siteler varsa oda olabilir(İngilizcem yok ve lütfen google demeyin--çünkü aradığımı bulamadım net olarak) :oops:
 
Re: Ht.access ile ilgili Döküman&kaynak ihtiyacım var..

Teşekkür Ederim.Rüzgara Karşı Kardeşim.. :) Sizden haziran Aylarında da YArdım Görmüştüm. :++: Ve siz bana Htaccess den bahsetmiştiniz.. :oops: fakat dediğim gibi benim İngilizcen Olmadığı için İngilizce kaynaklara yönelemedim..verdiğiniz Kaynakları Allah Nasip ederse İlk fırsatta Bakacağım..
Çok Teşekkür ederim. :roll:
 
<b>htaccess.php</b>:
<div><b>Kod</b></div><div id="code"><code><span style="color: #000000">

<?

/////////////////////////////////////////////////////////////////////////////////////
define('HTACCESS',1); //HTAAccess açık
define('HTACCESS_QS_KEY_AYRAC','.'); //index/~"adi.soyadi"/fatih-akin.htm
define('HTACCESS_QS_VAL_AYRAC','-'); //index/~adi.soyadi/"fatih-akin".htm
define('HTACCESS_QS_UZANTI','html'); //index/~adi.soyadi/fatih-akin."htm"
/////////////////////////////////////////////////////////////////////////////////FKA/

function HTAString($arr,$uzanti=HTACCESS_QS_UZANTI) {
$qs='';
foreach($arr as $d=>$v) {
$qsa.=urlencode($d).HTACCESS_QS_KEY_AYRAC;
}
$qsa = trim($qsa,HTACCESS_QS_KEY_AYRAC);

foreach($arr as $d=>$v) {
$qsb.=urlencode($v).HTACCESS_QS_VAL_AYRAC;
}
$qsb = trim($qsb,HTACCESS_QS_VAL_AYRAC);

return $qsa."/".$qsb.".".$uzanti;
}

function hta2qs($htqs) {
$qs = explode("/",$htqs);
$keyler = explode(HTACCESS_QS_KEY_AYRAC,$qs[0]);
$degler = explode(HTACCESS_QS_VAL_AYRAC,$qs[1]);
if(count($keyler)!=count($degler)) {
$fark = abs(count($keyler)-count($degler));
if(count($keyler)<count($degler)) {
for($i=0;$i<$fark;$i++) {
array_push(&$keyler,"");
}
}
else if(count($keyler)>count($degler)) {
for($i=0;$i<$fark;$i++) {
array_push(&$degler,"");
}
}
}
$sonarray = array_combine($keyler, $degler);
foreach($sonarray as $k=>$v) {
$_GET[$k]=$v;
}
unset($_GET['HTAQS']);
unset($_GET['']);
return array($sonarray);
}

function href($str) {
$orstr = $str;
$parca = explode("?",$str);
$dosya = rtrim($parca[0],".php");
$qs = $parca[1];
$qs = explode("&",$qs);
$keyler = array();
$valler = array();
for($i=0;$i<count($qs);$i++) {
$keyval = explode("=",$qs[$i]);
$key = $keyval[0];
$deger = $keyval[1];
array_push(&$keyler,$key);
array_push(&$valler,$deger);
}
if(HTACCESS==1) {
return
"http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$dosya."/~".HTAString(array_combine($keyler,$valler));

}
else {
return "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$orstr;
}
}

hta2qs($_GET['HTAQS']); //Hangi değer
?>
</span>
</code></div>

<b>.htaccess:</b><div><b>Kod</b></div><div id="code"><code><span style="color:
#000000">

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>

Options +Indexes +FollowSymLinks

RewriteEngine On
RewriteRule ^(.*)\/\~(.*).htm$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).html$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).xhtml$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).shtml$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).asp$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).aspx$ $1.php?HTAQS=$2 [L,NC]

DirectoryIndex index.php index.html default.html default.php home.php
order deny,allow
</span>
</code></div>

ya da htaccess dosyasına eklemeniz gereken rewriteRule kodları:

Sadece bu kodları eklediğiniz takdirde, tüm linkleriniz modifiye olur.
<div><b>Kod</b></div><div id="code"><code><span style="color: #000000">

RewriteRule ^(.*)\/\~(.*).htm$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).html$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).xhtml$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).shtml$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).asp$ $1.php?HTAQS=$2 [L,NC]
RewriteRule ^(.*)\/\~(.*).aspx$ $1.php?HTAQS=$2 [L,NC]</span>
</code></div>

şimdi kullanımına geçelim:

<div><b>Kod</b></div><div id="code"><code><span style="color: #000000">

<?

include("htaccess.php");

print_r($_GET); //işte kanıt:)

?>

<a href="<?=href('index.php?kategori=oyunlar')?>">index.php?kategori=oyunlar</a>

</span>
</code></div>

Görüldüğü gibi linkimizi orjinal haliyle yazdık. fakat tıkladığımızda adres çubuğunda görülecek olan adres:

<div><b>Kod</b></div><div id="code"><code><span style="color: #000000">

index/~kategori/oyunlar.html
</span>
</code></div>

çeviri şeklini daha iyi anlamanız için:

<div><b>Kod</b></div><div id="code"><code><span style="color: #000000">

uyeler.php?uyeID=12345 => uyeler/~uyeID/12345.html

sayfa.php?Kategori=Fikralar => sayfa/~Kategori/Fikralar.html

ara.php?Nerde=Google.com&Sozcuk=PHP => ara/~Nerde.Sozcuk/Google.com-PHP.html

kategoriler.php?ID=1243 => kategoriler/~ID/1243.html


</span>
</code></div>


rüzgara karşı hocam bunu açıklayabilecekmisin güvenelimmi.
 
hocam ihtiyacin olanin ne oldugunu soylersen belki daha acik olabilir. benimde htaccess ile basim belaya girdi bi ara ve deneme yanilma derken olmustu.
 
bende siteme htaccess ekleyip site uzantılarımı gizlemeyi düşünüyorum. nasıl yapacağımı bilmiyorum.
 
mesela zaman gazetesinin uzantısı do bunu daha önce formda sormuştum. sitenin uzantısını gizlemişler cevabı almıştım. aynen bu tarz uzun site uzantıları gözükmesindense sadece site adı gözüksün istiyorum.
 
bence hayir hocam, mesela --anasayfa/urunler.php --> anasayfa/urunler seklinde site uzantisini gizleyebilirsin ya da --anasayfa/urunler.html seklinde yeniden yazdirabilirsin ama "do" uzantisi simdi arastirdigim kadariyla java tabanli web uygulamalarinda struts adinda bir framework ile yapiliyor.
http://struts.apache.org/

ilk bahsettigim ile ilgili de biraz arastirdiysan tonla kaynak var zaten. mod rewrite'dan bahseden bu seo friendly yaklasima deginmeden edememis.
umarim yardimci olabilmisimdir.

not: Rüzgara Karşı hocam uyardi. her turlu uzantiyi .htaccess ile vermek mumkunmus.
 
BBNET
Geri
Üst