![]() |
|
| |||||||
|
| | Seçenekler |
|
#1
| ||||
| | ||||
ASP SEO (404 hatası ile, zaten başka yolu yok)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 Kod: /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 Kod: <%Set istekurl = Request.ServerVariables("QUERY_STRING") istekbolum = Split(istekurl,"/")ID = istekbolum("4") '4. / dan sonrasını al%> kullanıyoruz. Burada şeklinde SEO uyumu yapmayı öğrendik, Eğer ş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.
__________________ konularımı ç-alırken lütfen altına nikimi yazarak alınız.yoksa eklediğiniz sitede deşifre edilirsiniz |
| Sponsorlar | |||
|