練習モードのFとJ、ホームポジションの2つしか
選べないのですが、どうしたらいいでしょうか?
OSはWindows XPです。
この掲示板でツリー順表示の階層がちょっとおかしいのは、
オフラインビューアmamimiで書いているためで、
バグじゃないです。
変換の都合上、恒にルート記事への返信になってしまう仕様。
0.9→1.0変換プログラムの訂正版をアップロードしました。
> bbslibのパーミッションは707でした
> また、データフォルダであるdataも702とユーザ書き込み許可を
> ...
> たしかに、不思議かもしれませんが、そうしたら
> data(702 にしたデータフォルダからデータが読み込めるのも
解ったような解らないような、なんだか複雑ですね(^^;。
私もそれほどUNIXに詳しくないのでさっぱりです。
だれか説明してくれないかな。
然しcgiがユーザーアカウントで動作していないとなると厄介です。
cgiにsetuidを立ててユーザーアカウントで実行できないですか?
> 私はこれを改造して作ったデータだけdata/以下に保存するバージョンのcgiで
> ずっと運営していたのです。おお、conv_090_100を書き直さないと。。。
これが、改造バージョンの違う点だったんですね。
> > ・パーミッションなど
> > BBS-LIB(755 ←BBS用につくったフォルダ
> > TEST(755 ←自動生成されたフォルダ
> > ・所有者
> > BBS-LIB(9397 ←たぶん個別のIDかと
> > TEST(15 ←CGI生成したものはこうなります(内部ファイルも同じく
ここを訂正で
bbslibのパーミッションは707でした
また、データフォルダであるdataも702とユーザ書き込み許可を
しておかないと、フォルダは生成できませんでした
> 所有者のユーザーIDが小さいことから、cgiはwebサーバの
> 実行用ユーザ(大抵はwwwとかいう名前を付けたりしますが)
> の権限で動いているように思われます。
多分名前は違いますが、そうかとおもいます。
どのグループに所属しているかまではわかりませんが。
> 。。。とすると、755のフォルダにcgiがファイルを作成できるのも
> 不思議な気がしますね。一体どうなってるのか見当がつきません。
たしかに、不思議かもしれませんが、そうしたら
data(702 にしたデータフォルダからデータが読み込めるのも
少々不思議に感じたりはします
> 0.9ではファイルはみんな自分の所有だったのでしょうか?
いいえ。作成された*.*はすべて15所有となっていました。
ファイルのあるフォルダは作成したものだったので9397でした。
この時のフォルダのパーミッションは707だったかと。
今0.9.0を確認して、ちょっと勘違いしていることに気づきました。
公開してる0.9のcgiは全くディレクトリを作らないタイプだったのですね。
私はこれを改造して作ったデータだけdata/以下に保存するバージョンのcgiで
ずっと運営していたのです。おお、conv_090_100を書き直さないと。。。
> ・パーミッションなど
> BBS-LIB(755 ←BBS用につくったフォルダ
> TEST(755 ←自動生成されたフォルダ
> この↑のTESTというフォルダ中のファイルも含めて消せないのです。
> ・所有者
> BBS-LIB(9397 ←たぶん個別のIDかと
> TEST(15 ←CGI生成したものはこうなります(内部ファイルも同じく
所有者のユーザーIDが小さいことから、cgiはwebサーバの
実行用ユーザ(大抵はwwwとかいう名前を付けたりしますが)
の権限で動いているように思われます。
。。。とすると、755のフォルダにcgiがファイルを作成できるのも
不思議な気がしますね。一体どうなってるのか見当がつきません。
0.9ではファイルはみんな自分の所有だったのでしょうか?
だいぶ、掲示板の模様替えをなさったもよう。
面白いアイディアですね >寄せ書き掲示板
本題、タイトルのとおり、CGIが作ったファイルが
FTPなどで消せないことがあるということがわかりました。
いろいろ調べたところ、同じようにCGIでファイル操作をすれば
大丈夫だとはわかりましたが・・・いろいろと面倒です
とりあえず、動作環境も含めて書きさせていただきます
・UNIXサーバ
・レンタルサーバとして利用中
・CGI本体はシェルにてコンパイル(一応Linux版Binaryでも動きました)
・パーミッションなど
BBS-LIB(755 ←BBS用につくったフォルダ
TEST(755 ←自動生成されたフォルダ
この↑のTESTというフォルダ中のファイルも含めて消せないのです。
・所有者
BBS-LIB(9397 ←たぶん個別のIDかと
TEST(15 ←CGI生成したものはこうなります(内部ファイルも同じく
このような状況でシェルから rm -r で消そうとしてもWriteProtect〜
とでてしまい、消せないようです。いまはディレクトリ操作CGIで削除しましたが。
ちなみに、ディレクトリへ新規作成さえもできないようになっています(755なのに
> プログラム的には、cgiを実行するユーザーの権限で、
> 755のフォルダを生成するような想定をしていますので、
これは見たところ間違っておりません。
ただサーバの設定上、 CGIの実行=ユーザクラス ではないようです
> この通りの動作をしない場合はバグだと思っています。
> ここで「cgiを実行するユーザー」というのが結構な問題
今回は、その典型的な例のようで・・やはりどうにかならなければ、
専用の削除CGIで操作せらざるをえないかと。
とはいえ、掲示板として十分過ぎるの機能をもっているCGIなので
ぜひ期待したいところではあります。
> いま試用してみて思ったのが、ファイルの所有者問題です。
> パーミッション設定を試行錯誤し新規作成はうまくいきました。
> しかし、CGIが作成したフォルダの所有者が違うものに変わってしまい
> 簡単にその中のファイルが削除できないようです
> (以前の0.9.0では簡単に削除できました)
こちらで試してみましたが、再現できませんでした。
ディレクトリ生成の部分は変えていない筈なのですが。。。
直せるものなら直したいので、
プログラム(.cgi)の所有者とグループとパーミッション、
生成されたフォルダやファイルの所有者とグループとパーミッションが
それぞれどうなっているか教えてくれるとありがたいです。
プログラム的には、cgiを実行するユーザーの権限で、
755のフォルダを生成するような想定をしていますので、
この通りの動作をしない場合はバグだと思っています。
ここで「cgiを実行するユーザー」というのが結構な問題
だったりするのですが。
トップページはかわっておりませんが、CGIだけ変わっているという
状態ですね。 もちろん、確認してダウンロードしました。
> テンプレート関係
要望が取り入れられていい感じです。
見たところ大きな変更は無かったので心配なしです
> Cでcgiを作る人がいないのはPerlだといとも簡単に出来てしまう
> 文字列処理の面倒もさることながら、資料が少ないのも原因だと
> 思っています。
Perlはそれほど難しい文字列関係の定義がいりませんから
その点はCでつくるひとが少ない原因でもありますね。
もう1ついえば、シェルを開放しているサーバはあまりないかと。
> これを参考にして踏み台にしてCでcgiを作る人が増えてくれ
> たら嬉しいところです。
いろいろと試してみたいです。
> とはいっても、Cで書くことの速度面での利点はPerlやPHPなど
> のスクリプトエンジンがWebサーバのモジュールとして融合して
> いく傾向にある現状ではむしろ無くなりつつありますが。。。
PerlやPhpはどんどん早くなっていますからね。
既にインタープリタ言語は遅いというのは過去のものとなるかもしれませんが、
他方で、固いCのプログラムも良いかと。
> さて次のバージョンアップは何年後かな。。。
ここなんですが(笑)
いま試用してみて思ったのが、ファイルの所有者問題です。
パーミッション設定を試行錯誤し新規作成はうまくいきました。
しかし、CGIが作成したフォルダの所有者が違うものに変わってしまい
簡単にその中のファイルが削除できないようです
(以前の0.9.0では簡単に削除できました)
そのため、掲示板削除機能が必要になったりしますが、
フォルダ管理にした上の仕様かもしれませんし・・・
自分で作るしかないかもしれませんね(汗
> こんにちは。近頃体調崩してろくにいろいろできていない
> direct_kです。
こんにちは。
私は年中体調が崩れているみたいなものなので何とも言えないですが、
どうぞお大事に。
> > 0.9.0のデータは変換プログラムを介して移行できるようにしました。
> > テンプレートの方は手動で修正が必要なのですが、
> > すべて一括置換で対応できる程度のものです。
> どのみち、ほとんど変わっても使いやすければはじめから作り直す覚悟はしていましたが(^^;
> どうやらその心配もなくなりそうですね。
バージョンアップでの機能追加はほとんど無いです。
0.9.0で気になっていた不親切点をちょくちょく改善したぐらいです。
> 少々ドキュメント関係を見た感じでは、前のバージョンからフリーみたいな感じのようでしたね。
> といっても、CでCGIつくるかたはいないのでどうでしょうね。
Cでcgiを作る人がいないのはPerlだといとも簡単に出来てしまう
文字列処理の面倒もさることながら、資料が少ないのも原因だと
思っています。
cgi = Perl = スクリプトというステレオタイプが在るのも
無理はないです。
これを参考にして踏み台にしてCでcgiを作る人が増えてくれ
たら嬉しいところです。
とはいっても、Cで書くことの速度面での利点はPerlやPHPなど
のスクリプトエンジンがWebサーバのモジュールとして融合して
いく傾向にある現状ではむしろ無くなりつつありますが。。。
> あと、こちらで0.9.0を利用していて感じたのが
> なぜかツリー表示でエラーが起こっておりません
> (次の10ツリーを表示したときのエラーが)
> そのあたりは1.0.0ではどうなっているかわかりませんが、
> 一体何だったのか、いまだに不明な限りです。
そうなんですね、0.9.0でも再現する状況がいまいち不明なのと、
1.0.0ではこの出力周りを大幅に変更してしまったので実際
直ってしまったのか、それとも潜在的に存在しているのか
全く判らない状態です。
さて次のバージョンアップは何年後かな。。。
こんにちは。近頃体調崩してろくにいろいろできていない
direct_kです。
> bbs.cgi 1.0.0のリリース準備をしています。
雑談?のほうのBBSでテストされていますね。フォルダ別でよい感じです。
・・・よくみたらこのBBSも変わっていますね。
> 0.9.0のデータは変換プログラムを介して移行できるようにしました。
> テンプレートの方は手動で修正が必要なのですが、
> すべて一括置換で対応できる程度のものです。
どのみち、ほとんど変わっても使いやすければはじめから作り直す覚悟はしていましたが(^^;
どうやらその心配もなくなりそうですね。
> 今バージョンからソースコードの転用や商利用も含めてフリーにする予定。
少々ドキュメント関係を見た感じでは、前のバージョンからフリーみたいな感じのようでしたね。
といっても、CでCGIつくるかたはいないのでどうでしょうね。
> 機能的にはほとんど変更点がないのですが、
> テンプレートの変換部分を大幅に変更して(たぶん)高速化。
> 全文検索機能はぜひ入れたいなあ。
日本語全文検索だとNamazuが有名ですが、どちらにしろ
検索機能はあると便利かもしれませんね。
私も一生懸命Cをいまやっていますので、自分で機能が
追加できたらよいなぁと思う限りです。
1.0.0の正式リリース期待します
あと、こちらで0.9.0を利用していて感じたのが
なぜかツリー表示でエラーが起こっておりません
(次の10ツリーを表示したときのエラーが)
そのあたりは1.0.0ではどうなっているかわかりませんが、
一体何だったのか、いまだに不明な限りです。
bbs.cgi 1.0.0のリリース準備をしています。
0.9.0のデータは変換プログラムを介して移行できるようにしました。
テンプレートの方は手動で修正が必要なのですが、
すべて一括置換で対応できる程度のものです。
今バージョンからソースコードの転用や商利用も含めてフリーにする予定。
機能的にはほとんど変更点がないのですが、
テンプレートの変換部分を大幅に変更して(たぶん)高速化。
全文検索機能はぜひ入れたいなあ。
新バージョンは期待しますけど、日常生活に
差し支えない程度にがんばってください。(苦笑
私も、いろいろと忙しい時期があったりなかったりで。
> 自分で利用するものだから、テンプレートの
> 互換性のことなど全く考えていなかったです(^^;。
> でも基本的考えは変わっていないのでこれは
> 一括置換で追随できるレベルだと思います。
少々安心しました。実はというものの、3種類使えるというのは
いいところもあるし、テンプレート管理が面倒という悪い面もあります。
だから本格的にやってしまうと、ヘッダー部〜とかってわかれてしましますし、
種類ごとにすると複数の掲示板を作成するときに面倒なことがありますので
(といってもそれほど多く作るのはレンタル系に限られると思いますが)
なんといっても、元のページに戻るぐらいのフィールドはほしいので(笑
→このBBSもその一例かと・・・
私は以下のように運営しています
http://www.neime-i.itss.ac/bbslib/bbs-bin/vbbs.thread.html
やはりフォルダごとの管理がほしいなぁと思う限りです。
> 問題はデータファイルで、新しいバージョンでは
> データファイルの互換性も無くなりそうです。
このHTMLのデフォルトを見ますと、キャッシュ設定がNoneになっているので
それほど、残しておくものではないなぁとは感じています
そのまえに、ツリー表示の次の表示のバグとかがどうにかならないと・・(笑
> プレーンテキストからインデックスを再構築する
> プログラムを書けばよいのですが、これがまた面倒で。
これは↑の理由のため、私は必要ないかと思います。
ただ、ほかの人がログを大切にする方がいるなら話は別です。
> メインタイトルやページタイトルのよく使われそうな文字列の他、
> 汎用フィールドも追加しようと思います。
汎用フィールドはいくつかデフォルトで利用されているようですが、
それは投稿者が送る用のフィールドだったので、こちらの管理者設定とは
使い方が違っているように見えましたので、その点は追加してほしいです。
設定名は メイン掲示板タイトル サイト名(これはなくてもよいかも) などが良いかと
○少々気になった点
・まれに投稿時のパラメータを取得間違いすることがある
・レスを1つ消しても、スレ自体すべて消える(これは厄介
・だれでも掲示板追加できるのは少々怖いです(笑
→簡単な認証ができるとよいのですが・・・。bbsfactory.htmlをいちいち追加するのも面倒ですし
・アクセスログ関係(書き込み時だけでよい設定など)
長文失礼、参考になれば幸いです
> > そろそろ次バージョンを公開できるといいなあ。
> 開発途中でもみてみたいものです。一応テンプレートをいろいろ加工していますが、
> もしかしたら、パラメータごとの変更があるとこちらを変更しないといけなくなるかもしれませんので。
自分で利用するものだから、テンプレートの
互換性のことなど全く考えていなかったです(^^;。
でも基本的考えは変わっていないのでこれは
一括置換で追随できるレベルだと思います。
問題はデータファイルで、新しいバージョンでは
データファイルの互換性も無くなりそうです。
プレーンテキストからインデックスを再構築する
プログラムを書けばよいのですが、これがまた面倒で。
> MainTitleとPageTitleぐらいの設定追加はほしいところです。
ですね。
メインタイトルやページタイトルのよく使われそうな文字列の他、
汎用フィールドも追加しようと思います。
迅速なレスありがとうございます。
> そうですね、フォルダ単位で管理した方がいいのはこれの公開前から
> miyo氏に言われていたのですが、後回しになってしまっていました。
> 現在開発中(というか、自分用に改造したもの)はフォルダ単位の
> 管理になっています。
> そろそろ次バージョンを公開できるといいなあ。
開発途中でもみてみたいものです。一応テンプレートをいろいろ加工していますが、
もしかしたら、パラメータごとの変更があるとこちらを変更しないといけなくなるかもしれませんので。
> > それにつらなって、掲示板タイトルも変更できると良いのですが。
> これはテンプレートのtitleタグを任意に変更すれば実現できると思います。
> もし違った意味だったらすみません。
テンプレートをいろいろとみていますが、どうしても記事ごとのタイトルは変えられても、「〜'sBBS」というのは管理人名依存です。
いまのところ、タイトル部はほっておいて、HTML上部をCommentで代用していますが、
MainTitleとPageTitleぐらいの設定追加はほしいところです。
新バージョンを期待します
こんにちは。
> > > コンパイルはうまくいっているように思うのですが、
> > > (もしかして、VC++では動作しませんか?。)
> 前に、VC系でコンパイルのときにいくらかエラーがでて
> うまく実行できなかったような覚えがあります。
そういえば文字列リテラルの長さをsizeofで
取得していたのを思い出しました。
よく考えたらこれは十分処理系依存になるような気がします。
> あと、新スレをたてるまでもない要望を書いておきます。
> このスクリプトは宣伝文句にあるように、かなり魅力的なんですが、
> 掲示板の数が多くなるにつれて、おなじフォルダで管理するのは
> 少々面倒に感じてしまいます。できれば掲示板の管理コード別に
> フォルダを作成するとリンクもわかりやすくていいかとおもいます。
ありがとうございます。
そうですね、フォルダ単位で管理した方がいいのはこれの公開前から
miyo氏に言われていたのですが、後回しになってしまっていました。
現在開発中(というか、自分用に改造したもの)はフォルダ単位の
管理になっています。
そろそろ次バージョンを公開できるといいなあ。
> それにつらなって、掲示板タイトルも変更できると良いのですが。
これはテンプレートのtitleタグを任意に変更すれば実現できると思います。
もし違った意味だったらすみません。
こんにちは。私の求めていた掲示板スクリプトにもっとも近い
ものを公開していて大変うれしい限りです。(さりげに初カキコです)
少々気になったんですが
> > C言語版の掲示板CGIをVC++で作成してみたいのですが、
> > コンパイルはうまくいっているように思うのですが、
> > (もしかして、VC++では動作しませんか?。)
前に、VC系でコンパイルのときにいくらかエラーがでて
うまく実行できなかったような覚えがあります。
(現在VC++のある環境がないのでなんともいえませんが)
エラーのメッセージを覚えていないのが少々悔やみですが。
ちなみにGCCでもエラーみたいなものは少々出ますが、
UNIX上で実行することは確認しています。参考に。
あと、新スレをたてるまでもない要望を書いておきます。
このスクリプトは宣伝文句にあるように、かなり魅力的なんですが、
掲示板の数が多くなるにつれて、おなじフォルダで管理するのは
少々面倒に感じてしまいます。できれば掲示板の管理コード別に
フォルダを作成するとリンクもわかりやすくていいかとおもいます。
それにつらなって、掲示板タイトルも変更できると良いのですが。
単なる要望なので無理になさらなくてかまいません。ご検討を。
まだまだC言語をはじめたばかりで、専門的なことはいえませんが、
どうかよろしくお願いします。
"ヒントをください" ひろ wrote:
> C言語版の掲示板CGIをVC++で作成してみたいのですが、
> コンパイルはうまくいっているように思うのですが、
> 実行で失敗してしまいます。何かヒントはないでしょうか?。
> (もしかして、VC++では動作しませんか?。)
確認していないですが、特に特定コンパイラに依存した
コードを書いているわけではないのでVC++だから
動作しないということは無いと思います。
コンパイルしたときのオプションとその出力を
書いてくれれば何か分かるかもしれません。
コンパイルに問題がないようでしたら、デバッグ出力用に
-DDEBUG_REDなどのオプションをつけてコンパイルして、
cgiで呼び出したときの出力を書いてもらえれば、
何か分かるかもしれません。
よろしければ続報おねがいします。
C言語版の掲示板CGIをVC++で作成してみたいのですが、コンパイルはうまくいっているように思うのですが、実行で失敗してしまいます。何かヒントはないでしょうか?。(もしかして、VC++では動作しませんか?。)
なるほど、パスワードが必要だったのですね。
さっそくやってみます!!
回答ありがとうございました。
"bbs.cgiについて。" んぬぬ wrote:
> これを見つけたときは理想的なプログラムにありついた気分でした。
> LINUX環境だったのですが、試してみたところコンパイルは完了したので問題ないと思っていました。
> しかし、BBSの新規作成は無事行えるのですが、その後の設定の更新のところでエラーがでてしまいます。
> また、command=2で設定をしようとすると、bad passwordとエラーがでてしまいます。
地味な存在ながら、発見してくれて嬉しいです。
私自身、FreeBSDとLinuxの両方で運用していますが、
こちらでも特に問題ないようです。
設定の呼び出しコマンドですが、
bbsfactory.cgi?command=2&file=(名前)
が新規作成なので、設定変更は
bbsfactory.cgi?command=0&file=(名前)&admin=(パスワード)
となります。
ちなみに初期パスワードは"password"なので、
まずこれを変更することから始めて下さい。
うーん、このあたりbbsfactory.cgiの引数とかは説明書にちゃんと書いてなかったかも。。。
申し訳ないです。
ちなみに実際に自分で使っているのはちょっと改造したバージョン。
近いうちにバージョン1.0と銘打ったものを出したいなあ。