• 締切済み

携帯版AdSenseをさくら+CGIで使いたいのですが…

さくらインターネットで、携帯版AdSenseが表示できずに困っています…涙 安いプランなのでPHPが使えず、CGIで ・スクリプトを取得してHTMLと同じディレクトリに配置 ・.htaccessで.htmlでのSSI利用を可能に ・その後exec cgiで呼び出す というやり方をしているのですが、表示されません… http://ryusai.cocolog-nifty.com/blog/2008/01/include_virtual.html の方法通り、include virtualで読み込んで、スクリプトに print "Content-type: text/plain\n\n"; を追記すれば表示できたのですが、コードの改変をすると規約違反なので 行き詰まってしまいました。 さくらでCGI/Perlを使って設置する方法はないのでしょうか? 同じサーバーでMT4iを動かしていまして、そちらでは表示できましたので 不可能ではないと思うのですが… どなたか詳しい方、お助けいただければ幸いです。

みんなの回答

noname#113769
noname#113769
回答No.2

perlのパスやヘッダは改変には該当しないと思います。 改変しないと動作しない場合の方が多いと思います。 私も悪戦苦闘しましたが、こちらのサイトの方法で設置できました。 ためしてみては。 http://memo.webings.net/Google%83%82%83o%83C%83%8B%83R%83%93%83e%83%93%83c%8C%FC%82%AFAdSense/

参考URL:
http://memo.webings.net/Google%83%82%83o%83C%83%8B%83R%83%93%83e%83%93%83c%8C%FC%82%AFAdSense/
全文を見る
すると、全ての回答が全文表示されます。
  • okmotokun
  • ベストアンサー率59% (92/155)
回答No.1

SSiコマンドが「exec」であろうと、「include」であろうと、呼び出すスクリプトに、content-type ヘッダが無ければエラーになります。 私は、アドセンスコードの1行目を修正することと、ヘッダ行を挿入することは規約上の「改変」にはあたらないと思うのですが、それはさておいて あなたがどうしても、アドセンスコードに一字一句もてを加えたくないというのであれば、 別ファイルでヘッダを記述したスクリプトを作り、そこからアドセンスコードのファイルを require で読み込めば良いのではありませんか。

araichuu
質問者

お礼

