• 締切済み

表示画面が真っ白になる場合、何が問題なのでしょうか。

現在、携帯向けHPを作成しております。 目的と流れは下記の通りといたしますが、上手く稼動しません。 どのような問題が起こっているのでしょうか。 <目的> 特定のリファラーを含むユーザーにはtopb.htmlを表示 上記以外のユーザーにはtopa.htmlを表示(コンテンツのトップページ) <流れ> 1.トップページをindex.shtmlとし、記述内容は次のとおりです。 <html> <head> <title></title> </head> <body> <!--#exec cgi="index.pl"--><br> </body> </html> パーミッションは755 2・上記目的を実行するためのperlプログラムの内容は次の通りです。 #!/usr/bin/perl my $ref = $ENV{'HTTP_REFERER'}; # topb.htmlを表示するためのHTTP_REFERER値を設定 if ( $ref =~ '特定リファラー' ){ print "location: topb.html"; } else {  print "location: topa.html"; } } パーミッションは755 以上です。 上記をサーバーにアップし、アクセスすると一文字も表示されない真っ白なページになってしまいます。 いろいろな方のご意見を頂戴し、専門誌を読んで学習して参りましたが、最後の部分で躓いております。 当方cgi及びperl初心者のため、上記に重複などがみられた場合はご了承ください。 追記 特定リファラーは複数を指定したいと考えておりますが、その場合 「'特定リファラー1|特定リファラー2'」とすればいいのでしょうか。 宜しくお願い申し上げます。

  • CGI
  • 回答数7
  • ありがとう数22

みんなの回答

回答No.7

前の回答や他の選択肢とごっちゃになっているのでは? もういちど整理して書き直します。 #5の選択肢2.で htmlファイルのパーミッションを600にする場合 *-- .htaccessの内容--- DirectoryIndex index.cgi --以上の1つだけ  (CGIを動かすためにOptions ExecCGI や   AddHandler cgi-script .cgi .pl   と言う記述が必要ならそれも合わせて 最大でも3行の記述) *-- index.cgi の内容(最小限のサンプルです) #! /usr/bin/perl print"Content-type: text/html\n\n"; my $ref = $ENV{'HTTP_REFERER'}; if ( $ref =~ m!(hoge.example.com/HOGE_A|hoge.example.com/TEST_B)! ) { print `cat topb.html`; } else { print `cat topa.html`; } __END__ `cat topa.html` の ` はバッククォートです(Shiftを押しながら@キー)  勿論 open文を使って htmlを読み込み=>表示でもいいですが Locationヘッダではなく Content-typeヘッダを表示=>REFERERで分岐=>条件に合う方のhtmlを読み込んで表示です これで うちのほうで(Linux+apache2.2+Suexec有効)でパーミッションは cgi= 700 html = 600 で行けてますよ 前の回答と混同して Locationヘッダでtopa.html に飛ばしているのなら cgiでの読み込みではなく htmlに直接ブラウザがアクセスすることになりますので 当然、アクセス出来ません 尚、htmlファイルを設置せずに HTML文をcgiスクリプト中に記述して それを表示することも出来ますが htmlの内容を変更したり 表示の確認(サーバー上ではなくあなたのPC上での確認ですが)をするために不便なので 別fileで読み込む方法を取っています

estimaster
質問者

お礼

umasikajiro様 有難うございます!! 今回のお返事で全て解決いたしました。 パーミッションは700と600で稼動しますし、アクセスしたときにtopa.shtmlなど表示されなくなりました。 感動です!! htaccess内にAddHandler cgi-script .cgi .plの記述もいらないみたいです。 本当に有難うございました。 今回の件でいろいろなサイトや掲示板で質問をいたしましたがここまで親切ご丁寧にしていただいたのは初めてです。 教えていただいたことをしっかり復習し、今後に繋げたいと思います。 有難うございました。

回答No.6

>・ topa.html の頭に . を付け .topa.html 等とする >(ファイル名を付けろとエラーになります。)  windows上だとそう成りますので コマンドラインでさーばーにログイン出来るなら $ mv topa.html .topa.html <=と打ってEnter (ls でfile一覧から消えます 見るときは ls -al) FFFTPなら Fileを右クリックして名前変更 もしこれでも直接 .topa.html にブラウザでアクセスできてしまう場合は .htaccessに <Files ~ "^\..*"> Order allow,deny Deny from all </Files> と追記してください   >・または Suexecを使っているサーバーなら topa.html のパーミッションを 600 などにする >(サーバーはSuexecを使用しているのですが600にするとhtmlが表示されなくなります。) 表示されないのは 直接ブラウザでアクセスしているのでは? Suexec環境のCGIはユーザー権限で動くので600のfileを読み込むことが出来ます と言うか CGIから読み込んで表示したときだけ内容が見えて 直接アクセスさせたくないために 600にするのですから期待通りの正常な現象ですよ

