HTTP. (Hyper Text Transfer Protocol)

Benzer belgeler
ÖRÜN (WEB) GÜVENLİĞİ. Hazırlayan: Arda Balkanay

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

Web Tasarımının Temelleri

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 1

Bilgisayar Ağları. Ağı oluşturan cihazlar. Coğrafi koşullara göre ağın sınıflandırılması (LAN, MAN, WAN)

State Yönetimi. Bir web sayfası ile sunucu arasındaki etkileşim ;

Bilgisayar Programcılığı Uzaktan Eğitim Programı. e-bilg 121 AĞ TEKNOLOJİLERİNİN TEMELLERİ Öğr. Gör. Bekir Güler

YZM 3215 İleri Web Programlama

Üst Düzey Programlama

Oturum Başlatma Protokolü ve Uygulamaları

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

WEB TASARIMININ TEMELLERİ

Oturum Öncesi Tanımlı Oturum Kimliği Çerezi Açığı Gökhan

Medula Eczane Stok Bilgileri Web Servisleri Kullanım Kılavuzu

Html temelleri. Ders 4

Dünyanın bilgisine açılan pencere... Ya da sadece yeni çağın eğlencesi...

İNTERNET VE BİLGİ AĞLARININ KULLANIMI

İNTERNET HAFTA 02 TEMEL BİLGİ TEKNOLOJİSİ KULLANIMI. Öğr. Gör. GÜLTEKİN BÜYÜKŞENGÜR. SAPANCA Meslek Yüksekokulu

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Google Chrome Kullanıyorsanız; Microsoft Internet Explorer Kullanıyorsanız;

WEB TASARIMINDA TEMEL KAVRAMLAR

CELAL BAYAR ÜNİVERSİTESİ KÜTÜPHANE VERİTABANLARINA ÜNİVERSİTE DIŞINDAN ERİŞİM

HTML (Hyper Text Markup Language)

MutluSantral API Dokümanı. Versiyon 1.0.1

Dünyanın bilgisine açılan pencere... Ya da sadece yeni çağın eğlencesi...

Web Sunucusu BLGM 344 Bilgisayar Ağları Proje. BLGM 344 Proje 1* WEB SUNUCUSU UYGULAMASI

Atabey Meslek Yüksek Okulu Web Tasarımının Temelleri

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

AĞ ve İNTERNET TCP/IP. IP Adresi İNTERNET NEDİR? Standartlar :

Bir port aynı anda bir process tarafından dinlenebilir. Fakat bir process birden fazla portu dinleyebilir.

Pac Dosyası İle Proxy Kullanmak

AĞ KULLANIM KILAVUZU. Yazdırma Günlüğünü Ağa Kaydetme. Sürüm 0 TUR

Spring Security Framework Harezmi Bilişim Çözümleri

Üst Düzey Programlama

Güncel İnternet Teknolojileri ve PHP 2

BİLGİSAYAR 4 MOLEKÜLER BİYOLOJİ VE GENETİK BÖLÜMÜ 1. DERS İNTERNET, TCP/IP, İNTERNETTE MESAJ VE BİLGİ AKTARIMI YARD. DOÇ. DR.

DNS Nedir? HİKMET TÜYSÜZ

1.1 Web Kavramlar URL terimini tanımlayınız ve anlayınız.

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

Basit bir web uygulaması

WEB TASARIMI. Đnternet Nedir?

Yönetici rehberi. Emerald Insight araştırma platformunun kurumsal yönetim alanının kullanımına yönelik hızlı başvuru rehberi.

WEB TASARIMININ TEMELLERİ

TÜRKİYE ELEKTRONİK FON ALIM SATIM PLATFORMU WEB SERVİS İŞLEMLERİ

MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ

4. Sunucu ayarları veya ek sunucu türlerinı manüel olarak yapılandır'a tıklayın ve İleri'yi tıklayın.

TÜBİTAK UEKAE ULUSAL ELEKTRONİK ve KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ

WEB TASARIMININ TEMELLERİ

Üst Düzey Programlama

Ağ Nedir? Birden fazla bilgisayarın iletişimini sağlayan printer vb. kaynakları, daha iyi ve ortaklaşa kullanımı sağlayan yapılara denir.

5651 ve 5070 Sayılı Kanun Tanımlar Yükümlülükler ve Sorumluluklar Logix v2.3 Firewall. Rekare Bilgi Teknolojileri

Programlama Yazılımı ile Web Sitesi Oluşturma

TBF 110 BİLGİSAYARDA VERİ İŞLEME ve UYGULAMALARI Ha9a- 2 - İnternet

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2. İçerik. IP ICMP MAC Tracert

AĞ TEMELLERİ 4.HAFTA CELAL BAYAR ÜNİVERSİTESİ AKHİSAR MESLEK YÜKSEKOKULU

