CGIなどのの質問を受付ます。
現在SPAM対策の為、一部ホストアドレスを規制中。
▼スレッド
│
└◇143:Re[3]:画像のアップに際してのエラー [moon(管理人)] 09/17 23:52
└◇144:Re[4]:画像のアップに際してのエラー [とまる] 09/18
└◇145:Re[5]:画像のアップに際してのエラー [moon(管] 09/18
└◇146:Re[6]:画像のアップに際してのエラー [とまる] 09/18
└◇147:Re[7]:画像のアップに際してのエラー [moon(管] 09/18
└◇148:追記 [moon] 09/18
└◇149:Re:追記 [とまる] 09/19
└◇150:Re[2]:追記 [moon(管] 09/19
└◇151:Re[3]:追記 [とまる] 09/20
└◇152:Re[4]:追記 [とまる] 09/21
└◇153:もしかして [moon(管] 09/21
└◇154:Re:もしかして [とまる] 09/21 <
当日記をお選びいただきましてありがとうございます。スレッド一覧
問題の件ですが、多分cgi-binフォルダが、CGIのみの動作許可で、
HTMLやIMGなどの表示がされないような設定になっているからだと思われます。
対処の方法ですが、
rib.plを開き、
# 画像アップフォルダ(背景、気分、天気)
$imgdir = './img/';
# ファイルアップロードディレクトリ(ユーザー投稿)
# → パスの最後は / で終わること
# → フルパスだと / から記述する
$file_dir = './nikup/';
という記述のところを、絶対パスで cgi-bin 以下のフォルダ以外のところを指定してください。
多分それで表示がされると思います。(多分)
カラーチャートはローカルで開いてください・・・
自分のPCの中の nik/log/index.htm を開いてください。。
早速のご回答ありがとうございます。スレッド一覧
ところで
「絶対パスで cgi-bin 以下のフォルダ以外のところを指定」とありますが
具体的にはわたしのcgi-binフォルダ以外のところにimgとnikupフォルダーを移しそこへの絶対パスを記述しなさいということでしょうか。
例えばわたしのpublic_htmlホルダにこの2つのフォルダを移した場合はそこへの絶対パスをこのように
/http:pak3.wakwak.com/~ferie/public_html/nik/img/
/http:pak3.wakwak.com/~ferie/public_html/nik/nikup/
記述すれば良いのでしょうか。
自分の無理解からかそうしてもやはりエラーが以下のように出ます。
アップロード失敗:/http:pak3.wakwak.com/~ferie/public_html/nik/nikup/200409171540.gif
再度ご教授ください。申しわけありません。
> 具体的にはわたしのcgi-binフォルダ以外のところにimgとnikupフォルダーを移しそこへの絶対パスを記述しなさいということでしょうか。スレッド一覧
その通りです。
> 例えばわたしのpublic_htmlホルダにこの2つのフォルダを移した場合はそこへの絶対パスをこのように
> /http:pak3.wakwak.com/~ferie/public_html/nik/img/
> /http:pak3.wakwak.com/~ferie/public_html/nik/nikup/
これは間違いです。
この場合の絶対パスはURLではなく、FTP(というか、パス)の絶対パスです。
例えば、
/home/acount/html/test
見たいな感じになります。
このパスはユーザーやプロバイダの設定により異なりますので、
一概に「このパスにしてください」とはいえません。
分からない場合は管理者に聞いてください。
もしくは、相対パスでも通る場合があります。
その場合は、”CGIからの相対パス”を記入してください。
ちなみに、
http://www.wakwak.com/info/connection-setup/ftp/custom-cgi.html#num3
ここで調べた限りでは、
/~ferie/nik/img/
/~ferie/nik/nikup/
とすればいいと思われます。
自分の不勉強のためお手数をおかけしております。スレッド一覧
わたしのプロバイダーの説明書にもありました。勉強不足でした。
「jpg、gifなどのimageファイルは、必ず /public_html以下にアップロードしてください。
/cgi-binの下にアップロードしても画像を表示させることはできません。」
とあり
以下2例のどちらかで記述せよとありました。
/~yyyy/images/ttt.jpg
http://parkxx.wakwak.com/~yyyy/images/ttt.jpg
moonさんのご指摘の通り私の場合は
/public_html/nikホルダにimg、nikupフォルダを移したうえで
rib.plを書き直し
/~ferie/nik/img/
/~ferie/nik/nikup/
としてためしてみました。
ところが、またしても
「アプロード失敗:/~ferie/nik/img/○○○.gif」
と出てしまいます。このエラーメッセージからパスの記述自体は正しいとはおもうのですが。
日記2の初期のホルダ構成のままで動かした時はnukupに画像ファイルは正常に入っており表示が出来ないだけでしたのですが、上の構成ではホルダの中に入る前に「アップロードの失敗」となってしまいます。
あとは何が考えられるでしょうか。画像のアップロードに際してのパスがらみの問題かとは思うのですが。
もう少し試したいと思います。
もしかしたら、ですが、スレッド一覧
../../nik/img/
../../nik/nikup/
と、相対パスにすればいけるかも・・・
自信ないけど。。。
もしかしたらパーミッションかも。。。??スレッド一覧
レスポンスの速さに恐れいります。スレッド一覧
1)
../../nik/img
../../nik/nikup
同時にpath上のホルダのパーミッションを777
2)
/~ferie/nik/img
/~ferie/nik/nikup
同時にpath上のホルダのパーミッションを777
それぞれ
1)アップロード失敗:../../nik/nikup/○○○.gif
2)アップロード失敗:/~ferie/nik/nikup/○○○.gif
とエラーが出ました。
但し、サーバーからのエラーは出ませんでした。
すでに入っている気分アイコン、天気アイコンの見本も設定いらい表示されていないということも何かのヒントになりますか。
もう少し色々いじってみます。ありがとうございました。
ルートスレッド一覧
├ public_html/
│ ├ nik/
│ │ ├ img/
│ │ │ ├ イメージ画像
│ │ │
│ │ ├ nikup/
│
├ cgi-bin/
│ ├ nik/
│ │ ├ nik.cgi など
│ │ ├ log/ などのLOGフォルダ
というような感じになるかと思います。
で、絶対パスで言うと、
/~ferie/cgi-bin/nik/nik.cgi
から
/~ferie/nik/img/
を見るのですから、
/~ferie/nik/img/
/~ferie/nik/nikup/
となり、
相対パスで言うと、
http://park3.wakwak.com/~ferie/cgi-bin/nik/nik.cgi
ここから
http://park3.wakwak.com/~ferie/nik/img/
を見るのですから、
../../nik/img/
../../nik/nikup/
となると思うのですが。
なにかちがうのかなぁ?
いつもお世話になります。スレッド一覧
ディレクトリー構造はまさにそのとうりです。
サーバーの方では、画像のディレクトリは絶対パスを指定していますので
/~ferie/nik/img/
/~ferie/nik/nikup/
でやってみましたが、アップロード失敗:/~ferie/nik/nikup/○○○.giと出ます。
またcgiはcgi-binの直下に置けとの指定もありましたのでそれも試してみました。
またそれぞれ相対パス ../../nik/img/ ../../nik/nikup/
も試しました。それもcgiをcgi-binの直下においたり
またそのたびに、lzhから解凍しなおして再設置しましたが「アップロード失敗:」です。
ところで、気分アイコン表示、天気アイコン表示ではそれぞれ画像が見えるはずですよね。
それが見えないとうことも画像のアップと同じところに理由があるのでしょうか。
やはり、画像を見えなくしているのは http://park3.wakwak.com/ のサーバーの仕様が特殊からなのでしょうか。
moonさんへスレッド一覧
わたしのサーバーのwakwakのhpに以下のような説明があります。
1. 自作CGI のパスの書き方は?
CGI ファイルをアップロード したのにCGI が正常に動作しないお客様や CGI ファイル中のパスの表記の仕方が 分からないというお客様は、下の表をご参考にHTML, CGI ファイル中のパスの書き方をご確認ください。
HTMLファイルからWAKWAKアクセスカウンタCGI 及び自作CGI を呼び出す場合と、自作CGI スクリプトファイル からWAKWAKアクセスカウンタCGI 及び自作CGI スクリプト を呼び出す場合とでは記述の仕方に次のような 違いがあります。
HTMLファイル上での
記入方法 WAKWAKアクセスカウンターCGI を呼び出す際のパス設定
http://parkxx.wakwak.com/cgi-bin/Count.cgi
もしくは /cgi-bin/Count.cgi
自作CGI を呼び出す際のパス設定
http://parkxx.wakwak.com/~yyyy/cgi-bin/test.cgi
もしくは /~yyyy/cgi-bin/test.cgi
CGI ファイル上での
記入方法 WAKWAKアクセスカウンターCGI を呼び出す際のパス設定
http://parkxx.wakwak.com/cgi-bin/Count.cgi
自作CGI を呼び出す際のパス設定
http://parkxx.wakwak.com/~yyyy/cgi-bin/test.cgi
もしくは /~yyyy/cgi-bin/test.cgi
上記の記述をファイルに記入する事により指定した HTML,CGI ファイルを呼び出す事ができます。 もし、お客様の作成されたCGI が正常に動作しない場合は
http://parkxx.wakwak.com/~yyyy/cgi-bin/test.cgi のようにフルパスでファイルを指定して みるなどいくつかの記述を試して見てください。
注) xx, yyyy にはお客様のホームページサーバ名やFTPログインIDが入ります。
2. 自作CGI から画像ファイル( jpg,gifファイル )を呼び出すには?
CGI のファイルからjpgや gifなどのimageファイルを呼び出すには、 以下の方法で表示させることができます。
jpg、gifなどのimageファイルは、必ず /public_html以下にアップロードしてください。 /cgi-binの下にアップロードしても画像 を表示させることはできません。
CGI スクリプトファイルからjpg,gif などのimageファイルを呼び出す際は 次のように記述してください。 CGI スクリプトから/public_html/images/ttt.jpgを 呼び出す際は、CGI スクリプトファイル に次のようにファイルをご指定ください。
--------------------------------
~
/~yyyy/images/ttt.jpg
~
--------------------------------
もしくは
--------------------------------
~
http://parkxx.wakwak.com/~yyyy/images/ttt.jpg
~
--------------------------------
とフルパスでご記述ください。
注)xx, yyyy にはお客様 のホームページサーバ名やFTPログインIDが入ります。
1. に記述してあるhtml及びCGI から CGI を呼び出す際のパスの表記と2.に 記載されたCGI からimageファイルを 呼び出す際のパスの表記は記述の方法が異なりますので ご注意ください。
以上ですが、いままでその通り設定したはずなのにわかりませんね。
今気づいたのですが、絶対パスの表記が違ってたかも・・・スレッド一覧
FTP上でルートからcgi-binとhtmlを置くpublic_htmlがありますよね?
その場合の絶対パスは
/~yyyy/public_html/nik/img/
としなくてはいけないような気がします。
とりあえず画像の出ていないイメージファイルがバッテンになっていますよね?
それを右クリックして、プロパティーを見るとどこを読み出していますか?
(表示URL)
それをヒントにしていけばなんとかなるような気がします。
moonさまスレッド一覧
いつも申し訳ございます。
↓ 以下が私のrib.plです。
# 天気アイコン設定LOG
$tenki_img = './log/tenki.log';
# 画像アップフォルダ(背景、気分、天気)
$imgdir = '/~ferie/public_html/nik/img/';
# 設定ファイル
$set = './log/nikset.log';
# レスフラグファイル
$res_flag = './log/res_flag.log';
# ファイルアップロードディレクトリ(ユーザー投稿)
# → パスの最後は / で終わること
# → フルパスだと / から記述する
$file_dir = '/~ferie/public_html/nik/nikup/';
open (SET,$set);
@set_kou = <SET>;
↓ところが気分画像のニコニコのプロパティはこのうよになっています。
http://park3.wakwak.com/~ferie/cgi-bin/nik/img/h1.gif
勿論imgとnikupホルダはrib.plに書き入れたpathの通りです。
もしかすると rib.plのpathが読み込まれていないようですが。