estimaster
質問者

お礼

ご回答有難うございます。 毎回同じようなことばっかりで申し訳ありません。 ファイル名の変更はできました。 この場合はcgi内の記述にもそれぞれ.を加えるということでいいのですね。 でないとアクセス自体ができません。 <Files ~ "^\..*"> ~ を追記するについては同じくアクセスができなくなってしまうのでいまのところ実行しておりません。 (指定IP以外のアクセスを許可しない記述があるためでしょうか。各キャリア機種別IPと自分のPCのIPです。) あと「直リンク禁止」などのサイトを見たりして勉強したのですが、どうしても600でのcgi読み込みができません。なぜでしょうか。 そのため、いまはcgi755 html644(tppb) shtml644(topa)にしてあります。 サーバーは確かにSuexecに対応しています。

回答No.5

*選択肢1. #3に書いた .htaccessの中の RewriteRule ^$ /~tarou/topb.html [R=302,L] を RewriteRule ^$ /~tarou/topb.html [PT,L] とすれば URLはそのままで表示される内容だけがtopb.htmlの中身となります アクセス統計に関してはサーバーのログ(バーチャルサーバーなら別途業者が用意しているはず) を見るしか無いですね。 *選択肢 2.index.cgiですべて行う  まず .htaccess に DirectoryIndex index.cgi と記述して http://example.co.jp/ へのアクセスは index.cgiで処理します 別途 topb.html と topa.html を用意して cgiの中で条件に合うほうの htmlを読み込んで表示します。 >これがクリックされた場合、広告会社にはtopa.shtmlの情報は行くのでしょうか。 今、念のため試してみましたが 選択肢1. 2.とも URLがそのままですので そのページに表示されるリンクをクリックしても http://example.co.jp/ と言うREFERERしか渡りませんで topa.html などは入りません 但し 直接 http://example.co.jp/topa.html にアクセスされた場合は別で それをも対策するなら 選択肢 2.のCGIで行う場合は  ・ topa.html の頭に . を付け .topa.html 等とする   (通常は直接出来ないが CGIからの読み込みは可能)  ・または Suexecを使っているサーバーなら topa.html のパーミッションを 600 などにする   (括弧内 同上) 選択肢 1. のrewriteで行うなら  「rewrite 直リンク禁止」 と言うキーワードで検索すれば説明ページがたくさんあります

estimaster
質問者

お礼

ご報告 このたびは大変お騒がせいたしました。 ご助力頂きました結果、当初の目的としておりました作業が無事終わりました。 有難うございます。 結果的には選択肢2を使用し、現在稼動しております。 これからの課題として ・ topa.html の頭に . を付け .topa.html 等とする (ファイル名を付けろとエラーになります。)   ・または Suexecを使っているサーバーなら topa.html のパーミッションを 600 などにする (サーバーはSuexecを使用しているのですが600にするとhtmlが表示されなくなります。) ひとつ心配なのが、サーバーでアクセスログ内のリファラーを確認したのですが/topa.shtmlと記載がありました。 上記2つのうち、どちらかを実行すれば解消されるものと奮起しております。 しつこいようですが、心より感謝いたします。 有難うございました。

estimaster
質問者

補足

お返事有難うございます。 htaccessにて処理することにしました。 早速、ご指示いただきました記述で試してみました。 <IfModule mod_rewrite.c> RewriteEngine On # REFERERにtest0やtest2が含まれる場合はtest10に飛ばす RewriteCond %{HTTP_REFERER} 'http://www.yahoo.co.jp' [OR] RewriteCond %{HTTP_REFERER} 'http://www.google.com' RewriteRule ^$ /~http://******.ne.jp/topb.html [PT,L] </IfModule> DirectoryIndex topa.html topa.htmlは表示されるのですがtopb.htmlはリファラー値を指定しても表示されないんです・・。 上記の場合のtest10とはどこを指すのでしょうか。 これが成功すればもうお手を煩わすことはないと思います。 宜しくお願い申し上げます。 追伸 広告の件、テストまでしていただき、大変助かりました。 心より感謝申し上げます。

