最簡單的Web伺服器

2022-05-17 18:02:32 字數 827 閱讀 4379

//讀取瀏覽器發過來的內容

socket serversocket = new socket(addressfamily.internetwork, sockettype.stream, protocoltype.tcp);

serversocket.bind(new ipendpoint(ipaddress.any, 8080));//程式要監聽8080埠,如果別的程式已經佔了這個埠,那程式就會拋異常

serversocket.listen(10);//啟動監聽10個使用者

//進行死迴圈是為了可以多個請求

while (true)}}

//返回給瀏覽器的內容

using (networkstream stream = new networkstream(socket))

using (streamwriter write = new streamwriter(stream))

socket.disconnect(false);//斷開通訊

}啟動c#程式,開啟瀏覽器,輸入127.0.0.1:8080

執行結果:

請求報文頭內容,在瀏覽器上面按f12,重新整理頁面,點network可以看到如下內容:

返回內容:

web伺服器 簡單web伺服器實現

三次握手 一般情況下是瀏覽器先傳送請求資料,c s ack 應答 三次握手成功後,才開始進行通訊資料的收發。四次揮手 一般情況下是客戶端先關閉,給瀏覽器傳送關閉資訊。如果瀏覽器傳送了關閉資訊,但是伺服器沒有回過去,較慢 那麼瀏覽器一直發是不是就會有問題?所以會等待 2msl的時間。一般為2 5分鐘。...

簡單實現web伺服器

import multiprocessing import socket import re class webservice object def init self 建立套接字 self.socket server socket.socket socket.af inet,socket.sock...

web伺服器簡單搭建

lamp linux apache mysql php lnmp linux nginx mysql php 此處為lamp 安裝架構元件 安裝步驟 1 安裝apache 2 mysql或mariadb安裝 yum install mariadb y 3 php安裝 yum install php ...