いつもお世話になります。
会社HP作ってます。
はじめFC2でサーバーをレンタルしたのですが、
自作CGI(DLで取得し、少し手を加えたものです)が使えないことが分かり、FFFTPを使いinfoseekで登録しなおしました。

アップロードするとこんな画面になります。

呼び出されたURLの表示は拒否されました(403FORBIDDEN)
以下のような理由が考えられます
・iswebサイト以外からのCGI呼び出しは禁止されています
・ファイル、デキレクトリのパーミッションが不適切です
・CGIはcgi‐binディレクトリに設置してください


そこで、メールフォームをDLした手順書を見てたのですが、
■設置したいフォルダに静的ファイル群をアップする。→cgi‐binフォルダを作りその中に入れました。
また、HTML内で指定されているsend.cgi、include.cgi、postcodes/get.cgi?jsまでのパスを変更してください→この意味がさっぱり解りません・・・・・。

ちなみに、パーミッションの変更は、
FFFTPでホストに接続して、右側にあるフォルダを右クリックし、「属性」を変更すれば良いのですよね?(この方法で、指示してあった番号に書き換えました)

宜しくお願いします

このQ&Aに関連する最新のQ&A

A 回答 (6件)

No.1です。



> メールフォームですが、www.synck.com/contents/download/cgi-perl/mailform.html メールフォームプロCGIをDLさせていただいてます。

上記のマニュアルの最初の部分だけ目を通しました。
iswebの仕様と「ファイルの説明」と「設置」のところを読む限り、質問者様の環境は「設置」の右側の方のケース「cgi-binなど特定のフォルダでしか動かない場合」に相当すると思われます。
であれば、このマニュアルの「ファイルの説明」に書いてある通り、

> index.htmlやその他のファイル、あと、image(写真等)のフォルダがある状態です。そこにcgi-binというフォルダを作り、その中に上記のメールフォームを全部入れています。

ではなく、左側の”静的ファイル群”は通常の他のWebコンテンツと同じ場所に置きます。例えば、質問者様のサイトのホーム(トップページ)が

http://あなたのiswebライトID.hp.infoseek.co.jp/index.htmlだとしたら、”静的ファイル群”の置き場所は、
http://あなたのiswebライトID.hp.infoseek.co.jp/の直下にまとめて置くか、あるいは更にサブフォルダ(例えば"form"とか…)を作ってそこに置くかは自由ですが、cgi-binフォルダの中には置かない、という事です。

そして、右側の”動的ファイル群”は作成したcgi-binフォルダの中に置きます。

> 階層違い・・・というのがイマイチわからなくって・・

以下はサイトの構造として考えられる一例です。

http://あなたのiswebライトID.hp.infoseek.co.jp/
├ index.html…ホーム(トップページ)
├ hoge.html…既存のコンテンツ
├ hoge…既存のフォルダ
(以下省略)
├ form(静的ファイル群の置き場所)
│ ├ example.html
│ ├ thanks.html
│ ├ commons
│ │ ├ mailform.css
│ │ (以下省略)
│ │ └ trace.js
│ └ images
├ cgi-bin(動的ファイル群の置き場所)
│ ├ mailformpro
│ │ ├ send.cgi
│ │ (以下省略)
│ │ └ .htaccess.txt
│ └ postcodes
│ └(以下省略)

example.htmlが所謂フォームのエントリー画面であり、この中に出てくる以下の三箇所のCGIスクリプトの呼び先を、”example.html”から見て上記の様な実際のディレクトリ構造に沿う様にパスを変更しなければならない、という事です。

<script type="text/javascript" src="postcodes/get.cgi?js" charset="UTF-8"></script>
<form id="mailform" method="post" action="mailformpro/send.cgi" onsubmit="return falsesubmit(this)">
<script type="text/javascript" src="mailformpro/include.cgi" charset="UTF-8"></script>

> 階層が合っているか、から調べてみようと思います☆頑張ってみます

頑張って下さい。
    • good
    • 0