回答No.4

う~んん説明の仕方が悪かったかな 1.SSIを使って 有効なLocationヘッダを出力することは出来ません 2.exec cgiでLocationヘッダを出力すると <A HREF タグに置換されます 3. exec cmd だとHTML文中に "Location: 指定したURL \n\n"と言う文字列が表示されるだけでジャンプはしません で、一旦 とにかく index.shtmlにアクセスした上で a.html かb.htmlにアクセスさせたいと言うことでしたら index.pl の中身---- #! /usr/bin/perl my $ref = $ENV{'HTTP_REFERER'}; # topb.htmlを表示するためのHTTP_REFERER値を設定 if ( $ref =~ m!(URL1 | URL2)! ) { print '<meta http-equiv="Refresh" content="10;URL=./topa.html">'; } else { print '<meta http-equiv="Refresh" content="10;URL=./topb.html">'; } __END__ index.plは以上 index.shtmlの中身--- <html> <head> <!--#exec cmd="./index.pl" --> </head> <body>以下略 ---------- $ref =~ m!(URL1 | URL2)! についてですが 複数のURLにマッチさせたいのであればURL1 と URL2の部分に書きます URLには / が含まれることが多いので =~ // だと / を一々エスケープしなければいけないので / の代わりに ! を使い m! マッチする文字列 ! と言う形にします (別に ! じゃなくてもいいのですがこの場合は都合がよさそう) http://www.rfs.jp/sb/perl/05/m.html それからindex.shtmlですが <HEAD>~</HEAD>の間にMETAタグが表示されないと具合が悪いです (但しブラウザによっては <BODY>以下に書いてもジャンプするかもしれません) >アクセス数は合算させたい アクセスカウンターを使うと言う意味ならば#3に書いた方法では適当で無いですね アクセスカウンターではなく単に質問者さんがアクセス数などを知りたいのであれば SSIを使わず index.cgi を優先させるDirectoryIndexにして index.cgiの中身--- #! /usr/bin/perl #この辺に アクセスをログに記録する記述を書く my $ref = $ENV{'HTTP_REFERER'}; if ( $ref =~ m!(test2/|test0/)! ) { print "Location: http://example.com/topa.html\n\n"; } else { print "Location: http://example.com/topb.html\n\n"; } __END__ などと書けばすむかと思いますが

estimaster
質問者

補足

有難うございます。 しっかりと画面が表示されるようになりました。 ご親切な対応に心より感謝いたします。 ここまで助けて頂いたのであとは自力でやってみようかと思います。 課題となりますのはコンテンツのトップページでURLを参照するとやはりtopa.shtmlやtopb.htmlと表示されてしまうことです。 どちらもトップページは~.co.jpで表示させたいんです。 ジャンプではなくSSIにて振分けを目標に頑張ります。 直接の面識はないですが、知人がこのような手法で携帯HPを運営しているので出来ない事は無いみたいなんです・・・ 余談ですが、コンテンツのトップページ(topa.shtml)にクリック保障型広告が貼ってあります。 これがクリックされた場合、広告会社にはtopa.shtmlの情報は行くのでしょうか。 行くのであれば注意を受ける前に何らかの変更をしなければと思いまして。 すみません。 甘えていろいろ聞いちゃいました。

回答No.3

