2012-07-10 1 views
6

私はPythonのサーバとして、次のコードを持っている:PythonのHTTPServerを使用してDocumentRootを設定する方法は?

#!/usr/bin/python3 
from http.server import HTTPServer, CGIHTTPRequestHandler 

port = 8080 
host_name = "localhost" 
httpd = HTTPServer((host_name, port), CGIHTTPRequestHandler) 
print("server started, to quit press <ctrl-c>") 
httpd.serve_forever() 

はどのようにして、サーバーからページを提供されているのDocumentRootを設定してください。

答えて

6

組み込みのCGIHTTPRequestHandlerクラスは現在の作業ディレクトリ(通常はPythonを起動したディレクトリ)から提供されます。

このクラスは、ファイルまたはCGIスクリプトの出力を現在のディレクトリ以下から提供するために使用されます。

os.chdir()を使用すると、現在の作業ディレクトリを変更できます。

+0

すばやくありがとう – chutsu

0

あなたがGETリクエストを処理すると、スクリプトがで実行されているカレントディレクトリからの相対パスにそのを翻訳する必要があります。

http://docs.python.org/library/simplehttpserver.html#module-SimpleHTTPServerを見て、do_GETセクション。あなたはあなたの目的にそれを適応させることができるはずです

関連する問題