この回答へのお礼

大変分かり易く丁寧にご回答くださり、とても感謝してます!!
有難うございます^^

あれからまず、静止ファイル群を「form」というフォルダを作り、その中に入れてみたら、ブラウザで確認したときに校正がかなり崩れていたので、直下にまとめて置いてみたらその点はOKでした^^;

その後、構造の図(実際にメールフォームプロを見ていただいたんですよね!これにはかなり感激してしまいました涙。丁寧に有難うございます)
おかげで構造は「なるほど!」という程度にまで理解できるようになりました!その下に書いてくださっている(答え??と思った^^;)パス?ですが、
(1)<scripttype="text/javascript"src="commons/jquery.js"charset="UTF-8"></script>
(2)<scripttype="text/javascript"src="commons/mailform.js"charset="UTF-8"></script>
(3)<scripttype="text/javascript"src="postcodes/get.cgijs"charset="UTF-8"></script>
これを書き換える、という事ですよね!?(番号は別です)
初め、(3)のみが同じだったため、
(3)<script type="text/javascript" src="postcodes/get.cgi?js" charset="UTF-8"></script>
<form id="mailform" method="post" action="mailformpro/send.cgi" onsubmit="return falsesubmit(this)">
<script type="text/javascript" src="mailformpro/include.cgi" charset="UTF-8"></script>
として確認してみたら、
・カーソルを乗せた部分の色が変わらなくなった→以前は変わっていた
・「送信」ボタンを押してもエラーも何も表示されず、固まった状態でもないが何も変化しなくなってしまった
ので、
元のに戻し(順番だけ変えて)
(3)(2)(1)で確認してもまた同じでした。
また順番を(1)、(2)、(3)に戻すと画面だけは元通りに戻ります。でも送信するとエラーの状態ですが・・。
CGIについてinfoseek isweb内で調べてみたら
perlのパス /usr/local/bin/perl
shのパス /usr/bin/sh
とありました。これは、HTML内のどこかに入れ込む必要があるってことなんですか??
/bin/とあるので、これが
>ディレクトリ構造に沿う様にパスを変更しなければならない、という事です。
という意味ですよね!

何度も甘えてしまい申し訳ないのですが、教えてください・・m(__)m

お礼日時:2009/05/25 12:02

No.1-2です。


改めてiswebライトの仕様に目を通しましたら、確かに「sendmail:使用不可※上位プランのiswebベーシックでご利用いただけます。」とありますね。
そして、ご使用のメールフォームのPDFマニュアルの「まずはじめに」の動作環境に「sendmailかpostfixが使えて」と明記されています。

つまり、No.3-5様のご指摘の通りですね。
残念ですが、このメールフォームは質問者様の現在の環境では条件を満たしていない為、「動作しない」事になります。
私のアドバイスは、あくまでこのメールフォームが使える動作環境である事を前提としたものですので、sendmail(かpostfix)が使用可能な環境に切り替えない限りは役に立ちませんので悪しからず…
    • good
    • 0
この回答へのお礼

何度も何度も、私の意味不明な質問に丁寧にアドバイスくださり有難うございました。
ベーシックプランで契約しても良いか、一度確認してみます。
これまで色々と勉強になりました^^
有難うございました。これからはもっと自分の力でボチボチ頑張ってみます^^;お仕事頑張ってください☆

お礼日時:2009/05/27 11:05

http://isweb.www.infoseek.co.jp/info/iw_lite_if. …
ちゃんと見ましたか?
ほぼ間違いなく、iswebライトでは、sendmailは使えません!

>【HTML内で指定されているsend.cgi、include.cgi、postcodes/get.cgi?jsまでのパスを変更してください】と書いてあります。
htmlファイルの
<form id="mailform" method="post" action="mailform/send.cgi" onsubmit="return sendmail(this);">
つまり、HTMLファイルから見て、send.cgiがどこにあるかを指定します。
ここが間違っていると、404エラーになり、403エラーとはなりません。
他のパスも同じ要領で。
ここのパスとは、HTMLファイルからCGIファイルへの相対パスのことです。

