TOPページ >> アップロード@ >> アップロードA実際にサーバーにアップロードしてみる
HTMLやCGIのファイルを作成して、サーバーにアップロードする手順まで説明しましたが、 実際に例をあげて説明をしないと、アップロードをしてパーミッションの設定をするという段階で ちょっとしたミスにより、つまずくケースが多いので、 実際にサンプルのファイルをアップロードする手順を細かく解説していきます。 ■アップロードするファイルを用意する HTML作成のページで作成したサンプルページと、 CGI作成のページで作成したカウンターCGIを組み合わせたページをアップロードしてみます。 カウンターのCGIプログラムに、HTMLを組み込んでしまいます。 オレンジ色の部分が、サンプルページのHTMLファイル部分です。 ここで、ヒアドキュメントというものを使っています。 print <<END; 〜 END(ENDの部分は自由に決めることが可能)で囲まれた部分は プリント文の ダブルクォート「print " "」で囲ったのと同じ扱いになります。 最後に、「あなたは何番目の訪問者です」の部分を中央ぞろえして完成です。 <div align="center">〜</p>でも中央ぞろえは可能ですが、 ここでは<center>〜</center>を使用しています。
#!c:\perl\bin\perl print <<END; <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>タイトル</title> </head> <body background="image/back01.png"> <pre> <div align="center"><img src="image/youkoso.gif" width="298" height="141"> <hr size="1" width="300" align="center"> <a href="index.cgi">トップページ</a> <a href="next.html">Nextページ</a> <hr size="1" width="300" align="center"> <p>わたしのホームページにようこそ!!</p> <a href="next.html"><img src="image/next.PNG" width="125" height="50" border="0"></a> </div> </pre> </body> </html> END open(READ, "<log.dat"); $count = <READ>; close READ; ++$count; open(WRITE, ">log.dat"); print WRITE $count; close WRITE; print "<center>あなたは$count番目の訪問者です</center>"; |
類 | エラー ステータス |
メッセージ・意味 |
100番台 (情報) |
100 | Continue 仮のレスポンス |
101 | Switching Protocols サーバーによりプロトコルが変更された |
|
200番台 (成功) |
200 | OK 正常に送信できました |
201 | Created POST / PUT メソッドは成功しました |
|
202 | Accepted リクエストを受け付けました |
|
203 | Non-Authoritative Information / Provisional
Information 影響のない一時的な情報です |
|
204 | No Content / No Response リクエストは受け付けましたが、リターン情報はありません |
|
205 | Deleted / Reset Content DELETE メソッドが成功しました |
|
206 | Partial Content 部分的にリクエストの実行を行いました |
|
300番台 (リダイレクション) |
301 | Moved Permanently 要求されたリソースは新しいURLに移動しました |
302 | Moved Temporarily / Found 要求されたリソースは一時的に新しいURLに移動しました |
|
303 | See Other / Method リクエストに対するURIレスポンスの形式が異なります |
|
304 | Not Modified 指定のリソースは、指定された日時以降に変更されていません |
|
305 | Use Proxy Proxy のキャッシュを使用しました(Proxyサーバのリターン) |
|
400番台 (クライアントエラー) |
400 | Bad Request / Invalid / Petici n
incorrecta リクエスト(URL)に誤りがあります |
401 | Authorization Required / Unauthorized 認証に失敗しました |
|
402 | Payment Required 有料コンテンツの認証に失敗しました(将来用の予約ステータス) |
|
403 | Forbidden アクセス権限がありません |
|
404 | Not Found 該当するページが見つかりません |
|
405 | Method Not Allowed 許可されていないメソッドです |
|
406 | None Acceptable / Not Acceptable 受け付けられないヘッダ内容です |
|
407 | Proxy Authentication Required Proxyの認証に失敗しました |
|
408 | Request Timeout タイムアウトになりました |
|
409 | Conflict リクエストはリソース状態と矛盾しているため未完了(リソース競合) |
|
410 | Gone リクエストされたリソースは既に有効ではありません(削除済) |
|
411 | Length Required Content-Length が無いためリクエストを受け付けません |
|
412 | Precondition Failed request-header フィールド中に偽であると評価された項目があります |
|
413 | Request Entity Too Large リクエストエンティティが長すぎるため処理できません |
|
414 | Request-URI Too Long Request-URI が長すぎるため処理できません |
|
415 | Unsupported Media Type サポートしていないフォーマットです |
|
416 | Unknown 理解できないリクエストです |
|
500番台 (サーバーエラー) |
500 | Internal Server Error 内部サーバエラー(CGIなどのWEBアプリケーションに誤りがあります) |
501 | Not Implemented サポートしていないリクエストです |
|
502 | Bad Gateway / Proxy Error Gateway または Proxy エラー |
|
503 | Service Unavailable サーバは一時的な過負荷やサーバメンテナンスため現在処理出来ません |
|
504 | Gateway Timeout Gateway または Proxy のタイムアウト |
|
505 | HTTP Version not supported サポートしていないバージョンのHTTPリクエストです |