INTERNET VE INTERNET TARAYICISI

MOBILEPAX SOAP PRODUCT API KULLANIM ŞEKLİ

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

Elektronik Dergi ve Veri Tabanlarına Kampus Dışından Erişim

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

PHP 1. Hafta 1. Sunum

İSMET AKTAR ANADOLU TEKNİK LİSESİ BİLİŞİM TEKNOLOJİLERİ ALANI WEB PROGRAMCILIĞI DALI

EC-485. Ethernet RS485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

LIBPXY SERVİSİNİN KULLANIMI

Berqnet Sürüm Notları Sürüm 4.1.0

BM 402 Bilgisayar Ağları (Computer Networks)

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2

Bilindik engelleme yöntemlerinin dışında olan, kurumsal web filitreleri nasıl aşılır?

Toplu İleti Gönderimi

Global Haberleşme API Kullanıcı Notları

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011

Internet: Tarihçe ve Kavramlar

KÜTÜPHANE KAYNAKLARINA DIŞARIDAN (PROXY SUNUCU KULLANARAK) BAĞLANMAK İÇİN YAPILMASI GEREKENLER A. INTERNET EXPLORER KULLANICILARI İÇİN;

BMT 202 Web Tasarımı Bahar Dönemi. Yük. Müh. Köksal GÜNDOĞDU 1

R J F M Programlarında Kurulumda dikkat edilmesi gereken alanlar

Bilgisayar Ağları ve Ağ Güvenliği DR. ÖĞR. ÜYESİ KENAN GENÇOL HİTİT ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK MÜH.

solid; BORDER-LEFT: #1F9FFF 0px solid; BORDER-RIGHT: #1F9FFF 0px solid; BORDER-TOP: #1F9FFF 0px solid; COLOR: #1F9FFF; FONT-FAMILY: Trebuschet MS;

Bilgisayar Sistemleri ilk ortaya çıktığında...

MCR02-AE Ethernet Temassız Kart Okuyucu

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Temel Başlıklar. HTML Formlarının amacı Çalışma şekli Form Action ve Method

Elbistan MYO Güz Dönemi Öğr.Gör. Murat KEÇECİOĞLU

Cookie s. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 17 Ara 2013

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

(Bilgisayar ağlarının birbirine bağlanarak büyük bir ağ oluşturmasıdır)

4. Bağlantı (Köprü) Oluşturma

SMSEXPLORER XML API. XML API KILAVUZU v.1.0