>shのパス /usr/bin/sh
shのパスではなく、sendmailのパスです!
ここのパスとは、CGIファイル内に記述する、絶対パスのことです。
    • good
    • 0
この回答へのお礼

いつも有難うございます。
確認したつもりだったのですが・・・
パスに関しても勉強不足ですみませんm(。。;)m
もう一度サーバーを探してみます。

お礼日時:2009/05/27 11:01

それでは、sendmailのパスを設定する必要がありますが、パスはご存知ですか?



各パスは、HTMLファイルではなく、cgiファイルに書きます。
どのファイルに書くかは説明書をご覧ください。

私の使用していた、iswebライトは、sendmail使用不可なのでわかりません。
参考URLの下のほうに、sendmailの欄がありますので、もう一度確認きてください。

参考URL:http://isweb.www.infoseek.co.jp/info/iw_lite_if. …
    • good
    • 0
この回答へのお礼

ありがとうございます。
CGIについてinfoseek isweb内で調べてみたら
perlのパス /usr/local/bin/perl
shのパス /usr/bin/sh
とあり、多分このことだと思うのですが、
どこに書けばいいのか・・・。
>各パスは、HTMLファイルではなく、cgiファイルに書きます。
説明書には、
【HTML内で指定されているsend.cgi、include.cgi、postcodes/get.cgi?jsまでのパスを変更してください】と書いてあります。
多分、間違っているのは「パスの変更」で間違いないとは思うのですが、どこをどう変更すればよいのか教えて欲しいですm(__;)m

お礼日時:2009/05/25 14:34

iswebライトでは、sendmailが使用できなかったのでは?



1.CGIがsendmailを使用しているか調べる
2.sendmailが使用可能か、iswebで調べる

CGIがsendmailを使用するのに、サーバー側でsendmailを使用できないと、動きません。

ただし、今回の403エラーの原因が、sendmailかどうかは不明です。
    • good
    • 0
この回答へのお礼

アドバイス有難うございます!
調べてみましたが、sendmail使えるようです!

お礼日時:2009/05/25 11:19

