do | 創作・同人サイト制作支援サイト › フォーラム › プログラム設置・編集について › てがろぐ内にずぼログを置きたいが上手くいかない
- このトピックには9件の返信、1人の参加者があり、最後にとーれにより1年、 6ヶ月前に更新されました。
-
投稿者投稿
-
葵ゲスト
初歩的な質問で申し訳ありません。
完全に初心者で分からないことばかりです。よろしくお願いいたします。●やりたいこと
てがろぐ(skin-minimal)内にずぼログを置きたいです。●自分のhtml、CSS、PHPへの知識・理解度
ガタガタさんの書籍「個人サイトを作ろう!テンプレートですぐできる!すぐに身につく!HTML&CSS」でほぼ初めて知るぐらいの知識・理解度です。●使用サーバー、PHPバージョン、ずぼログバージョン
スターサーバー、 PHP7.4.33、ver1.1.1●症状
・skin-cover.html→skin-cover.phpに拡張子を変更するとてがろぐ側で以下のエラー文が出ます。
【「スキンの所在として指定されたディレクトリには、スキンファイルが存在しませんでした。ファイルを削除したり移動したりしていないか確認して下さい。
(CGI内の設定でスキンファイル名を変更している場合は、変更後のファイル名で存在している必要があります。)
・外側スキン: skin-cover.html
・内側スキン: skin-onelog.html」が出る。】・画像が表示されず、PHPの一部の文章がそのまま表示される。
「createZubolog($zubolog_dir, $zubolog_perpage, $zubolog_sort, dirname(__FILE__), $zubolog_temp, $zubolog_var); ?>」
「createZubologPagenation($zubolog_dir, $zubolog_perpage, $zubolog_sort, dirname(__FILE__)); ?>」●その他
そもそもずぼログ自体を上手く設置できていない、違うことをしている可能性が高いと思います。
てがろぐとskin-minimalそのもの自体は設置できていますが、ディレクトリに対する理解があまりできておらず、
これら2つも感覚的に設置している部分があります。設置マニュアルの
①拡張子のhtmlをPHPに変更するところが分からない
②任意のディレクトリに設置→任意がそもそもどこか分からない
①②の時点でつまづいています。
ここが理解できていないので、PHPも上手く作動していないのかと思います。分からないことばかりなので、
「個人サイトを作ろう!テンプレートですぐできる!すぐに身につく!HTML&CSS」のような易しい説明をしていただけると助かります。
よろしくお願いいたします。ガタガタキーマスター私はてがろぐの開発者ではないため、以下の回答はすべて憶測になります。もしもてがろぐ内にずぼログを設置できた、もしくは代替案などある方はご返信いただけましたら幸いです。
てがろぐ内にずぼログを設置することはできないと思われます。
ずぼログは仕様上phpファイル内にしか設置することはできませんが、てがろぐスキンは「skin-cover.html」「skin-onelog.html」という名前のファイルでないとスキンと認識しないため、スキンにphpファイルを使用することはできないのではないでしょうか。
おそらくですが、てがろぐは、拡張子まで含めたファイル名でスキンを認識しているのだと思います。ですので、スキンファイルをphpに変更するとてがろぐ本体がスキンを見失ってしまうのでしょう。設置マニュアルの
①拡張子のhtmlをPHPに変更するところが分からない
②任意のディレクトリに設置→任意がそもそもどこか分からない
①②の時点でつまづいています。ずぼログ設置操作としては、「 htmlファイルをphpファイルにする」というのは、ファイルの名前を変更し、拡張子.html部分を.phpに変更するだけでOKです。
また、任意のディレクトリというのも、本当にどこでもいいです。
ずぼログ本体を読み込む記述のパスさえ間違えなければ、web上に公開するためのディレクトリであればどこに置いても動作するはずです。まずはてがろぐではなく、一度まっさらなphpファイルにずぼログを正しく設置できるかどうか試していただくことをオススメします。いきなり変わったことをすると、上手くいかなかった場合に「変わったこと」をしているのがまずいのか、そもそも設置方法が間違っているのか判断がつかないためです。
葵ゲストgtgtさん返信ありがとうございます。
てがろぐの仕様上ずぼログは置けないということが分かってよかったです。
解説も丁寧にしていただいてありがとうございます!
頂いたアドバイスの通りに、まずPHPそのものと一度向き合ってみようと思います。いつもgtgtさんのサイトと書籍に本当に助けられています。
これからもサイトの更新を楽しみにしています。
お忙しい中本当にありがとうございました!とーれゲストてがろぐで「skin-cover.html」「skin-onelog.html」ファイルを「skin-cover.php」「skin-onelog.php」で利用する方法ですが、高度なカスタマイズとして恐らくできると思います。
公式「CGI本体ファイルに直接記述する高度な設定群」が参考になるかと思います。その他の項目(一番下)に記載があります。
(73行目) my $skincover =(73行目) my $skincover = ‘skin-cover.html’;(74行目) my $skininside = ‘skin-onelog.html’;スキンファイル名(外側/内側)
▲変更すると、変更後のファイル名に合致したファイルしかスキンとして認識されなくなります。(変更しないことをお勧め致します。);上記の部分で拡張子をhtml→phpに変更すればphpファイルでも使用可能かな?と思います。ただ書いてある通り、phpに変えたらphpファイルのみ対応することになるので、同じてがろぐ内でスキンを追加・変更する場合はskin-cover、skin-onelogファイルの拡張子をすべてphpに統一する必要があります。
またtegalog.cgiを直接書き換えるやり方になるので、バージョンアップの際に毎度書き換える必要があります。
お試しの際は念のためtegalog.cgiファイルのバックアップを取ってから変更してみてくださいませ。葵ゲストとーれさん返信ありがとうございます!
てがろぐ側からのエラー文は出なくなったみたいなので、
てがろぐでPHPを使えるところまでは出来たみたいです!
ありがとうございます!アドバイスの通りにやってみたところ、サーバー側で
【500 Internal Server Error
アクセスしようとしたページは
表示できませんでした。
CGIやPHPなど内部参照におけるエラーの為、
目的のページが表示できなかったことを意味します。以下のような原因が考えられます。
断続的に発生する場合:
CGIの負荷が大きい(CGIプロセスが多数動作している)。
常に発生する場合:
CGIのパーミッション設定に誤りがある。 / CGIのソースコードに問題がある。/ .htaccess の記述に誤りがある。】とエラー文が出てしまい分からなくなってしまいました。
せっかくアドバイスを頂いたのに活かせなくて申し訳ないです。とーれゲストこんにちは
CGIのパーミッション設定に誤りがある。
こちらは公式の設置マニュアルの「500 Internal Server Errorになってしまう場合の対処方法」をご覧いただければ問題ないかと思います。
CGIのソースコードに問題がある。
tegalog.cgiを直接書き換えたことで、誤って消してはいけないものを消してしまっている可能性があります。
今回は拡張子を変えただけではありますが、例えば「my $skincover = ‘skin-cover.html’;」の記述が「my $skincover = ‘skin-cover.html」と「’」や「;」が消えているとプログラムとして動作しません。.htaccess の記述に誤りがある。
もし.htaccessを設定している場合、正しく記述されているか今一度確認してみたほうが良さそうです。
CGIの負荷が大きい(CGIプロセスが多数動作している)
こちらはちょっと考えつかなかったので省略しています。
解決の手助けになれば幸いです?
とーれゲスト興味が湧いててがろぐでずぼログ利用を私の方でもいろいろためしてみました。
cgiのソースコードを改めて確認したところ、skin-cover/skin-onelogなどをphp拡張子に変更したとしても表示上は「htmlファイルだよ」と判定されてしまう仕様でした。
そのため、skin-cover/skin-onelogでは「<?php」から始まるphp文がコメントアウトされてしまい正常に動作しないことをこちらで確認しております。
phpファイルとしての判定にできれば、とも思ったのですがperlは未履修で方法が思い浮かばなかったこと、アップデートの度にソースコードを確認して手修正するのは手間だったり担保できなかったりすることからcgi内部の書き換えに寄る解決は止めておきます。手立てがないわけではなく、JavaScriptを利用してhtmlファイルですぼログ(php)の使用自体はできました。てがろぐでの動作も確認しています。
ただずぼログの設置マニュアル的に教えて良いのか不安なので、一応できるとだけお伝えさせていただきます……(てがろぐの仕様上、ページネーションはそのままでは使えないです)えむおかゲストなぜてがろぐ内にずぼログを置きたいのかお聞きしてもいいですか?
表示したいだけならとーれさんがおっしゃるように
てがろぐと別に設置したずぼログを
skin-cover.htmlの中でiframeやjavascriptで表示できると思います。てがろぐでアップロードした画像をずぼログで表示したいのであれば
ずぼログの「一覧表示したい画像が入っているフォルダ」のパスを
てがろぐの画像フォルダのパスに設定したらいける気がします。葵ゲストとーれさん、えむおかさん返信ありがとうございます!
てがろぐ内にずぼログを置きたいという表現の仕方が不安になってきたので、自分がやりたいことの詳細を書かせていただきます。
(遠回りになってしまって申し訳ないです。)①サイトをタブの切り替えで最小限で構築したい。
他サイトでよく見かけるトップページから各ページに飛ぶという感じではなく、タブ切り替えでその場でいろいろ表示させたいです。②[てがろぐ][ずぼログ][サイト説明文]というタブを上に用意して切り替えたいです。
タブそのものとてがろぐ、サイト説明文は設置ができていて動作もしています。
全てskin-cover.htmlにHTMLを書いていて今回ずぼログを置こうとしたところ、ずぼログ設置マニュアルの拡張子をPHPにする段階で
つまづいてしまいました。③てがろぐは落書きなど気軽に描いた絵を、ずぼログには時間をかけて描いた絵を載せたいので2つは分けて使用したいです。
てがろぐはギャラリー機能を使わずに、カテゴリ別で今のツ〇ッターメディア欄のような表示で見てもらうことを考えています。PHPのみでできると思い込んでいたのでJavascliptという選択肢があると思いませんでした。
勉強不足でJavasclipt、iframeのことはあまり知らないので、この後調べてみます。
とーれさん、えむおかさんアドバイス本当にありがとうございます!とても助けられています。とーれゲストこんにちは
やりたいことを詳細に教えていただきありがとうございます。
わかりやすい説明でイメージが付きました。最小限で構築したいとのことですので「他のページがなくtegalog.cgiだけを表示する」と解釈しました。(skin-cover.htmlやskin-onelog.htmlはcgiで表示する際の雛形みたいなもので、実際にこのページが表示されているわけではないのはURLでおわかりいただけるとおもいます)
JavaScriptを利用するやりかたよりiframeのほうが導入しやすそうなので、個人的にはiframeのやり方が良さそうな気がします。もちろんやりやすい方でやるのが一番ですがっ
ずぼログ表示用のphpファイルを用意し、skin-cover.html内でiframeタグで読み込む形になると思います。うまくできるといいですね!応援してます~
-
投稿者投稿