İNTERNET İnternete doğrudan bağlı her bilgisayara internet adresi yada IP adresi denilen arasına nokta konulmuş 4 kısımdan oluşan (

Bilgisayar Programalamaya Giriş

Tanımı Problemi 46 Şüpheci Yaklaşım 47 Tamsayı Taşması (Integer Overflow) 47 Tamsayı Taşması Java Uygulaması 48

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü:

İSTANBUL KEMERBURGAZ ÜNİVERSİTESİ İÇERİK YÖNETİM SİSTEMİ KULLANIM KLAVUZU KEMERBURGAZ ÜNİVERSİTESİ İÇERİK YÖNETİM SİSTEMİ

Coslat Monitor (Raporcu)

Şekilden daha iyi anlaşılacağı gibi kırmızı veriler zararlı olup ateşi ifade ediyorlar. Ortadaki ateş duvarı da zararlı içeriği tanımlayıp ateşin

FortiGate (Terminal Server) Terminal Sunucu Üzerinden Gelen Kullanıcılar

BİLGİSAYAR AĞLARI VE İLETİŞİM

İnternet ve ağ kavramlarını tanımlamak. İnternet in nasıl çalıştığını açıklamak. Elektronik posta ve sohbet kavramlarını açıklamak.

Web Uygulama Güvenliği Kontrol Listesi 2010

Transkript:

HTTP (Hyper Text Transfer Protocol)

Http, bir kaynaktan dağıtılan ve ortak kullanıma açık olan hiperortam bilgi sistemleri için uygulama seviyesinde bir iletişim kuralıdır (http://tr.wikipedia.org/wiki/http). 1990 yılından beri www üzerinde küresel bilgi girişimi için kullanılmaktadır. 0.9, 1 ve 1.1 olarak bilinen sürümleri mevcuttur.

Ele Alınacak Temel Kavramlar Kaynaklar (Resources) Messages (Mesajlar) Connections (Bağlantılar) Security (Güvenlik) Hardware (Donanım)

URL (Uniform Resource Locator) Internet te bir kaynağa (belge ve resim gibi) rastgelen, standart bir formatta uygun bir karakter dizisidir (http://tr.wikipedia.org/wiki/url ).

http://edition.cnn.com http://www.codeproject.com

http://tr.wikipedia.org/wiki/url URL Scheme Host URL Path Host ile ifade edilen makine nerededir? Nasıl ulaşılır? IP Adresi: 91.198.174.192

http://tr.wikipedia.org:80/wiki/url URL Scheme Host Port URL Path

https://www.bing.com/?scope=news URL Scheme Host URL Path World Wide Web

http://tr.wikipedia.org/wiki/world_wide_web#hypertext URL Scheme Host URL Path Fragment

URL Kodlama (Encoding) Boşluk karakteri (White Spaces) URL isimlerinde bulunmazlar ASCII kod tablosunda bulunan karakterler kullanılır. Kullanılabilecek karakterler.

Yaygın Olarak Kodlanan Karakterler ASCII Karakter URL Kodlanmış Hali space %20! %21 %22 # %23 $ %24 % %25 & %26

http://www.ausopen.com/images/pics /large/b_290115_murray_46.jpg adresindeki resme ulaşmak istiyorum Bu içeriğin türü image/jpeg tir. Resmin kendisi ise 1000.0001 11 dir.

MIME Types (Multipurpose Internet Mail Extensions) E-posta uygulamaları aracılığıyla gönderilecek olan iletiye çeşitli türdeki içeriği eklemek için kullanılan bir internet standarttır. E-posta uygulamalarına ek olarak web tarayıcıları da çeşitli MIME türlerini desteklemektedir. Bu sayede tarayıcı dosya HTML biçiminde veya gösterilebileceği türde bir dosya olup olmadığını algılayarak ne yapması gerektiğini bilmektedir.

Type /Subtype application/atom+xml application/json image/gif image/png video/mp4 text/xml text/html text/plain Atom feed JSON data GIF image PNG image MP4 video XML HTML Sade metin Tanım

İçerik Üzerinde Karşılıklı Uzlaşma (Content Negotiation) http://news.google.com.tr/ adresine resme ulaşmak istiyorum Gelen HTML ve TR olsun Content türü text/html <html>. </html>

Http Resources index.html sayfasına ulaşmak istiyorum Bulunamadı (404 Not Found)

Http Request Http Response Http Transaction

Http Request Methods Method GET POST PUT DELETE HEAD Tanım Kaynağı alır (Retrieve) Günceller (Update) Kaynağı saklar (Store a resource) Kaynağı kaldırır (Remove a resource) Kaynağın başlık bilgisini okur (Retrieve the headers for a resource)

Güvenlik GET metodu güvenli iken, POST metodu güvenli değildir.

Request Mesajları Genel görünümü şu şekildedir: [method] [URL] [version] [headers] [body]

Örnek GET http://ce.comu.edu.tr/index.html HTTP/1.1 Host : ce.comu.edu.tr Accept-Language : tr-tr Date : Fri, 30 Jan 2015 10:36 GMT+2

Yaygın Olarak Kullanılan Header lar Header Referer User-Agent Accept Accept-Language Cookie If-Modified-Since Date Açıklama Yönlendirilen sayfanın URL sini belirtir. Tarayıcı hakkında bilgi verir Tercih edilen medya türü Tercih edilen dil Cookie bilgisi En son erişim tarihi Mesajın oluşturulduğu zaman bilgisi

Tam İstek Örneği

Response Mesajları Genel görünümü şu şekildedir: [version] [status] [reason] [headers] [body]

<html >.... </html> Örnek

Durum Kodları (Status Codes) Aralık Kategori 100-199 Bildirim (Informational) 200-299 Başarılı (Successful) 300-309 Yönlendirme (Redirection) 400-499 İstemci Hatası (Client Error) 500-599 Sunucu Hatası (Server Error)

Sık Kullanılan Durum Kodları Kod Hata Açıklama 200 OK Başarılı 301 Moved Permanently Kaynak kalıcı olarak taşındı, tekrar bu konumdan kontrol etmeyin 302 Moved Temporarily Kaynak geçici olarak taşındı, tekrar bu konumu kontrol edin. 304 Not Modified Kaynak son erişimden beri değişmedi 400 Bad Request Yazım hatası 401 Unauthorized İstemcinin oturum açması gerekli 403 Forbidden Erişim reddedildi. 404 Not Found Kaynak kullanımda değil 500 Internal Server Error İşlem sırasında bir hata ile karşılaşıldı 503 Service Unavailable Sunucu bu isteğe hizmet vermeyecektir.

Http ve TCP/IP

İletişim İstemci / sunucu arasındaki veri trafiği farklı şekillerde gerçekleşmektedir. Bunlar :

Aç-Kapa open close......... open close

Eşzamanlı Aç-Kapa open open......... close close

open http://www.comu.edu.tr open http://www.comu.edu.tr open http://ce.comu.edu.tr Fiziksel Makine open http://ce.comu.edu.tr

Aç-Bekle-Kapa open Http Request Http Response Http Request Http Response Http Request Http Response close

Proxy ve Cache

manzara.jpg

http://www.bing.com/search?q=%c3%a7anakkale+truva&go=g %C3%B6nder&qs=n&form=QBLH&pq=%C3%A7anakkale+truva &sc=8-7&sp=- 1&sk=&cvid=b8f68db4289c479d993d081a2bd0903a Python C#

http://www.bing.com/search?q=%c3%a7anakkale+truva&go=g %C3%B6nder&qs=n&form=QBLH&pq=%C3%A7anakkale+truva &sc=8-7&sp=- 1&sk=&cvid=b8f68db4289c479d993d081a2bd0903a Get Post Put - Delete

Web Sunucusu

Vekil (Proxy) Sunucu Vekil sunucu internete erişim sırasında kullanılan bir ara sunucudur. Bu durumda, örneğin bir ağ sayfasına erişim sırasında doğrudan bağlantı yerine : Tarayıcı vekil sunucuya bağlanır ve hangi sayfayı istediğini söyler Vekil sunucu gerekiyorsa o sayfaya bağlanır ve içeriği alır. Vekil sunucu tarayıcıya içeriği gönderir. (http://tr.wikipedia.org/wiki/vekil_sunucu )

Avantajları: Fazladan hız Fazladan kontrol Fazladan güvenlik Fazladan gizlilik Asgari erişim

Vekil Sunucu

Forward Proxy Bant genişliğini azaltırlar ve hızlı cevap olanağı sağlarlar.

Reverse Proxy Sunucunun iş yükünü hafifletirler ve hızlı cevap olanağı tanırlar. Tek bir dış ip altında aynı portu dinleyen birden fazla web sunucusu çalıştırmak için tercih edilir.

Cache Public ve Private olmak üzere 2 türü bulunmaktadır.

Public Cache

Private Cache

Ne zaman?

Cache Kontrol Direktif public private no-cache no-store Açıklama Herkese gönderilen yanıt Tek bir kullanıcıya gönderilen yanıt Yanıtı cache işlemine dahil etme Daha önce karşılaşılmayan yanıt

Oturum & Güvenlik

Http stateless bir protokoldür. Http nin stateless yapısına karşın bazı web uygulamaları kullanıcının state bilgisine ihtiyaç duymaktadır. (Örn: Web sitesinin size tanıması ve buna bağlı olarak seçtiğiniz temayı uygulaması gibi) Durum bilgilerinin saklanması için farklı yaklaşımlar bulunmaktadır.

Oturumlar (Sessions) Oturumlar (Sessions) sunucu belleğinde saklanırlar. Temel olarak kullanıcının güvenlik bağlamını (security context) tanımlarlar. Web uygulaması bir kullanıcın doğrulanmış olup olmadığını (authenticated) oturumu kullanarak belirler. Açık olan tarayıcı penceresi kapatıldığında oturum kaybolur. Böyle bir durumda site, tekrar oturum açma (login) bilgisine gereksinim duyuyorsa kullanıcı her seferinde kullanıcı adı ve parolasını yazmak durumunda kalacaktır.

Çerezler (Cookies) Çerez, kullanıcının bilgisayarında tarayıcı tarafından tutulan bir metin dosyasıdır. Genellikle doğrulama (authentication), sitede kişisel tercihlerin, alış veriş sepeti gibi bilgilerin ve sunucu oturum (session) tanımlamaları sıklıkla kullanılan durumlardır.

Kullanıcının web tarayıcısı sunucu ile etkileşime geçtiğinde çerez bilgilerini sunucuya gönderir. Sadece domain ile ilişkili olan çerezler gönderilir. Örneğin www.amazon.com ile ilişkili olan bir çerez www.ebay.com domainine ait web sunucusuna gönderilmez.

Birlikte Çalışma GET /search?q=canakkale HTTP/1.1. Host: comu.edu.tr... Session cookie HTTP/1.1 200 OK Set-Cookie: fname=bora&lname=ugurlu; domain=.comu.edu.tr path=/...

GET /search?q=canakkale HTTP/1.1 Host: comu.edu.tr... HTTP/1.1 200 OK Set-Cookie: GUID= 00b58c9f8c7663e8bc.. domain=.comu.edu.tr path=/... GET /search?q=canakkale HTTP/1.1 Host: comu.edu.tr Cookie: GUID= 00b58c9f8c7663e8bc.....

GET /search?q=canakkale HTTP/1.1 Host: comu.edu.tr... HTTP/1.1 200 OK Set-Cookie: GUID= 00b58c9f8c7663e8bc.. domain=.comu.edu.tr path=/ expires= Tuesday, 30-May-2015 22:42 GMT+2... GET /search?q=canakkale HTTP/1.1 Host: comu.edu.tr Cookie: GUID= 00b58c9f8c7663e8bc.....

Oturum Açma Türleri Basic Authentication Digest Authentication Windows Authentication Forms Authentication