python WSIG協議下的伺服器與框架分離

2021-09-26 09:19:07 字數 3263 閱讀 9024

web 伺服器和框架分離

import socket

import multiprocessing

import re

import frame

class

wisg_server

(object):

def__init__

(self)

: self.tcp_server_socket = socket.socket(socket.af_inet,socket.sock_stream)

self.tcp_server_socket.setsockopt(socket.sol_socket,socket.so_reuseaddr,1)

self.tcp_server_socket.bind((""

,8080))

self.tcp_server_socket.listen(

128)

defrun_forever

(self)

:while

true

: new_client_socket,new_client_addr = self.tcp_server_socket.accept(

) p = multiprocessing.process(target = self.serve_client_socket,args =

(new_client_socket,))

p.start(

) new_client_socket.close(

) self.tcp_server_socket.close(

)def

serve_client_socket

(self,new_client_socket)

:#接收瀏覽器傳送的請求,即http請求

)# 3.空一行與body隔開

header +=

"\r\n"

# 設定返回的瀏覽器的內容

response = header + body

new_client_socket.send(response.encode(

"utf-8"))

new_client_socket.close(

)def

start_response

(self,status,headers)

: self.status = status

self.headers = headers

defmain()

: wisg = wisg_server(

) wisg.run_forever(

)if __name__ ==

"__main__"

: main(

)

def

index()

:return

"這是主頁"

deflogin()

:return

"這是登入頁面"

def(environ,start_response)

: start_response(

"200 ok",[

("content-type"

,"text/html;charset=utf-8")]

) file_name = environ[

'path_info'

]if file_name ==

"/index.py"

:return index(

)elif file_name ==

"/login.py"

:return login(

)else

:return

"我愛你中國。。。。"

ubuntu下安裝proftpd FTP伺服器總結

公司想做一台ftp伺服器是公司的人員共享檔案,考慮到安全問題選擇linux下做並且每個使用者的許可權不同,網上找到proftpd符合要求 一 安裝 在此過程中會讓選擇行模式 standalone和inetd,前者是單一伺服器模式,後者是超級伺服器模式 sudo apt get install pro...

Macbook Pro下配置Apache伺服器

在finder裡面,建立資料夾 sites 完整路徑 users michaelzhang sites 備份 etc apache2 下的httpd.cof 修改 etc apache2 httpd.conf,如下。原始 michaels macbook pro apache2 michaelzha...

linux centos 下安裝nginx伺服器

linux centos 下安裝nginx伺服器 一,安裝編譯工具 root localhost home yum y install gcc gcc c 二,安裝zlib 解壓檔案 tar xvzf zlib 1.2.8.tar.gz 進入解壓目錄執行以下命令 root身份 configure m...