カテゴリ | |
---|---|
サマリ | 添付ファイルがアップロードできない |
バージョン | 1.4 |
投稿者 | GYBE |
状態 | 不明 |
投稿日 | 2003-09-23 (TUE) 02:57:01 |
添付ファイルのことばかりで済みません。 「PukiWiki/CGI版PHPで動作させるには」を参考にしてinfoseekのホスティングサービス「isweb」上でPukiWikiを稼働させているのですが、添付ファイルがアップロードできません。ボタンは押せるのですが、例えばFrontpage上にある#attachですと「FrontPage の添付ファイル一覧」というページにとばされ、「添付ファイルがありません。」というメッセージが出てきてしまいます。 パーミッションは確認しました。ファイルサイズも適正です。また、phpinfo()を試すと、インターネットサーバーエラー500が表示されます。ですが、もしかすると500は私の設定ミスかもしれません。心許ない報告で申し訳ないのですが、アドバイスが頂けると助かります。tesyes
isweb はよくわかりませんが、ちょっと調べた所ではPHPが使えるとすると有料サービスだと思います。チェックすべき所は、PukiWikiが置いてあるディレクトリの特性(isweb.htaccessでの設定)と wiki ,diff.cache ディレクトリ下のファイル(PukiWikiが作ったファイル)のowner(所有者) だと思います。全ファイル(*.php) に PHPへのパスを書き込んで無いとすれば、htaccessの設定でなさっていると思いますし、permissionはownerとsetですのでそのあたりからチェックなさるといいと思います。なお、個人情報をのぞいてどのように設定しているのか?どのようなファイル名のファイルを添付なさろうとしたのかを晒していただかないと同じiswebで苦労した方がいらっしゃらない限り情報不足でアドバイスが得られないと思います。ちょっと検索したかぎりでは、iswebに設置されたPukiWikiを見付けられなかったので、サーバ側の設定(iswebも制限が他よりきついと言っているようですし)の為うまく設置できないのかもしれません。
回答ありがとうございます。使用しているのはiswebの有料版サービスです。ご推察のようにisweb_htaccessには「CGI版PHPで動作させるには」の通り、AddHandler cgi-script .php DirectoryIndex pukiwiki.phpと記述させてあります。wiki,diff,cacheは777ですが、以下のファイルは644です。これは通常なのでしょうか。添付使用としているファイルはファイル名全て半角英字のjpgです。なお、その他のファイルでも反応は同じです。参考になりますでしょうか。また設定情報をどのように晒せば良いのかが恥ずかしながらわかりません。基本的には設置マニュアル以上のことはやっておりません。
まず、attach.inc.phpのソースを読むと、表示されたのが「全ページの添付ファイル一覧」ではなくて「FrontPage の添付ファイル一覧」であることから、フォームのパラメータ「refer=FrontPage」は渡っているようです。
次いで、フォームでアップロードする時の「pcmd=post」の場合、パラメータ「attach_file」が検出できないと「pcmd=list」扱いになって前述のような「添付ファイル一覧」が表示されるようです。というわけで、パラメータ「attach_file」がPHP変数「$_FILES」の中に検出できていないことが原因のようです。
さて、その原因は何か?ですが、「PHPのPOSTメソッド」によると、$_FILESが有効なのはPHP 4.1.0以降とのことですが、お使いのPHPのバージョンはいくつでしょうか?
その他にも注意事項があるようです→「PHPの陥りやすい落とし穴」を参照。
isweb の FAQによると PHP-4.3.2 , path=/usr/local/bin/php, mbstring/mbstr-enc_trans/mbregex/zend-multibyte のようなので、versionの問題ではなさそう。safe_mode かつ CGIバイナリとしてのインストールと セキュリティ上、いくつかの関数、ライブラリ等は使用制限を設けているとのことなのでそのあたりの問題かなぁ?
そうですか。。。いずれにしても、PHPのインストールや設定の問題ですので、iswebのサポートに「POSTメソッドでのファイルアップロードの方法」を(可不可を含め)問い合わせてみてはいかがでしょうか?(不可という返事をもらいそうですが念押しと確認という意味で。可でも不可でも確かな情報が得られるでしょうから)
infoseekで設置する場合の件ですが、属性"x"を加えるという項目がありましたが、これはいったいどういう意味でしょうか?全くの初心者なんでわかりませんでした。
rwx の x だとすれば、実行のことだと思いますよ。読取り(r)、書き込み(w)、実行(x) です。