🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

1853閲覧

はじめてのTELNET、当該端末に仕上げたWebページから正常レスポンスを得るには?

saya24

総合スコア246

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

2クリップ

投稿2019/11/26 03:27

自分のパソコンに Apache2.4・PHP7.2をセットアップ済で、
当該端末のブラウザURL指定枠に、http://localhost/hoge/logon.html と打ち込めば 正常にそのWebページのデザインが現れるようになっています。

今更ですが、自身の端末(Windows10x64)で、コマンドプロンプトのTELNETとやらで 当該Webページのレスポンスを受ける実験をしだしました。HTTPのやりとりを理解しないまま開発に向き合ってきた自分に嫌気がさし...

自分の理解力のなさからこちらの記事を読んでも、どういったアクセスの仕方が正しいのかわからず、「400 Bad Request」のレスポンスを受け続けています。

自分が試したコマンドは telnet localhost 80 での接続後 真っ黒な画面で

GET /hoge/logon.html HTTP/1.0

と打ち込み エンターキーを打っています。本来は どういったコマンドの入力の仕方をするものでしょうか?

お手すきの方 ご見解をよろしくお願い申し上げます。

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

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

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

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

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

guest

回答1

0

ベストアンサー

どういったコマンドの入力の仕方をするものでしょうか?

おおむねそれで正しいのですが、Apacheサーバー側がHTTP/1.0 を受け付けてないか、挙動が少し違うかもしれません。HTTP/1.1を指定し、Host:フィールドを追加して試してみてください。

GET /hoge/logon.html HTTP/1.1<改行> Host: localhost<改行> <改行>

バージョンやフィールドの扱いについては、正しくはRFCを参照されることをお勧めします。

Hypertext Transfer Protocol -- HTTP/1.0 - rfc1945
Hypertext Transfer Protocol -- HTTP/1.1 - rfc2616

投稿2019/11/26 03:36

編集2019/11/26 03:53
dodox86

総合スコア9254

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

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

dodox86

2019/11/26 04:00 編集

telnetクライアントの改行コードの問題もあるかもしれないので、改行コードがCRLFになっていることを確認してください。RFC上ではCRLFです。サーバーによっては改行コードの許容範囲に差があったりします。
saya24

2019/11/26 04:03

ありがとうございます、早速コマンドを変えて試したところ、しばらく無返答となり、timeoutとなりました。htmlがズラズラと並ぶ返答を受けるのかな、と思っていたのですが...こういうもんですか
dodox86

2019/11/26 04:05

いや、それはたぶん違いますね。サーバー側のアクセスログは確認できませんか。また、入力の最後に改行(ENTERキー)を連打してみてください。それで反応が無ければ、改行コードが違っています。たぶん。
saya24

2019/11/26 04:49

2回Enterキーを連打したら無事 ページのHTMLが表示されました。感激! ありがとうございました。これにて本件クローズとさせて頂きます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問