ASP SEO (404 hatası ile, zaten başka yolu yok)
Adsense KODU
ASP SEO (404 hatası ile, zaten başka yolu yok)
404hata.asp
<%
Dim istekurl
Dim istekbolum
Dim istek1
Dim istek2
istek1
=“video”
istek2=“videoarsiv”
Set istekurl = Request.ServerVariables(“QUERY_STRING”)
istekbolum = Split(istekurl,“/”)
If
istekbolum(“3″) = istek1 Then
Server.Execute(“video.asp”)
Elseif
istekbolum(“3″) = istek2 Then
Server.Execute(“videoarsiv.asp”)
Else
Response.Write (“Aradığınız sayfa bulunamadı”)
End if
%>
video.asp
<%
Set istekurl = Request.ServerVariables(“QUERY_STRING”)
istekbolum = Split(istekurl,“/”)
ID = istekbolum(“4″)
If
Not Isnumeric(ID) Then Response.Redirect “index.asp”
filePath = Server.MapPath(“database.mdb”)
Set dbcon = Server.CreateObject(“ADODB.Connection”)
dbcon.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & filePath
Set rs
= Server.CreateObject(“Adodb.Recordset”)
sql=“SELECT * FROM tblvideo WHERE idno=”&ID&“ ”
rs.Open sql,dbcon,1
If rs.Eof Then
Response.Write (“Aradığınız Video Bulunamadı”)
Else
Response.Write rs(“videoadi”)
End if
rs.Close
Set rs = Nothing
%>
videoarsiv.asp
<%
Set istekurl = Request.ServerVariables(“QUERY_STRING”)
istekbolum = Split(istekurl,“/”)
filePath = Server.MapPath(“database.mdb”)
Set dbcon = Server.CreateObject(“ADODB.Connection”)
dbcon.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & filePath
Set rs
= Server.CreateObject(“Adodb.Recordset”)
sql=“SELECT * FROM tblvideo ORDER BY idno DESC”
rs.Open sql,dbcon,1
On error Resume Next
page
= CInt(istekbolum(“4″))
If (page =“” or page = 0) Then page = 1 Else page=page
rs.pageSize= 10
rs.absolutePage=page
Do While Not rs.Eof and i<rs.pagesize
i=i+1
Response
.Write (“<br><a href=”"http://www.siteadi.com/video/”&rs(“idno”)&“/”&cevir(rs(“videoadi”))&“.htm”">”&rs(“videoadi”)&“</a>”)
rs.Movenext
Loop
If page = 1 Then
Response.Write “ ”
Else
a = page -1
Response.Write “<a href=” & a & qstring &“><< Önceki </a> ”
End If
If page + 5 > rs.pagecount Then
b = rs.pagecount
Else
b = page + 5
End If
If page < 5 Then
c = 1
Else
c = page - 5
End If
For j = c To b
If j = page Then
Response.Write “[<b>" & j & "</b>] ”
Else
Response.Write “<a href=” & j & qstring &“>” & j & “</a> ”
End If
Next
If page = rs.pagecount Then
Response.Write “ ”
Else
a = page + 1
Response.Write “<a href=” & a & qstring &“> Sonraki >></a> ”
End If
%>
Yukarıda Kullanmış olduğumuz cevir fonksiyonu için
cevir.asp
<%
Function cevir(data)
data = Replace (data ,“ı”,“i”,1,-1,1)
data = Replace (data ,“ğ”,“g”,1,-1,1)
data = Replace (data ,“ü”,“u”,1,-1,1)
data = Replace (data ,“ş”,“s”,1,-1,1)
data = Replace (data ,“ö”,“o”,1,-1,1)
data = Replace (data ,“ç”,“c”,1,-1,1)
data = Replace (data ,“I”,“i”,1,-1,1)
data = Replace (data ,“Ğ”,“g”,1,-1,1)
data = Replace (data ,“Ü”,“u”,1,-1,1)
data = Replace (data ,“Ş”,“s”,1,-1,1)
data = Replace (data ,“İ”,“i”,1,-1,1)
data = Replace (data ,“Ç”,“c”,1,-1,1)
data = Replace (data ,“Ö”,“o”,1,-1,1)
data = Replace (data ,“ ”,“-”,1,-1,1)
cevir=data
End Function
%>
Şimdi 404 mantığı ile asp de SEO uyumu yapmayı anlatmaya başlayalım.
Bilindiği gibi Linux ve .php kullandığınız zaman SEO uyumu yapmak için .htaccess dosyasından faydalanılır eğer Windows ve .asp kullanıyorsanız bu işlemi gerçekleştirmek için 404 sayfa bulunamadı hatasından faydalanmak gerekir, Öncelikle 404 hatasını anlatalım.
Eğer sunucu yönetim paneliniz Plesk ise Ayarlar kısmından özel hata sayfa kullanımı açmanız daha sonra webdizinlerine girip hata sayfaları kısmına geçip 404 not found ayarını açıp ayarını URL yapıp kutucuğuna
/404hatasi.asp
yazıp onaylamanız gerekiyor, eğer URL olarak seçmezseniz .asp dosyası düz metin olarak algılanacaktır.
Unutulmaması gereken 404 hata dosyamız ilgili sayfa bulunamadığı zaman çalışacaktır.
Sıra geldi cevir.asp nin işlevine, bilindiği gibi web tarayıcılarında Türkçe karakter destek yoktur, zaten internette ingilizce hariç bir dil kullanımı yoktur, global Dünyadaki işlevsel nedenine burada değinmeyeceğiz.
cevir fonksiyonu Türkçe karakterleri inglizce karakterlerlere çevirecek.
Sıra geldi video.asp ye, Tüm .asp cilerin vede .php cilerin bildiği gibi bir sayfa veritabanından bilgi alacağımız ve ekrana göstereceğimizde Request fonksiyonunu kullanırız, ÖRN : video.asp?id=1 burada id=1 de yere alan 1 i kullanarak veritabanından 1 nolu kaydı ekrana yazdırırız,
artık Request.QueryString yerine Request.ServerVariables(”QUERY_STRING”) i kullanacağız ve Web tarayısından gelen yazıları alacağız.
ornek.com de biz Request.ServerVariables(”QUERY_STRING”) imizi video.asp?id=1 yerine kullanmak istiyoruz ve / ları sayıyoruz ve 4. / dan sonra gelen isteği aldırmak için
<%
Set istekurl = Request.ServerVariables("QUERY_STRING")
istekbolum = Split(istekurl,"/")
ID = istekbolum("4") '4. / dan sonrasını al
%>
kullanıyoruz.
Burada http://www.ornek.com/video/1/ornek-video.htm şeklinde SEO uyumu yapmayı öğrendik, Eğer http://www.ornek.com/video-1-ornek-video.htm şeklinde yapmak istersek, 404hatasi.asp dosyamızda, video.asp dosyamızda ve videoarsiv.asp dosyamızda birtakım değişiklikler yapmamız gerekir, Nedir bunlar , Ne şekilde olacak ?
404hatasi.asp
<%
Dim istekurl
Dim istekbolum
Dim istekbolum2
Dim parcala
Dim isteksayfa
Dim istek1
Dim gostersayfa1
Dim gostersayfa2
gostersayfa1
=“video”
gostersayfa2=“videoarsiv”
Set istekurl = Request.ServerVariables(“QUERY_STRING”)
istekbolum = Split(istekurl,“/”)
istekbolum2=istekbolum(3)
parcala=split(istekbolum2,“-”)
isteksayfa=parcala(0)
If
isteksayfa=gostersayfa1 Then
Server.Execute(“video.asp”)
Elseif
isteksayfa=gostersayfa2 Then
Server.Execute(“videoarsiv.asp”)
Else
Response.Write (“Aradığınız sayfa bulunamadı”)
End if
%>
video.asp
<%
Set istekurl = Request.ServerVariables(“QUERY_STRING”)
istekbolum = Split(istekurl,“/”)
istekbolum2=istekbolum(3)
parcala=split(istekbolum2,“-”)
IDno=parcala(1)
If
Not Isnumeric(IDno) Then Response.Redirect “index.asp”
filePath = Server.MapPath(“database.mdb”)
Set dbcon = Server.CreateObject(“ADODB.Connection”)
dbcon.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & filePath
Set rs
= Server.CreateObject(“Adodb.Recordset”)
sql=“SELECT * FROM tblvideo WHERE idno=”&IDno&“ ”
rs.Open sql,dbcon,1
If rs.Eof Then
Response.Write (“Aradığınız Video Bulunamadı”)
Else
Response.Write rs(“videoadi”)
End if
rs.Close
Set rs = Nothing
%>
videoarsiv.asp
<%
On error Resume Next
Set istekurl
= Request.ServerVariables(“QUERY_STRING”)
istekbolum = Split(istekurl,“/”)
istekbolum2=istekbolum(3)
parcala=split(istekbolum2,“-”)
page=parcala(1)
filePath = Server.MapPath(“database.mdb”)
Set dbcon = Server.CreateObject(“ADODB.Connection”)
dbcon.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & filePath
Set rs
= Server.CreateObject(“Adodb.Recordset”)
sql=“SELECT * FROM tblvideo ORDER BY idno DESC”
rs.Open sql,dbcon,1
If (page =“” or page = 0) Then page = 1 Else page=page
rs.pageSize= 10
rs.absolutePage=page
Do While Not rs.Eof and i<rs.pagesize
i=i+1
Response
.Write (“<br><a href=”"http://www.siteadi.com/video-”&rs(“idno”)&“-”&cevir(rs(“videoadi”))&“.htm”">”&rs(“videoadi”)&“</a>”)
rs.Movenext
Loop
If page = 1 Then
Response.Write “ ”
Else
a = page -1
Response.Write (“<a href=http://www.ornek.com/videoarsiv-” & a & qstring &“.htm><< Önceki </a> ”)
End If
If page + 5 > rs.pagecount Then
b = rs.pagecount
Else
b = page + 5
End If
If page < 5 Then
c = 1
Else
c = page - 5
End If
For j = c To b
If j = page Then
Response.Write “[<b>" & j & "</b>] ”
Else
Response.Write “<a href=http://www.ornek.com/videoarsiv-” & j & qstring &“.htm>” & j & “</a> ”
End If
Next
If page = rs.pagecount Then
Response.Write “ ”
Else
a = page + 1
Response.Write “<a href=http://www.ornek.com/videoarsiv-” & a & qstring &“.htm> Sonraki >></a> ”
End If
%>
Şeklinde değişiklik yaparız.
Artık .asp de SEO uyumunu kullanmayı öğreniyoruz ve mutlu oluyoruz,

Yorum Yaz