「iswebライト」プラン(http://あなたのiswebライトID.hp.infoseek.co.jp/)というやつですか?



・iswebサイト以外からのCGI呼び出しは禁止されています
→フォームのHTMLファイルから呼び出しているCGIスクリプトの場所が別のサーバ上になっている。
【例】<form method="post" action="http://www.hogehoge.com/cgi-bin/hoge.cgi">
が、上記の様にわざわざ別のサーバを具体的に指定する様な書き方をしているとも考えにくいので、単純に階層間違いとかをしている可能性もあります。

・ファイル、ディレクトリのパーミッションが不適切です
→cgi-binフォルダやCGIスクリプトのファイルは実行権限を持ってなければ稼働しません。
これは指示に従って変更済みの様ですから、クリアしているのでしょう。

・CGIはcgi-binディレクトリに設置してください
→これは「cgi‐binフォルダを作り」とありますが、このプラン上では任意の場所にcgi-binディレクトリを作って動かせる様になっているのでしょうか?
もしかして決められた場所に既にcgi-binディレクトリが設置されているのでは?だとしたらそのディレクトリ内にCGIスクリプトを置かないと稼働しないと思いますが。

ちなみに、
×cgi‐bin(ハイフン?が全角)
○cgi-bin
です。単に記述ミスだと思いますが、もしフォルダ名がそうなっていたら正しくありませんのでご注意を。

> 設置したいフォルダに静的ファイル群をアップする。→cgi‐binフォルダを作りその中に入れました。

「静的ファイル群」と言っているところをみると、これらはCGIスクリプトそのものの事ではなく、参照元のHTMLファイル(formタグでCGIスクリプトを呼び出しているform.htmlなど)の事を指しているのでは?通常、それらのHTMLファイルはcgi-binフォルダに入る必要はありません。他のHTMLファイルと同じ扱いで良い筈です。

> また、HTML内で指定されているsend.cgi、include.cgi、postcodes/get.cgi?jsまでのパスを変更してください→この意味がさっぱり解りません・・・・・。

自分が使用しているサーバの環境によって、実際にCGIスクリプトを置ける領域というのは変わってきますので、HTML内から参照するCGIスクリプトのパスは一律ではありません。依って、それぞれの環境に合う様に、それらのHTMLから見て「実際にCGIスクリプトがある場所までのパス」に書き直して下さい、という事だと推測されますが。
    • good
    • 0
この回答へのお礼

そうです!
>「iswebライト」プラン(http://あなたのiswebライトID.hp.infoseek.co.jp/)というやつですか?
これで登録してます。
メールフォームですが、
www.synck.com/contents/download/cgi-perl/mailform.html
メールフォームプロCGIをDLさせていただいてます。
階層違い・・・というのがイマイチわからなくって・・

今、デスクトップ上の「テンプレート」というフォルダの中に、
index.htmlやその他のファイル、あと、image(写真等)のフォルダがある状態です。そこにcgi-binというフォルダを作り、その中に上記のメールフォームを全部入れています。

一応ブラウザ上で画面ば出てくるんです。でも、テスト送信をしようとすると、(最後に”送信”を押すと)呼び出されたURLの表示は拒否されました(403FORBIDDEN)
と出てきます・・・

infoseekの説明によると、cgi-binフォルダは「CGIを使うときはフォルダを作ってください~」だったので、用意されてはなかったと思います。

で、FFFTPですが、まず「テンプレート」フォルダからアップしたcgi-binが左側に出てますよね?それを、ドラッグして右側に移した状態です。
>×cgi‐bin(ハイフン?が全角)
確認したらハイフンは半角で合ってました。

>それぞれの環境に合う様に、それらのHTMLから見て「実際にCGIスクリプトがある場所までのパス」に書き直して下さい、

パスというのは​ttp://www.hogehoge.com/cgi-bin/hoge.cgiというようなやつですよね??
すみません。。手探りでやってるため基本的な事なのでしょうが、ちんぷんかんぷんなんです(汗
こんな私にでもとても分かり易い説明で、大変参考になりました!!
まず、階層が合っているか、から調べてみようと思います☆
頑張ってみます^^/有難うございました!

お礼日時:2009/05/22 10:41

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QIT用語の韓国語か英語「読取属性」

コンピュータ関連の翻訳をしているんですが、「読取属性」の韓国語がわかりません。もし英語がわかれば、そこからどうにか探せるのですが、読取属性の英語もわかりません。どなたかご存知の方、教えてください。

Aベストアンサー

読取属性ではなく、読取 ” 専 用 ” 属性ですよね。
ならば、read onlyでいいでしょう。

QHPの問い合わせフォーム設置のための、CGI設置に見つけたソフト

お世話になっております。
HPの問い合わせフォームのためのCGI設置に下記のようなソフトを見つけました。これってどうなんでしょう??とってもよさそうなんですが、素人で購入の判別がつかないでいます。もしアドバイス頂けましたら大変ありがたいです。よろしくお願い致します!!!

@WEBメールフォームhttp://www.atmarkweb.jp/atmailform/system.html

Aベストアンサー

はじめまして。

おそらく、商用、個人のホームページどちらによっても、デザイン的なものを考えるとご自分が納得できるものが良いと思うのですが、「購入の判別について」に対してお答えしますと、

5000円ほどなら高すぎるほどでもないと思います。
そのメールフォームを詳しく見た訳ではないですが、機能などきにいってらっしゃるのでしたら、ご購入してもいいのではないでしょうか。

また、無料のメールフォームでしたら、フォームプロや、フォームマンというのがあります。是非検索して比較して、購入予定のものと同等のものでしたら、無料のを使ってみたらいかがでしょうか。

参考URL:http://www.formpro.jp/index.html,http://www.formman.com/

QIT用語の英語「書込み属性」

読取専用属性は「read only」だとわかったのですが、てっきり書込み属性をwrite onlyだと思ったら違いました。
英語で何て言うのでしょうか。

Aベストアンサー

もはや英語の問題ではありませんが、、、

>この読取属性と書込み属性の意味がいまいちよくわからないんです

あるファイルなりフォルダーなりがあるとして、そのファイルを管理する基本的な情報があり、それを属性と呼んでいます。
この中には簡単にはファイルの作成日時であるとか作成者が誰であるとか、そういう情報が書かれているわけです。この属性の詳細はOSにより異なります。
ただWindowsXP なりUNIXなりの最近のマルチタスクマルチユーザーのOSの場合には、大抵、そのファイルに対する読み取り許可、書き込み許可、実行許可の最低3つが用意されています。

読み取り許可はそのファイルを読めるという許可です。
書き込み許可はそのファイルに書き込める、つまり編集などができることを意味します。
実行許可はそのファイルを実行できる許可ですが、これは実行可能なファイルの場合です。

フォルダの場合には、そのフォルダに入っているファイルを見ることができるという事を意味し、書き込み許可は、そのフォルダにファイルを入れることができるということを意味します。

削除権限についてはOSによりことなる動作の場合もあるのでなんともいえません。

マルチユーザーの場合には、
管理者グループには書き込み/読み込みの許可(permission)が与えられていて、一般ユーザーは読み込みのみ(これを通常read onlyという言い方をしたりする)などのこともできるわけです。

ただこれらはOSによりやり方が色々異なりますのでとりあえずはこの程度にしておきます。

もはや英語の問題ではありませんが、、、

>この読取属性と書込み属性の意味がいまいちよくわからないんです

あるファイルなりフォルダーなりがあるとして、そのファイルを管理する基本的な情報があり、それを属性と呼んでいます。
この中には簡単にはファイルの作成日時であるとか作成者が誰であるとか、そういう情報が書かれているわけです。この属性の詳細はOSにより異なります。
ただWindowsXP なりUNIXなりの最近のマルチタスクマルチユーザーのOSの場合には、大抵、そのファイルに対する読み取り...続きを読む

Qffftp-属性の変更(CGI)

ffftpを利用してHPをアップしています。
その中でフォーム利用していましてそのCGIを利用するにあたり
属性を変更の必要がある為、アップされているファイルを
右クリック→属性の変更→755にしたいのですが、
現状が000になっていて、755で変更しても反映されません。

これを反映させるにはどうしたらいいでしょうか?

Aベストアンサー

サーバによってはCGIを禁止していて実行できないように変更しても戻るようにしています。
(例:FC2HP、ジオシティーズ、忍者HP)
サーバのFAQ(よくある質問)を見てください。

ABCオロチ(広告デカイ)やLand.to(広告多&デカイ)やInfoseek isweb(広告やや多め)などはCGIを使用できます。

参考URL:http://www.abcoroti.com/~rent/rspace/,http://land.to/,http://isweb.www.infoseek.co.jp/

Q英語版遊戯王カードの翻訳

子供から英語版遊戯王カードの意味を聞かれて困っています。
英語力がないため直訳しかできず、「属性はなに?」などと
聞かれても遊戯王カードの知識がないため答えることができません。

英語版遊戯王カードにお詳しい方、または英語版遊戯王カードの翻訳ができるところをご存知の方、情報をお願いします。
ちなみに、英語を翻訳できるページでチャレンジしましたが専門用語?がそのまま表記されてしまいわかりませんでした。

Aベストアンサー

遊戯王カード、うちにたくさん転がっていますが、私もカードの知識がないため、どの日本語がどの英語に当てはまるのか、よくわかりません。

こういう時には、「自分で調べてごらん。楽しいよ」と言ってやるのが一番です。「yugio」で検索してみた結果、公式な英語名は「Yu-Gi-Oh!」だとわかりましたので、この「Yu-Gi-Oh!」で検索してみると、いろいろと英文サイトがヒットします。勝手がわかるファンなら、サイトを観て、「ああ、この英文がこういう意味だな」とわかるはずです。

うちの子なんて、学校の英語のテストは平均点以下ですが、小学生の頃から、英文の説明書を見ながらプラモデル作ってましたよ。好きなことは理解できるものなんですね。

参考URL:http://www.4kids.tv/show/yu-gi-oh,http://en.wikipedia.org/wiki/Yu-gi-oh

QFFFTPでフォルダがUPできない

初心者です、宜しくお願いいたします。
HP作成で、ワードでファイルを作り、FFFTPでUPしたいと思います。
ワードで作成し「○○.html」で保存すると 画像などは自動的に「○○.files」のフォルダが出来てその中に保存されます。
その「○○.files」がFFFTPでUPできません。
そのフォルダを開いて、画像ファイル一つ一つならUPできるのですが…
それだと、当然Web上では表示されません。
ホスト側にフォルダを作って入れようと試しましたが、「○○」のフォルダは作れるのですが、「○○.files」の名前では作れません (>_<)
画像をHPで表示させるのは どうしたらよいのでしょう
宜しくお願いいたします。

Aベストアンサー

 保存する前に、ワードの設定で、「長いファイル名を使用する」のチェックを外せば、ドット「.」が外れたフォルダが作成されます。参考↓
http://www.tomisan.com/word/word2000/option.html
http://www.geocities.co.jp/SiliconValley/2681/Wup.htm

Qモンストしてる人に質問です 1番簡単に作れる運極キャラは何ですか? 火属性→ 水属性→ 木属性→ 光

モンストしてる人に質問です
1番簡単に作れる運極キャラは何ですか?
火属性→
水属性→
木属性→
光属性→
闇属性→
教えてくださいお願いします!

Aベストアンサー

火 エールソレイユ

水 ぬらりひょん

木 一寸法師

光 座敷わらし

闇 イナリ


ちなみにクイバタはDWに地雷が有り
序盤は すぐには対応出来ない。

Qffftpのホスト側のファイルをフォルダに移動するには

サイトの更新にFFFTPを使っています。
ホスト側にフォルダに入っていないファイルがたくさんあり、それを整理できるかなと、ホスト側で新しいフォルダを作ってみました。
作るまではよかったのですが、そこに収納したいファイルの移動させ方が分かりません。
ホスト側だけにフォルダを作成したことが、まず間違いでしょうか?。

よろしくお願いします。

Aベストアンサー

まず、ホスト側のファイルをローカル側にダウンロードしてから、
それを新しく作ったフォルダにアップロードすれば良いのでは無いでしょうか?

Q属性について

表の属性・セルの属性・画像の属性いろいろありますが、この属性とは、どのように理解したらいいんでしょうか?

宜しくお願いします。

Aベストアンサー

ある部分でのグループ分けで、どのグループに属するかとか、そのグループに属するか属さないかなどをあらわすものだと思います。

たとえば、エクスプローラなどで、txtファイルのアイコンの上で右クリックしてプロパティを選ぶとそのファイルのプロパティが出て、下のほうに属性とゆうのがあり、読み取り専用と隠しファイルの属性があると思いまが、
この属性は、ファイルのグループのある特徴で分けた属性だと思います。

読み取り専用の属性は、読み書きできるか、それとも、読み取りだけかの部分でクループをわけた属性だとおもいます。

Qisweb

iswebサーバのperlのバージョンはいくつですか?

Aベストアンサー

きちんとまとまってなくて判りづらかったけど
http://help.www.infoseek.co.jp/isweb/?id=20601

>●CGIスクリプトに使える言語は何ですか?(その際のパスは?)
perl 5.6.1 です。呼び出し時の拡張子は .cgi としてください。
パスは /usr/local/bin/perl です。


人気Q&Aランキング

おすすめ情報