.htaccessが使えるのであれば以下のように記述してください  (既に.htaccessがあるなら 追記する 基本のURLが http://example.com/~tarou/ だとする) <IfModule mod_rewrite.c> RewriteEngine On # REFERERにtest0やtest2が含まれる場合はtest10に飛ばす RewriteCond %{HTTP_REFERER} test0 [OR] RewriteCond %{HTTP_REFERER} test2 RewriteRule ^$ /~tarou/topb.html [R=302,L] </IfModule> DirectoryIndex topa.html #----以上---- もし .htaccessでRewriteが使えない場合でも index.cgiかindex.phpがDirectoryIndexに使えるなら方法はありますので 補足にお書きください それも駄目なら #1さんが書かれたようにMETAタグかJavaスクリプトを表示するCGIにするしかないですね それから >print "location: topa.html"; print "Location: http://example.com/~tarou/topa.html\n\n"; #特に末尾の\n\nが無いとそもそもヘッダとして認識されません #LocationヘッダのURLは 完全なURLが間違いないです あと#1さんの > <!--location: topb.html--> いや、それが違うのですよ <!--#exec cgi="index.pl"-->でindex.plがちゃんと動いていたら <A href="topb.html">と言うように A hrefタグに置換されます exec cgiではなく <!--#exec cmd="./index.pl"-->だと置換はされませんので HTML文中に topb.html が表示されます

estimaster
質問者

補足

早速のご回答心より感謝いたします。 DirectoryIndexにindex.cgiは使用可能です。 ご指摘頂きました箇所を修正いたしました。 ■index.shtml <html> <head> <title></title> </head> <body> <!--#exec cmd="index.pl"--><br> </body> </html> ■index.pl #!/usr/bin/perl my $ref = $ENV{'HTTP_REFERER'}; # topb.htmlを表示するためのHTTP_REFERER値を設定 if ( $ref =~ '特定リファラー値' ){ print "Location: http://**************.ne.jp/topb.shtml\n\n"; } else {  print "Location: topa.shtml"; } } 上述で合ってますでしょうか。 目的をもう一度整理いたしますと 特定リファラーを含むユーザーに対してtopb.shtmlを表示します。(topb.shtmlには任意で他のサイトに飛ばせるようなリンクを設置します。) 特定リファラーを含まないユーザーにはコンテンツ(待受や着メロサイトを予定しています)のトップページであるtopa.shtmlを表示します。 但し、アクセス数は合算させたいと考えておりますので、SSIを使用しどちらの場合も同一URLへのアクセスとします。 初心者のくせに偉そうなこと言ってすみません。 topaもしくはtopb、どちらを表示する場合も同じURLにするというのが最大の目的であります。 お力添え頂けましたら幸いです。 宜しくお願い申し上げます。

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

SSIが有効になってないとか。 そうでなくても、HTMLのbody内にHTTPヘッダー情報書いても機能しないのではないかなあ、と。

  • _himajin_
  • ベストアンサー率65% (128/195)
回答No.1

ブラウザでindex.shtmlを表示してソースを開いてみてください。たぶん以下のような感じになってると思います。 <html> <head> <title></title> </head> <body> <!--location: topb.html--><br> </body> </html> locationはhttpヘッダで通知しないといけないので、この方法では無理です。 ・携帯のブラウザが対応してるかわからないですが、metaタグ(http://www.tagindex.com/html_tag/page/meta_05.html)を出力するスクリプトにするか ・HTMLを書き換える(リファラによってどちらかのファイルを読んで書き出す)ようなスクリプトにするか ・あるいはindex.pl自体にアクセスが行くようにするか いずれかの方法にしなければならないと思います。

estimaster
質問者

補足

早速のご回答有難うございます。 index.shtmlですが<!--#exec cgi="index.pl"-->となっています。 板違いかもしれませんがperlの記述は合ってますでしょうか。 パーミッションやその他はチェックしてみたんですが・・。 おそらく、perlの記述が間違っていなければ index.shtml→topb.html ↓ topa.html とSSIによって振分けられるはずなんです。 すみません。

関連するQ&A

  • 関数について

    if文にてリファラーのパターンマッチを行って、どちらの場合もhtmlを表示したい場合、関数はprintでいいのでしょうか。 どなたか解る方、ご判断お願い申し上げます。 <記述例> #!/usr/bin/perl my $ref = $ENV{'HTTP_REFERER'}; # topb.htmlを表示するためのHTTP_REFERER値を設定 if ( $ref =~ '特定のリファラーを含むURL' ){ print "topb.html"; } else {  print "topa.html"; } }

  • 環境変数リファラーの値をを最後のページまで持ちたい。

    表題わかりにくくてすいません。 商品ごとの申し込みフォームを作成しています。 まず、 $ENV{'HTTP_REFERER'};でどのURLのページから来たか判別させて、 その最初に入ってきたリファラーの値をページ遷移のときに最後の ページまでもっていきたいのです。 ■1ページ目(HTML)名まえ年齢、商品番号などを記入 <A.HTML> ■2ページ目(CGI)住所 <B.CGI> sub page2{} ■3ページ目(CGI)確認画面。<C.CGI> sub page3{} ■4ページ目(CGI)サンクスページ <D.CGI> sub thanks{} 以上の4ページの構成ですが、最初の1ページ目のHTMLが商品ごとにちがっていて、どの商品のページのHTMLからきているのか判別させて、サンクスページで、URLごとに別の件名の確認メールを自分あてに送信できるようにしたいので、最初のページがどのURLなのかをリファラーで判断させたいのです。商品によって、入力項目を変えるたりもしています。(POSTで商品ごとのhiddenタグを送ればいいと思うかもしれませんが、今回は$ENV{'HTTP_REFERER'};についてのやり方でやりたいのです。) ですが、$ENV{'HTTP_REFERER'};を2ページ目のサブルーチンのなかに記述しても2ページ目ではどこからきているのか$ref = $ENV{'HTTP_REFERER'};などと記述すればわかるのですが、この最初のリファラーの値を3ページ目、4ページ目に持っていくのにはどうしたらいいのでしょうか?全部のページのサブルーチンに$ref = $ENV{'HTTP_REFERER'};を書いてしまうと、そのひとつまえのURLが認識されてしまいます。ですが、最初のリファラーの値をずっと最後のページまで持っていたいのです。 どなたか、方法がわかりましたらご教授願います。よろしくお願いいたします。

    • ベストアンサー
    • Perl
  • headでファイル情報を取得する場合のRefererは?

    ($type, $length, $time, $expires, $server) = head "http://www.example.jp/test.txt"; このような形でhead情報を取得する場合にRefererは送信されていないのでしょうか? example.comからexample.jpのtxtファイルを読みに行く際に、example.jp側のhtaccessでRefererによるアクセス制限をかけるとexample.comをokにしていても蹴られてしまいます。 SetEnvIf Referer "^$" ref_okにすると読めるのでheadでの情報の取得の際にはRefererが送信されていないのではないかと考えています。 ただこれだとURL直接入力でtxtが表示できるのでセキュリティの意味はありません・・・ CGIプログラムが情報を取得する際(headでもconnectでも)先にRefererの送信ができれば可能な気がしますが、そんなことができるのかわかりません。 CGIでRefererの送信方法もしくは特定のURLのCGIからのみアクセスを許可するなどのアクセス制限方法などありませんか?

    • ベストアンサー
    • Perl
  • フレームページでアクセス制限したい場合

    ある特定のURLからのアクセスを、どこかのページに飛ばすには、 <Script Language="JavaScript"> <!-- reff=document.referrer; if(reff.indexOf('相手のURL')!=-1){ location.replace('飛ばす先のURL') } //--> </Script> なのですが、 フレームページの<body>と</body>の間に設置したところ、 飛ばすことが出来ず、普通に表示されてしまいます。 この場合どうすれば、いいのでしょうか? ご意見頂けましたら幸いです。

  • htmlで画像が表示されない

    CGIを勉強し始めた者です。 手始めにCGIを使わずに画像表示をさせたところ早速つまづきました。 アドバイスお願いします。 vine linux 6.3 に apache2.4をソースからインストールしました。 /usr/local/apache2/htdocs に以下の cgi-test.html を置きました。 <html> <head> <meta http-equiv="Content-Type:" content="text/html; charset=UTF-8"> <title>CGI TEST</title> </head> <body> <h3>CGI TEST</h3> <img src="../cgi-bin/a0.gif">&nbsp;<img src="./a1.gif"> </body> </html> パーミッションは 755 root root cgi-test.html /usr/local/apache2/cgi-bin のパーミッションも 755 root root です。 ここに 数字0~9のgif画像を置いています。パーミッションは 644 root root 表示されないので/usr/local/apache2/htdocsにa0.gif, a1.gif を置いてみました。 パーミッションは 同じく 644 root root です。 数字0は表示されませんが、1は表示されます。 なぜ0が表示されないのかお教えください。

    • 締切済み
    • CGI
  • CGIについて…エラーで表示されません。

    CGIの勉強を始めたばかりの初心者です。 参考書を読んでいて、サーバーの時間を取得して表示する…っていうので、 本の通りに記述したのですが、表示されないんです。 (まだ途中段階で、とりあえずhtmlを記述した所です。) 最初、print"<html>\n";等、全部区切って書いてみた時は、 サーバーの時間は表示されましたが、ブラウザでソースを表示すると、htmlは、 </body> </html> しか表示されていませんでした。 (間違ってるのかな?と思って見直したり書き直したのですが…何度やっても同じでした。) なので、print <<EOF; ~ EOFの中に記述してみたところ、 サーバーエラーになってしまって、表示されないんです。 無料のサービスのサーバーで、自作CGIもOKです。 サーバーのヘルプに書いてあったのを読んで、 cgi-binというディレクトリに入れて、パーミッションも755に設定しました。 どこかおかしいのでしょうか?それともサーバーの問題でしょうか? #!/usr/local/bin/perl print"Content-type:text/html\n\n"; $now=localtime(time); print <<EOF; <html> <head> <title>SAMPLE</title> </head> <body> $now </body> </html> EOF

    • ベストアンサー
    • CGI
  • CGIでhtmlを作成するもブラウザに表示されない(ソース表示あり)

    PerlでHTMLを表示するCGIを作成しました。 ローカルPCで試しているのですが、ブラウザは真っ白な表示で、ステイタスバーには「ページが表示されました」のメッセージがでます。 ソースを表示するとちゃんと指定したHTMLタグがあります。 何が正常な表示の妨げになっているのでしょう。 ちなみにPerlのコードはそんなに難しいものではなく #!/usr/local/bin/perl require "./lib/cgi-lib.pl"; &ReadParse(); print <<END; content-type: text/html <html> <head> <TITLE>送信処理</TITLE> </head> <body bgcolor="#cccccc"> <center> $in{'data'}<BR> </center> </body> </html> END 程度のものです。 ・マシンは富士通FMVでOSはWinXP ・WebサーバーソフトはAN HTTPD Daemon Version 1.41g ・CGIはCygwinのPerl5.8.0です。 ・ブラウザはIE6-SP2です。 この様にブラウザで真っ白な表示になるのは1つのCGIファイルだけで、他のCGIファイルは正常にブラウザ表示されます。

    • ベストアンサー
    • Perl
  • アクセス解析カウンター

    アクセス解析カウンターの解らない事あるので教えてください http://hp.bird.to/info/access.htmlのです 1カウンターを表示する事できるでしょうか 2ページ事にアクセス数をしるにはどうするのですか 各ページに記述するらしいのですが何処に記述するのか <head>内にか<body>内にか解りません <script> document.write('<img src="http://tcnweb.ne.jp/~gg/cgi-bin/access2/access2.cgi?ref='+document.referrer+'" width=8 height=8>'); </script> 3この結果を他の人からもみえてしまうのですか 解る方教えて下さい

    • ベストアンサー
    • CGI
  • URLの一部を見てアクセス制限

    ある掲示板の改造で特定のURL以外からのアクセスを弾くものを作りたいのですが うまくいきません。 if($ENV{HTTP_REFERER} ne 'http://www.***.ne.jp/***.html(正規のリンク元)'){ if($ENV{HTTP_REFERER} ne 'http://www.***.ne.jp/***.cgi(掲示板のURL)'){ &error('不正アクセスです'); exit; } } で、始めはうまくいったのですが、掲示板で次のページに行こうとすると URLがhttp://www.***.ne.jp/***.cgi?page=2のように引数が付いてしまい、 不正アクセス扱いされてしまいます。 そこで、引数を覗いたhttp://www.***.ne.jp/***.cgiが含まれるもの全てを アクセス可能にしたいのですが、HTTP_REFERERとどのように一致させるのか わからないのです。 どのように記述すれば良いのでしょうか?

    • ベストアンサー
    • Perl
  • Perlスクリプトが、ローカルでは実行できるが、HTTP経由では実行できない

    現在Perlスクリプトを作成し サーバにアップしました。 SSHでサーバにログインし #perl a.cgi と実行したところ(CGIとして動作させるため。中身はPerlスクリプト) Content-type: text/html <html> <body> あああああ </body> </html> のようなメッセージが表示され正常に動作しているとおもいます。 しかし、 http://www.hoge.com/a.cgi をURLとしてブラウザ上で実行すると 500 Internal Server Error になります。 パーミッションは755で正常 Perlのパスは#!/usr/bin/perlとしており、これも正常です。 文字コードはeuc-jp 改行コードLF サーバはApache/1.3.33 Perlバージョンは5.8.4 自分のパソコン上でperl+HTTPサーバ(httpd)を使うと HTMLふぁいるとして出力されます。 サーバ上でHTTPを使ってアクセスしたときのみエラーとなります。 このような現象が起こるのですが原因がわかりません。 お願いします。

    • ベストアンサー
    • Perl

専門家に質問してみよう