ご回答ありがとうございます! やはり修正が必要なコードということでしたか… アドセンスが無くなると生活が大変なので、修正するのもビクビクしているのですが、一度googleに何とかならないか相談してみます。 requireで読み込む方法も一度試してみたのですが失敗しまして、多分私の知識不足が原因ですのでさらに勉強したいと思います。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CGIにSSIカウンタをつけたい

    掲示板や日記帳などのCGIに、別途ダウンロードしたSSIのテキストカウンタを表示させようとしたところ、ローカル・Web共に表示されませんでした。 表示する為の記述は「<!--#include virtual="仮想パス"-->」で、HTMLファイルに記述した場合は問題なく表示・動作しました。 HTMLファイルで表示・動作しましたし、CGI・SSI・「.htaccess」ファイルなどの設定はおそらく問題ありません。 SSIのテキストカウンタは「The Room」というサイトの「Text Day Counter Ver.1.10 SSI版」を使用しています。 CGIは「掲示板や日記帳など」と言いましたが、まだ検討段階で特定のCGIはなく、色々なCGIで試しています。 ※特定のものだけではなく、テキストカウンタを表示したいと思うCGIにつけたいのです。 CGIの記述は (1) print "<!--#include virtual=\"仮想パス\"-->\n" ; (2) print '<!--#include virtual="仮想パス"-->\n' ; (3) print "<!--#include virtual='仮想パス'-->\n" ; (4) print <<"EOM"; <!--#include virtual="仮想パス"--> EOM と4通り試しましたが、どれも動作しませんでした。 SSIのテキストカウンタのパスが「http://xxx.yyy.zzz/aaa/bbb/ccc/txtdayc1.cgi」だとしたら、仮想パスは「/aaa/bbb/ccc/txtdayc1.cgi」のようなので、そう記述しましたが動作しませんでした。 CGIと同じディレクトリに置いているので、記述を「<!--#include virtual="./txtdayc1.cgi"-->」に変えたところ、HTMLファイルでは動作しました。 なぜSSIのテキストカウンタがCGIで表示されないのか、アドバイスをお願いできないでしょうか? また、「<!--#include virtual="仮想パス"-->」を「<!--#include virtual="CGIファイル名"-->」または「<!--#include virtual="フルパス"-->」のように記述しても問題ないのかも教えて頂けると助かります。 宜しくお願い致します。

    • ベストアンサー
    • CGI
  • SSIの『#exec cmd』と『#exec cgi』の違いがよくわかりません

    SSI初心者の者です。 参考書(CGIプログラミング入門/翔泳社)を見ながらCGIとSSIの勉強をしてるのですが、SSIの『#exec cmd』と『#exec cgi』の違いがよくわかりません。 本には前者はPerlスクリプトで後者はCGIスクリプトの場合に使うって書いてあるのですが、この2つってどう違うのですか? 前後の文脈から察するにCGIスクリプトは『print "Content-Type: text/html"』があって、 Perlスクリプトはこれが無いものと読み取れるのですが そうなのでしょうか? 初心者向けに御回答していただけますよう、よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • SSIからCGIを起動するときのパスの設定

    SSIからCGIを起動について他の方の過去の質問を参照させて頂いたのですが解決できず困っております。 index.shtml内からSSIを使用して <!--exec cgi="/cgi-bin/test.cgi"--> と記述してCGIを実行したところ [an error occurred while processing this directive] と表示され実行できませんでした。 エラーログを見たら invalid CGI ref "/cgi-bin/test.cgi" と表示されていました。 試しに「http://ホスト名/cgi-bin/test.cgi」とアドレスに記入して 実行した場合は正常に実行されました。 (「cgi-bin」はhttpd.conf内でScriptAliasで設定してます) またSSIが正常に起動しているかの確認として <!--echo var="DATE_LOCAL"--> を実行してみたところ正常に時刻が表示されました。 「include virtual」も試しましたが結果は同じでした。 「exec cmd」の場合は何も表示されませんでした。 どこの設定・指定が間違っているのか検討がつかない状態で 手詰まり状態になってます。 原因・手がかり等分かる方、ご教授願います。

    • ベストアンサー
    • CGI
  • SSI で引数をCGIに渡したいのですが、

    SSI で引数をCGIに渡したいのですが、 HTMLの記述を <h1>1行目<!--#exec cmd="./emoji.cgi 0"-->絵文字1行目分。</h1> <h1>2行目<!--#exec cmd="./emoji.cgi? 1"-->絵文字2行目分。</h1> <h1>3行目<!--#exec cmd="./emoji.cgi?2"-->絵文字3行目分。</h1> <h1>4行目<!--#include virtual="./emoji.cgi 3"-->絵文字4行目分。</h1> <h1>5行目<!--#include virtual="test.cgi? 4"-->絵文字5行目分。</h1> <h1>6行目<!--#include virtual="test.cgi?5"-->絵文字6行目分。</h1> として、CGI で $ARGV[0] で使いたいのですが、出力するとSSI部分に [an error occurred while processing this directive] と、ERROEが出力されて、上手く行きません。 ネットで調べてみるとApache バージョンのによってバグが有る様な内容も有りますし、 ASJホスティングサービスのページを見ると ------------------------------------------------------------------------------------------- コマンドライン引数を渡すSSI のご利用はいただけません。 こちらは、suExec ではなくApache の一般的なセキュリティ仕様となっております。 ------------------------------------------------------------------------------------------- と書いてあったりします。サーバーの設定の問題なのでしょうか? サーバーは PC DEPOT系のネットプラッツ、専用サーバー(2万2000円/月・結構無理して払っています)です。 中は、Apache バージョン 1.3.12 ・レッドハット6.2、と聞きました。 ネットプラッツの電話サーポートの方に訪ねたのですが、 「使えるか、使えないか、そこまでのサポートは出来ない」との事でした。 サポートの方はとても親切なのですが、肝心の事が「サポートできません」って事なので サーポートというよりカウンセリング状態で・・・問題が解決できません。 サーバーの設定方法 または 記述方法が有りましたら教えて頂けないでしょうか? 宜しくお願いします。

    • ベストアンサー
    • CGI
  • PerlでHTMLを読み込み記述されたSSIコマンド(exec)の実行を実現するには。

    HTMLファイルを読み込んで表示するCGIを作っています。 それで、そのHTMLファイルに記述されたSSIコマンドを、 そのCGIで認識して、それを実行する。ということを実現したいと思っています。 includeコマンドは簡単に実現ができたのですが、 execコマンドが完全には実現できません・・・。 一応、openのパイプを使って、 <!--#exec cmd="test.cgi" --> のようなコマンドを認識しそれを実行して返すことはできました。 しかし、test.cgi?a=wのように パラメータをつけての実行が実現できません。 もちろん、SSIと同じように、 execコマンドで実行する先のCGI、プログラムなどを 改変することなくそのまま実行できることが条件です。 (例えば、$ENV{'QUERY_STRING'}ではなくARGVを使うようにするのではダメなんです) お知恵をお貸しいただけると幸いです。 どうかよろしく御願いいたします。

    • ベストアンサー
    • Perl
  • Google Adsenseのモバイル向け広告について

    グーグルアドセンスでモバイル向けAdsenseというのがあって利用したいと考えています。 そこでソースを貼ろうとしたんですが… サーバーサイドのスクリプト言語で、CGI/Perl,PHP,JSP,ASPとあるうんですが、HTMLに貼ってもできませんよね? CGIは自分で設置はできますが、ソース改変などは知識があまりないため不安です。 PHPは知識が一切なく、JSPとASPについては意味がわかりません。 どれを選ぶのがもっとも良いでしょうか?

  • CGIスキンに外部txtを表示するには?

    お世話になります。 初歩的な質問だと思いますが、お付き合いくださるとありがたいです。 ・‥…━━━・‥…━━━ SSIやPHPで、複数ページに表示するメニューを 一個の外部ファイルにして、各ページから読み込む方法がありますよね。 <!--#include virtual="menu.txt"-->等 これは、CGIのスキンには使用出来ないでしょうか。 (例えば、apeboardやCLEVER等のスキンが使えるCGIを使用予定) 他のページと同じようにBBSやリンクCGI、 メールフォームなどのスキンも 同じファイルをメニュー部分として呼び出したいと思っています。 CGIフォルダに.htaccessで「AddType text/x-server-parsed-html .shtml .html .cgi」と書いても呼び出せませんでした。 (同じディレクトリのHTMLファイルは、呼び出せました) 何か方法があるのではないかと思い、書き込みさせて頂きます。 どうぞ宜しくお願いいたします。

    • ベストアンサー
    • CGI
  • カウンター設置について

    http://happy.honesto.net/cgi/ にあるdaycounter(SSI)をDLしてtok2で設置を試みたのですが、 どうもうまくいきません。  アクセス総数:<!--#exec cmd="./count.cgi total"--><br> 本日のアクセス数:<!--#exec cmd="./count.cgi today"--><br> 昨日のアクセス数:<!--#exec cmd="./count.cgi yesterday"--><br> としてみたのですが、何も表示されません。 また、exec cgiや、include virtualを使ったら、 [an error occurred while processing this directive] とでてしまいました。 どうしたらいいのでしょうか? tok2ではSSIを使用できると書かれていたのですが・・・・ ちなみにパーミッションはtok2推奨の、 ディレクトリ:lock・・・701 count.cgi・・・700 count.dat・・・600 としました。 どなたか設置方法を教えてください。

    • 締切済み
    • CGI
  • クッキー方式のユーザー認証でユーザー名を表示させるには

    クッキーとセッションIDを使用したユーザー認証を使用しています。 ユーザー名を各ページに表示したいと思っています。CGIの場合は$ENV{'REMOTE_USER'}と表示すればID名がしっかり表示されるのですが、SSIで呼び出してHTMLなどに表示しようとしても出来ません。 【使用した簡単なスクリプト】 -------------- id-viewer.cgi ----------- #!/usr/local/bin/perl print "Content-type: text/plain\n\n"; print "$ENV{'REMOTE_USER'}\n"; --------------------------------------- 表示させたいHTMLに <!--#exec cgi="id-viewer.cgi"--> と明記 しかし何にも表示されませんでした。ためしに基本認証で実験した場合にはHTMLでもしっかりと表示されました。 どうぞよろしくお願いいたします。

    • 締切済み
    • CGI
  • 時間でリンクが変わるSSIとCGI

    お世話になります。よろしくお願い致します。 時間によって飛ぶリンク先を変えるCGIのスクリプトをSSIと組み合わせて考えていますが、頭が混乱しています。どなたか教えてくださいませ。 午前1時から午前5時までは違うページにしたいです。 <A href='<!--#exec cmd="jikan.cgi"-->' ><この時間の楽しいページ♪</A> というSSIを使ったリンクをSHTMLのページに作っておきます。exec cmdは使えます。 で、 jikan.cgiで、夜中はyonaka.htmlに飛ばせて、それ以外はhiru.htmlにリンクしたいです。 ちなみにyonaka.htmlは少しセクシーなページにしたいです(笑)。 yonaka.htmlには.htaccessでアクセス制限でリンク元からしか入れないようにする方法は知っています。つまり、前回yonaka.htmlに入った人がお気に入りに登録してもアクセスできないようにする方法は知っています。 jikan.cgiは、 $hour = (localtime(time))[2]; if ($hour > 1 && $hour < 5) { というよなあたりまでは良いでしょうか?…無知で恥ずかしいです(涙) あと少しとか思われるかも知れませんが、私には無限の彼方です(大涙) よろしくお願い致します。(レモン)