ホームページをftpみたいに使うには
[上に]
[前に]
[次に]
たなはし
1998/04/06(月) 14:22:20
普通の?ホームページって
ftpサーバーのページみたいに
フォルダをいろいろ並べて、
訪問者が任意にアップロードしたりできるのですか?
HIROPON
[E-Mail]
[HomePage]
1998/04/06(月) 18:15:33
基本的に、ブラウザはサーバから送られてくるデータを受け取って表示するソフトで
すから、アップロードは無理だと思うんですけど・・・。
というか、ftpサーバのページって何ですか?もし「ftp://」で始まるページのこと
なら、それはアノニマスFTPってやつです。匿名(anonymous)でログイン、ダウンロー
ドができるFTPサーバのことですが、いずれにせよ、外部の人間(匿名でログインし
た人)はアップロードやファイルの改変はできないはずです(できたらとんでもない
ことになりますよね)。
たなはし
1998/04/06(月) 21:03:46
そうそう、それです!
まのにあすftpって、ブラウザでダウンロードできますよね。
で、nn4とかに『ファイルのアップロード』というのが
メニューにあるのですが、これでアップ出来るような
ページはつくれないのですか?
現実的にとんでもないことになるのはわかるのですが
構造上?できるのか、できないのか、
あるいはとんでもないことになるから
できなくしてるのかが知りたいです。
HIROPON
[E-Mail]
[HomePage]
1998/04/06(月) 23:41:15
なるほど、NN4のヘルプファイルを見る限りでは、確かに原理的にはアップロードは
可能みたいですね。ただ、サーバ側での設定が必要なようですから、自分でサーバを
もっているとか、そういう状況じゃないと「訪問者が任意に」っていうのは事実上無
理なんじゃないでしょうか(もちろん、こんなことはやらない方が身のためです)。
普通のFTPサーバは(FTPに限った話ではないですけど)外部からのアップロードは禁
止しているはずです。(多分、NN4の機能は、「簡易FTPクライアントとしてブラウザ
が使える」っていう程度のものだと思います。実際にやったことないんで、なんぼの
もんかは分かりませんが ( ^^ ; 。)
B-Cus
1998/04/06(月) 23:54:47
> nn4とかに『ファイルのアップロード』というのが
> メニューにあるのですが、
NN4は使ってないので、ftpなのかhttpなのかがわかりませんが、
httpにはPUTメソッドがありますね。
ところでPUTメソッドについてどなたか簡単に解説していただけませんか?
具体的には書式と実装状況についてです。
例えば
PUT /~foo/incoming/sample.dat HTTP/1.0
Content-length: 10
abcdefghij
とすればPUTできるよ、とか、apacheではPUTは実装されいないとか、
実装されているけどデフォルトではPUTは禁止なので大抵のホストでは
使えないとか。
よろしくお願いします。
miyasiro
1998/04/07(火) 02:53:16
PUTメッソドは使ったことがないので、実際のことは知りませんが、
Web Client Programming (O'REILLY/オーム社)に載ってる例でよければ…
PUT /example.html HTTP/1.0
Connection: Keep-Alive
User-Agent: Mozilla/3.0Gold (WinNT; I)
Pragma: no-cache
Host: publish.ora.com
Accept: image/gif ...(以下略)
Content-type: text/html (←例では抜けているが本来は必要と書いてある)
Content-length: 307
<!DOCTYPE HTML ...(以下略)
<HTML>
(以下 HTML のエンティティは省略)
(↓サーバレスポンス)
HTTP/1.0 201 Created
Date: ...(以下略)
とあるので、NN でもPUTメッソドを使うみたいです。(「ファイルのアップロード」がそうなのかどうかは未確認)
ただし、サーバは、普通はauthorization deniedのレスポンス(401 Unauthorizedのこと?)を返して認証情報を要求するというようなことが書いてあります。
実装状況は分かりません。
ちなみに、うちのサーバ(www2s.biglobe.ne.jp)は、CGIが所有者の権限で動くので、POSTメソッドなどを使ってパーミッションが644などのファイルが作り放題です。でも、そうじゃない場合は面倒なのかな?(おかげでパーミッションが未だによく分からない(^^;)
ALM
[E-Mail]
[HomePage]
1998/04/07(火) 07:13:08
FTP が利用できる無料ホストに登録し、アカウントとパスワードを公開する、と言うのはどうでしょう。
……別に、ご自身で契約なさっているプロバイダーのアカウントとパスワードでもいいですが。
まる高
[E-Mail]
[HomePage]
1998/04/07(火) 09:37:02
ネスケ3で「ファイルのアップロード」機能を実現した際(仕事で)、下記のHPを参考にして、アップロードしたテキスト
ファイル/バイナリファイルを受け取るCGIプログラムを制作しました。
東大の渡辺尚貴さんのHPのCGIプログラミング入門( http://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CCGI/ )
を参考にされると良いと思います。言語がC/C++ですが、perlに置き換えてコーディングすれば良いかと思います。
B-Cus
1998/04/07(火) 23:40:03
> PUTメッソドは使ったことがないので、実際のことは知りませんが、
> Web Client Programming (O'REILLY/オーム社)に載ってる例でよければ…
localhostのapacheとお話してPUTしてみたら、
<HTML><HEAD>
<TITLE>405 Method Not Allowed</TITLE>
</HEAD><BODY>
<H1>Method Not Allowed</H1>
The requested method PUT is not allowed for the URL /~foo/bar.html.<P>
</BODY></HTML>
と言われました。apacheの設定ファイルを見たんですけど、
どこらへんをいじればputを許容するのかはわかりませんでした。
> でも、そうじゃない場合は面倒なのかな?
面倒でしょうねぇ。どのディレクトリが777なのかを絶対に
知られないようにしないといけませんから。
うちはcgiwrapを通せば所有者権限で、普通にCGIを動かせば
nobody権限で動きます。
とほほ
1998/04/07(火) 23:52:27
ところで・・NN4のヘルプによると、NN4のアップロード機能はFTPを用
いるもので、FTPサイトに接続している場合のみ実行可能だそうです。
miyasiro
1998/04/08(水) 03:45:36
うちでも、ISPのサーバー上でCGIを使ってPUTでお話してみたら、
HTTP/1.0 500 Server Error
Server: Netscape-Enterprise/2.01b
と、普通のサーバーエラーが返ってきました。
GET ならちゃんと動くので、CGI には問題ないとは思うのですが…
>面倒でしょうねぇ。どのディレクトリが777なのかを絶対に
>知られないようにしないといけませんから。
やっぱり…
>うちはcgiwrapを通せば所有者権限で、普通にCGIを動かせば
>nobody権限で動きます。
使い分けができるんですね。所有者権限だけだと、なぜCGIがHTMLファイルを
出力してはいけないのかとか、掲示板などのCGIでなぜ0バイトのデータファイルが
必要なのかが、最初分からなかった…
>ところで・・NN4のヘルプによると、NN4のアップロード機能はFTPを用
>いるもので、FTPサイトに接続している場合のみ実行可能だそうです。
すいません、調べようと思っててサボってました(^^;
ただ、ウエブページを作成するComposerの方のヘルプには、以下の記述がありました。
>出版先のFTPまたはHTTPサイトのアドレスを入力する
>FTP: File Transfer Protocol (FTP)を使用してウェブページをアップロードする標準の場所を入力します。…
>HTTP: Web server protocol(HTTP)を使用してウェブページをアップロードする標準の場所を入力します。…
ということで、PUTに関してはまだよく分かってませんが、
少なくともCGIが所有者権限で動けば、<INPUT TYPE=file>などを使って、
訪問者が任意にファイルをホームページにアップロードできるようにすることは
可能なようですね。
mo
[E-Mail]
1998/05/02(土) 00:11:34
[[解決]]
はじめまして、ここに投稿するのは初めてです。
URL の一般形式は、
プロトコル://[アカウント名[:パスワード]@]ホスト名[:ポート番号]/パス名
となっています。([] の部分は省略可能)
FTP で自分のアカウントで入りたいなら、
ftp://アカウント名:パスワード@ホスト名/パス名
とすればいいわけです。「:パスワード」の部分を省略すると、
最初にアクセスするときにパスワードを聞いてきます。
パス名には、自分のホームディレクトリを絶対パス名で指定してください。
ファイルをアップロードしたいディレクトリに移ったら、メニューから
File -> Upload File
を選びます。これで、FTP と同じようにファイルをアップロード
することができます。
[上に]
[前に]
[次に]