ASP SEO (404 hatası ile, zaten başka yolu yok)

Adsense KODU

ASP SEO (404 hatası ile, zaten başka yolu yok)

404hata.asp

PHP Kodu:
<%
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

PHP Kodu:
<%
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

PHP Kodu:
<%
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

PHP Kodu:
<%
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

Code:
 /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

Code:
<%
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

PHP Kodu:
<%
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

PHP Kodu:
<%
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

PHP Kodu:
<%
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