質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

391閲覧

python3.xでのwebアプリ起動

YUITIGER

総合スコア13

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/06/10 01:42

前提・実現したいこと

現在使用している参考書に、以下のように書かれていたのですが、よく意味ががわかりませんでした。

プログラムを簡易サーバで実行するには、「cgi-bin」というフォルダに配置する必要があります。以下のようなファイル構造にします。 +<webアプリディレクトリ> |-<cgi-bin> | |-(実行したいファイル名)

このwebアプリディレクトリは基本的にどこに配置しても大丈夫と書かれていたので、以下の1枚目画像の位置に配置したのですが、実行すると2枚目画像のような結果になります。1枚目画像のcgi-binファルダにはwebapp.pyというファイルが配置してあり、今回はこのファイルを実行したいです。
イメージ説明
イメージ説明

コマンドプロンプトは以下のように実行してあります。
イメージ説明

該当のソースコード

実行したいwebapp.pyのコードです。(webページでYearと実行するだけのコードです。)

print("Content-Type: text/html; charset=utf-8") print("") print("<html><head><meta charset='utf-8'><body>") print("Year") print("</body></html>")

ご該当頂けると非常に助かります。よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

python -m http.server --cgi 8081するときのカレントディレクトリは、cgi-binがあるディレクトリにしておかないといけません。

cdコマンドでPC>Windows(C:)>ユーザー>webにコマンドプロンプトのカレントディレクトリを移してから同様に実行してください。cd C:\Users\webでいけるかな。

投稿2019/06/10 02:15

hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

YUITIGER

2019/06/10 04:03

ご回答ありがとうございます。 教えて頂いたものにユーザー名を加えて、 cd C:\Users\ユーザー名\web を入力してから実行したらできました。ありがとうございました。 後学のために教えていただけると幸いなのですが、コマンドプロンプトからプログラムを実行するときは、今回のようにコマンドプロンプトのカレントディレクトリと、実行したいファイルのディレクトリを一致させないと実行できない、ということですか?
hayataka2049

2019/06/10 04:11

よく見たら、ユーザ名のところが白く塗りつぶされていたんですね。 >コマンドプロンプトからプログラムを実行するときは、今回のようにコマンドプロンプトのカレントディレクトリと、実行したいファイルのディレクトリを一致させないと実行できない、ということですか? それがすべての方法ではありませんが、基本的にはそうだと思っても構いません(python -m http.serverは実行時カレントディレクトリをwebサーバのドキュメントルートにするという、それはそれで特殊な仕様ですが)。 C:\Users\ユーザー名\hoge.py があったとして、 C:\Users\ユーザー名>python hoge.py # 相対パスによる実行(一番よく使うやつ) C:\Users>python ユーザー名\hoge.py # 相対パスによる実行(「ユーザ名」にカレントディレクトリを移さなくてもユーザ名\hoge.pyでC:\Usersから参照できる) 任意のディレクトリ>python C:\Users\ユーザー名\hoge.py # 絶対パスによる実行(どこにいても可能) くらいは選択肢がある、ということは頭の片隅に置いておきましょう。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問