怎么使用Python創建簡單的HTTP服務器-創新互聯

這篇文章主要介紹了怎么使用Python創建簡單的HTTP服務器,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創新互聯是一家專業提供吳忠企業網站建設,專注與成都網站設計、成都網站制作、html5、小程序制作等業務。10年已為吳忠眾多企業、政府機構等服務。創新互聯專業網站制作公司優惠進行中。

python主要應用領域有哪些

1、云計算,典型應用OpenStack。2、WEB前端開發,眾多大型網站均為Python開發。3.人工智能應用,基于大數據分析和深度學習而發展出來的人工智能本質上已經無法離開python。4、系統運維工程項目,自動化運維的標配就是python+Django/flask。5、金融理財分析,量化交易,金融分析。6、大數據分析。

基本命令

python -m Web服務器模塊 [端口號,默認8000]

這里的“Web服務器模塊”有如下三種:

BaseHTTPServer: 提供基本的Web服務和處理器類,分別是HTTPServer和BaseHTTPRequestHandler。

SimpleHTTPServer: 包含執行GET和HEAD請求的SimpleHTTPRequestHandler類。

CGIHTTPServer: 包含處理POST請求和執行CGIHTTPRequestHandler類。

啟動web服務器

對于Python2,簡單搭建Web服務器,只需在需要搭建Web服務器的目錄(如 /home/pythontab/)下,輸入如下命令:

python -m SimpleHTTPServer 8080
使用 8080端口的創建Web服務器

對于Python3,其創建Web服務器的等價命令,如下:

python3 -m http.server 8080

瀏覽web頁面

可以在瀏覽器中輸入 http://127.0.0.1:8080 或 將 http://localhost:8080進行訪問。其他機器也可以通過服務器的IP地址來訪問服務器資源。

如果當前文件夾有index.html文件,會默認顯示該文件,否則,會以文件列表的形式顯示目錄下所有文件。這樣已經實現了最基本的文件分享的目的,你可以做成一個腳本,再建立一個快捷方式,就可以很方便的啟動文件分享了。如果有更多需求,完全可以根據自己需要定制,具體的請參見官方文檔SimpleHTTPServer,或者直接看源碼。我拷貝一段,方便參考:

import SimpleHTTPServer
import SocketServer

PORT = 8000

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler

httpd = SocketServer.TCPServer(("", PORT), Handler)

print "serving at port", PORT
httpd.serve_forever()

Python版FTP服務器

看到這里,默認你已經安裝了Python,不過你還需要安裝另外一個好用的工具。你知道,當需要找Chrome插件的時候,會去Google的WebStore;當需要找Firefox應用的時候,會去Mozilla的Add-ons;當你需要找Python組件的時候,你需要pip:A tool for installing and managing Python packages,安裝方法就不介紹了。

Python沒有內置一個直接可以用的FTP服務器,所以需要第三方組件的支持,我找到的這個組件叫pyftpdlib,首先安裝:

pip install pyftpdlib

安裝完后,和HTTP服器類似,執行以下命令就可以啟動一個FTP服務器了:

python -m pyftpdlib -p 21

后面的21端口依然是可選的,不填會隨機一個,被占用的端口將跳過。在瀏覽器敲入本機地址:
ftp://localhost:21

這時候,是匿名訪問,也就是用戶名是anonymous,密碼為空,如果想要控制訪問權限,你需要自己定制服務器,具體的可以參看pyftpdlib Tutorial,我這里拷貝過來一段作為介紹:

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer

def main():
  # Instantiate a dummy authorizer for managing 'virtual' users
  authorizer = DummyAuthorizer()

  # Define a new user having full r/w permissions and a read-only
  # anonymous user
  authorizer.add_user('user', '12345', '.', perm='elradfmwM')
  authorizer.add_anonymous(os.getcwd())

  # Instantiate FTP handler class
  handler = FTPHandler
  handler.authorizer = authorizer

  # Define a customized banner (string returned when client connects)
  handler.banner = "pyftpdlib based ftpd ready."

  # Specify a masquerade address and the range of ports to use for
  # passive connections. Decomment in case you're behind a NAT.
  #handler.masquerade_address = '151.25.42.11'
  #handler.passive_ports = range(60000, 65535)

  # Instantiate FTP server class and listen on 0.0.0.0:2121
  address = ('', 2121)
  server = FTPServer(address, handler)

  # set a limit for connections
  server.max_cons = 256
  server.max_cons_per_ip = 5

  # start ftp server
  server.serve_forever()

if __name__ == '__main__':
  main()

只看代碼應該基本知道該怎么用了,add_user顯然是添加用戶,2121是指定端口,當然也可以隨機,還有大連接數max_cons,每個ip大連接限制,更多的接口建議直接看docstrings。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么使用Python創建簡單的HTTP服務器”這篇文章對大家有幫助,同時也希望大家多多支持創新互聯成都網站設計公司,關注創新互聯成都網站設計公司行業資訊頻道,更多相關知識等著你來學習!

另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、網站設計器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

文章名稱:怎么使用Python創建簡單的HTTP服務器-創新互聯
文章鏈接:http://m.kartarina.com/article14/ccghde.html

成都網站建設公司_創新互聯,為您提供服務器托管定制網站網站策劃小程序開發ChatGPT網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網頁設計公司
主站蜘蛛池模板: 亚洲欧洲国产综合AV无码久久| 成人免费午夜无码视频| 无码国产亚洲日韩国精品视频一区二区三区| 人妻少妇偷人精品无码| 18禁成年无码免费网站无遮挡| 国产AV无码专区亚汌A√| 亚洲AV无码无限在线观看不卡| 久久久91人妻无码精品蜜桃HD| 久久国产精品无码一区二区三区| 无码专区国产精品视频| 无码人妻视频一区二区三区| 亚洲成A人片在线观看无码3D| 婷婷四虎东京热无码群交双飞视频| 亚洲伊人成无码综合网| av潮喷大喷水系列无码| 亚洲av无码精品网站| 亚洲熟妇少妇任你躁在线观看无码| 久久久久亚洲Av无码专| 成年无码av片完整版| 免费a级毛片无码av| 无码熟熟妇丰满人妻啪啪软件| 人妻丰满AV无码久久不卡| 伊人蕉久中文字幕无码专区| 亚洲私人无码综合久久网| 无码精品人妻一区二区三区免费看| 超清无码一区二区三区| 小泽玛丽无码视频一区 | 少妇人妻无码专区视频| 久久无码精品一区二区三区| 日韩美无码五月天| 无码h黄肉3d动漫在线观看| 亚洲AV无码AV男人的天堂不卡 | 无码人妻精品中文字幕免费东京热 | 日日摸日日碰人妻无码| 亚洲AV综合永久无码精品天堂| 在线观看无码AV网址| 久久久久久亚洲AV无码专区| 日韩精品人妻系列无码专区| 无码国产色欲XXXXX视频| 秋霞无码一区二区| 亚洲中文字幕无码一去台湾|