■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 最新50 [PR]ぜろちゃんねるプラス[PR]  

ぜろちゃんねるプラス質問スレ 2

1 :作業ゲー専門 ★:2014/02/27(木) 19:49:33.15 ID:???
ぜろちゃんねるプラスの利用・運用における質問を受け付ます。

機能要望は開発スレへ、バグ・不具合についてはバグ報告スレへお願いします。

■ぜろちゃんねるプラスWiki
http://sourceforge.jp/projects/zerochplus/wiki/FrontPage
□パーミッションの設定
http://sourceforge.jp/projects/zerochplus/wiki/Permission
□プラグイン・補助プログラムの一覧
http://sourceforge.jp/projects/zerochplus/wiki/Codes

■過去スレ
ぜろちゃんねるプラス質問スレ
http://yakin.38-ch.net/test/read.cgi/zerochplus/1310282996/

139 :0ch+開発担当 ◆0chp.sx.ik :2014/04/09(水) 23:23:55.12 ID:wQkVQz5+0
>>137
可能ですが、ページごとに書き換える必要があります。

例えばスレッド一覧のページなら
mordor/bbs.thread.pl の sub PrintThreadList 内233行目を書き換えてください。
232:  # 表示数の設定
233:  $dispNum = $Form->Get('DISPNUM', 10);

>>138
動作しない原因がわからないとこちらでは何もできません。
一つの可能性ですが、規制回避可能なキャップが漏れている可能性はありませんか?

140 :名無しさん@ぜろちゃんねるプラス:2014/04/09(水) 23:35:53.89 ID:7Hp1yi6X0
確認しましたがないようです

141 :0ch+開発担当 ◆0chp.sx.ik :2014/04/09(水) 23:43:08.60 ID:wQkVQz5+0
>>140
考えられる原因をいくつか挙げてみます。
・ホスト名の前後に空白が紛れ込んでいませんか?
・他のホスト名での規制は動作しますか?
・また、IPアドレスでの規制は動作しますか?

142 :名無しさん@ぜろちゃんねるプラス:2014/04/09(水) 23:46:38.03 ID:7Hp1yi6X0
空白はないようです
ホスト名やIPアドレスは自分ので試しましたが、無理でした

143 :0ch+開発担当 ◆0chp.sx.ik :2014/04/09(水) 23:58:28.82 ID:wQkVQz5+0
>>142
設定は以下のようになっていますか?
・ユーザ種別: 規制ユーザ
・規制方法: 書き込み不可

test/madakana.cgi にアクセスしてみてください。
各掲示板の規制ユーザ一覧が表示され、自分が規制されているかどうかがわかります。

144 :名無しさん@ぜろちゃんねるプラス:2014/04/10(木) 10:31:01.34 ID:qg2Sp5tc0
vara.plを更新したら出来ました……
すいません、有難うございました

145 :名無しさん@ぜろちゃんねるプラス:2014/04/10(木) 10:45:50.29 ID:L7+MeOYg0
ものすごく死ぬほど初歩的な質問で申し訳ありません、昨日から使わせて頂いているのですが、
ブラウザから掲示版を見て、掲示版一覧を押すとttp://(サーバー名)/に飛んでしまいindexを表示してしまいます ttp://i.imgur.com/ZHykEni.jpg
どこからリンク先を変えればいいですか?ファイルをいじるのでしょうか
他の掲示版のように背景緑で掲示版一覧表示される、みたいなページにしたいです

146 :132:2014/04/10(木) 11:18:43.48 ID:Hjn68cAWi
FastCGIを使う上で、CGI::Fastを使い、処理をループさせる必要がある事が分かりました
read.cgiやbbs.cgiのプログラムで上記の事を行うにはどうしたら良いのでしょうか?
参考URLはhttp://perldoc.jp/docs/modules/CGI-2.89/CGI/Fast.pod
http://kotaroito.hatenablog.com/entry/20080405/1207393338
になります

147 :104:2014/04/10(木) 17:14:06.02 ID:VVhP4qaU0
>>139
ありがとうございます。
一番変更したいのがRes Listの表示レス数のl10なのですがどこを変更すればよいでしょうか。

148 :146:2014/04/10(木) 20:33:57.87 ID:IYqhIxg00
すみません、こちらでやり方が判明しました
それと、報告です
ぜろちゃんねるプラスのFastCGI化は無事に完了しました
少なくても、read.cgiとbbs.cgiは対応しています

149 :0ch+開発担当 ◆0chp.sx.ik :2014/04/10(木) 21:15:23.43 ID:mPsaVgkG0
>>145
システム設定->その他設定にてヘッダ関連の項目を設定してください。
掲示板一覧のページは生成されないのでご自分で作成してください。

>>147
mordor/thread.res.pl の sub PrintResList 内231行目です。
  # 表示書式の設定
  $format = $Form->Get('DISP_FORMAT') eq '' ? 'l10' : $Form->Get('DISP_FORMAT');
「l10」の部分を書き換えてください。

150 :名無しさん@ぜろちゃんねるプラス:2014/04/12(土) 23:24:43.47 ID:NTZQHc7G0
すみません、 システム設定のその他の設定の
動作モード(read.cgi)の違いは何でしょうか?
それと、高速書き込みモードを有効にすると書き込みが高速になるのでしょうか?そのことによるデメリットも何かあるのでしょうか?

151 :名無しさん@ぜろちゃんねるプラス:2014/04/13(日) 17:26:40.61 ID:7G2ERU670
>>69
遅くなりました。見れました(∩´∀`)∩ワーイ
ありがとうございました

152 :0ch+開発担当 ◆0chp.sx.ik :2014/04/13(日) 19:14:56.47 ID:kpgHHKaR0
>>150
「PATH種別」はread.cgiのURLの形式が変わります。
PATHINFOなら
ttp://example.jp/test/read.cgi/bbs1/1234567890/1
QUERYSTRINGなら
ttp://example.jp/test/read.cgi?bbs=bbs1&key=1234567890&nofirst=true&st=1&to=1
のような感じです。

「高速書き込みモード」はindexなどのhtmlの生成を省略します。
Webブラウザ利用者には影響がありますが、専ブラ利用者は通常通り利用できます。

153 :名無しさん@ぜろちゃんねるプラス:2014/04/13(日) 22:21:00.34 ID:apRQwRva0
すみません、初歩的な質問ですが
書き込み後にその板の「/」にリダイレクトしますけど
これを「/index.html」と指定したいのですがどこで設定できますか?

154 :0ch+開発担当 ◆0chp.sx.ik :2014/04/13(日) 23:35:16.22 ID:kpgHHKaR0
>>153
設定項目はありません。
bbs.cgi の548行目を直接編集してください。
<meta http-equiv="Refresh" content="5;URL=$bbsPath/index.html">

155 :153:2014/04/14(月) 00:25:40.12 ID:lmJ2iNSk0
うまくいきました。
有難う御座いました。

156 :150:2014/04/14(月) 06:36:39.94 ID:at/FnwpV0
>>152
なるほど、理解できました
ありがとうございます

ところで、質問なのですが
0.74のぜろちゃんねるプラスを使用している当掲示板でユニコード文字を用いた
一部の文字の組み合わせがエラーを出してしまいます
ぜろちゃんねるプラスを用いている他のサイトでは問題なく書き込めるので
プラグインの問題かサーバーの問題なのでしょうか?
書き込めるようにする方法があれば、ご教示ください
書き込めない文字の組み合わせは
|&#8259;&#8259;
|&#8803;&#8803;
の二つです。&は大文字にしています
エラーの表示は
HTTP/1.1 501 Method Not Implemented
となります

157 :0ch+開発担当 ◆0chp.sx.ik :2014/04/14(月) 21:55:19.78 ID:hEaDaq4a0
>>156
501エラーは0ch+のエラーではありません。
別のブラウザでも同様のエラーが出る場合は、サーバーのファイアウォール機能が
働いている可能性があります。

158 :156:2014/04/14(月) 23:50:22.06 ID:fp51lrTJ0
>>157
回答、ありがとうございます
サーバー側に問い合わせてみようと思います

159 :名無しさん@ぜろちゃんねるプラス:2014/04/15(火) 02:12:32.20 ID:dLIF7yS+0
すみません、いつかどこかで見たような気もするのですが見つからず……
一度設置した掲示板のなまえはどこを書き換えればいいでしょうか

160 :名無しさん@ぜろちゃんねるプラス:2014/04/15(火) 12:28:27.30 ID:BAqrbsWTi
無理は承知でお聞きします
掲示板の専ブラ含めた閲覧者数を表示させたいのですが、実現可能でしょうか?

161 :名無しさん@ぜろちゃんねるプラス:2014/04/15(火) 19:37:59.82 ID:bqt0uyXU0
ぜろちゃんねるプラスでも2ちゃんねるのように
古いスレは自動的に過去ログ化されるのでしょうか?

162 :0ch+開発担当 ◆0chp.sx.ik :2014/04/15(火) 20:58:05.49 ID:dwlJEKzR0
>>159
indexの告知欄のところに表示されている名前(BBS_SUBTITLE)は
掲示板設定->基本設定 の「サブタイトル」で変更できますが、
indexのページタイトルに表示される名前(BBS_TITLE)は設定項目がありません。
設定インポートでも変更できないようになっているので、SETTING.TXTを直接編集してください。

>>160
0ch+システム(CGI)からアクセス統計をとることはできません。

>>161
dat落ちおよび過去ログ化は全手動です。
dat落ちに関しては自動化プラグインがあります。

163 :名無しさん@ぜろちゃんねるプラス:2014/04/15(火) 21:30:34.65 ID:r3mYhPfz0
>>162
160ですが、それはプラグインやモジュールの改変を行っても不可能ということでしょうか?

164 :名無しさん@ぜろちゃんねるプラス:2014/04/15(火) 21:36:46.48 ID:4obDOq840
掲示板ディレクトリのディレクトリ名はどうしたらいいのでしょう
初心者ですいません

165 :0ch+開発担当 ◆0chp.sx.ik :2014/04/15(火) 21:53:04.89 ID:dwlJEKzR0
>>163
はい、どのようなCGIでも他のファイルへのアクセスを監視・記録することはできません。
Apacheなどのサーバーにその手のモジュールを組み込む必要があります。

>>164
FTP等でディレクトリ名を直接変更した後、管理画面で掲示板一覧から「情報更新」を行ってください。

166 :名無しさん@ぜろちゃんねるプラス:2014/04/15(火) 21:56:13.27 ID:4obDOq840
>>165
初心者ですいません
それはpublic.htmlのことでしょうか?

167 :0ch+開発担当 ◆0chp.sx.ik :2014/04/15(火) 22:22:01.58 ID:dwlJEKzR0
>>166
public_htmlではなく、その中の掲示板ディレクトリです。

おそらくディレクトリ構造が以下のようになっていると思います。
この例では「bbs1」「bbs2」が掲示板ディレクトリ名です。これを変更してください。

public_html/
  |-- index.html      …ウェブサイト トップページ
  |-- test/         …0ch+システムディレクトリ
  |   |-- admin.cgi   …0ch+管理画面
  |   |-- bbs.cgi     …書き込みCGI
  |   :
  |-- bbs1/         …掲示板1 ディレクトリ
  |   |-- index.html   …掲示板1 index
  |   |-- SETTING.txt …掲示板1 設定ファイル
  |   :
  |-- bbs2/         …掲示板2 ディレクトリ
  |   |-- index.html   …掲示板2 index
  |   |-- SETTING.txt …掲示板2 設定ファイル
  :   :

一応確認しておきますが、URLでは波線の部分が掲示板ディレクトリ名です。
http://example.jp/bbs1/
http://example.jp/bbs1/dat/1234567890.dat
           ~~~~~

168 :広告:2014/04/19(土) 05:28:14.57 ID:ZuklwpfO0
本家2chの個別スレ最後に広告がありますが、ぜろちゃんねるプラスで同じように広告を貼るにはどうすばいいのでしょうか。
PC Banner Editのようにして頂ければ幸いです。

169 :名無しさん@ぜろちゃんねるプラス:2014/04/19(土) 18:56:24.34 ID:/nPLpGJ80
返事が遅くなりました
ありがとうございます


170 :0ch+開発担当 ◆0chp.sx.ik :2014/04/20(日) 14:32:06.46 ID:INWv+j7Q0
>>168
現状では read.cgi の400行目あたりを直接編集するしかありません。

今のソースコードがかなり汚いので、あまり手を付けられませんが、
広告編集、ひいてはHTML編集機能の実装は検討しておきます。

171 :広告:2014/04/20(日) 17:50:46.10 ID:WguhhuGP0
400 $Page->Print("</dl>\n\n<font color=\"red\" face=\"Arial\"><b>${datSize}KB</b></font>\n\n");

HTML編集機能の実装での広告挿入機能お待ちしております。

172 :名無しさん@ぜろちゃんねるプラス:2014/04/27(日) 05:59:49.91 ID:zgr8d8f80
>>170
すみません、もし広告を貼るのであれば
read.cgiをどのように編集すれば良いのでしょうか?

173 :0ch+開発担当 ◆0chp.sx.ik :2014/04/27(日) 12:11:18.83 ID:hIgsLUYf0
>>172
この1行を
  $Page->Print("</dl>\n\n<font color=\"red\" face=\"Arial\"><b>${datSize}KB</b></font>\n\n");
以下のように書き換えてください。

  $Page->Print("</dl>\n\n");
  $Page->Print(<<'AD');
ここに広告HTML
↓このADの前後は何も書かない
AD
  $Page->Print("<font color=\"red\" face=\"Arial\"><b>${datSize}KB</b></font>\n\n");

174 :名無しさん@ぜろちゃんねるプラス:2014/04/28(月) 02:01:57.81 ID:e6l80fEo0
>>173
ありがとうございます
試してみます

175 :名無しさん@ぜろちゃんねるプラス:2014/04/30(水) 02:37:36.96 ID:XkLo9BvV0
Windowsサーバーでも作動しますか?

176 :0ch+開発担当 ◆0chp.sx.ik :2014/04/30(水) 23:27:28.99 ID:h4YLsfKF0
>>175
おそらく動作します。

177 :日本語リンク:2014/05/01(木) 22:02:01.13 ID:iKxzyNbA0
http://ja.wikipedia.org/wiki/掲示板
ブラウザやOSで違ってくると思いますが、日本語リンクに対応して頂ければ幸です。

178 :名無しさん@ぜろちゃんねるプラス:2014/05/02(金) 16:59:00.67 ID:Ur5rL2460
>>167
ディレクトリというのは自動で生成されるものなのでしょうか
それとも自分で設置しなければいけないのでしょうか?

179 :名無しさん@ぜろちゃんねるプラス:2014/05/02(金) 20:07:03.54 ID:1i6VKYIe0
>>176
ありがとうございます
やってみます

180 :名無しさん@ぜろちゃんねるプラス:2014/05/02(金) 21:39:44.63 ID:j4ZMmvrm0
ExpressWebで試した限りだとContent-type : text/html
あたりの出力がいらないかと

181 :0ch+開発担当 ◆0chp.sx.ik :2014/05/02(金) 21:43:16.08 ID:7fCsB72A0
>>178
すみません、質問を少し勘違いしていました。
改めて>>164に回答します。

掲示板作成における「掲示板ディレクトリ」の項目は、掲示板のURLの一部になります。
例えば2chのVIP板なら「news4vip」です。
http://viper.2ch.net/news4vip/
             ~~~~~~~~~
また、>>167で示した掲示板ディレクトリは基本的に自分でいじる必要はありません。
掲示板作成時に、指定した名前の掲示板ディレクトリが自動で生成され、
掲示板に書き込みがあれば自動で更新されます。

182 :0ch+開発担当 ◆0chp.sx.ik :2014/05/02(金) 22:02:35.69 ID:7fCsB72A0
>>177
日本語が含まれたURLは正しいURLではありません。
その例で言えば、次のURLが正しいURLです。
http://ja.wikipedia.org/wiki/%E6%8E%B2%E7%A4%BA%E6%9D%BF

最近のWebブラウザではエスケープされている部分を復号してアドレスバーに
表示していることも多いですが、これはただの見せかけに過ぎません。
アドレスバーに直接日本語を入力した場合も、内部では自動でエスケープが行われます。

read.cgiでエスケープされているURLを復号して見せかけることは可能です。

>>180
どうやらそのサーバーではCGIの仕様が想定と少し違うようですね。
https://secure.windowshosting.jp/knowledgebase.php?action=displayarticle&id=180

183 :日本語リンク:2014/05/03(土) 20:08:53.51 ID:dg/euVom0
>日本語が含まれたURLは正しいURLではありません。
そうですが日本語リンク打ち込みがかなりあります。

>read.cgiでエスケープされているURLを復号して見せかけることは可能です。
どうするんでしょうか

184 :名無しさん@ぜろちゃんねるプラス:2014/05/03(土) 21:55:08.54 ID:mwDdvmhE0
>>181
http://kie.nu/1SS9
自動生成ですか?

185 :0ch+開発担当 ◆0chp.sx.ik :2014/05/03(土) 22:59:33.06 ID:VTQxEjc60
>>183
見せかけの変換については
module/galadriel.pl の176行目あたりの else { 直後に以下のコードを加え、
  use Encode;
  my $unesc = sub {
    $_ = shift;
    $_ =~ s/%([0-9A-F][0-9A-F])/chr hex $1/eg;
    Encode::from_to($_, 'utf8', 'sjis');
    return $_;
  };
176-205行目あたりの
  $$text =~ s|$reg2|<a href="$1://$2" target="_blank">$1://$2</a>|;
という行、あるいは同様の行を以下のように書き換えてください。
  $$text =~ s|$reg2|<a href="$1://$2" target="_blank">$1://@{[&$unesc($2)]}</a>|;

日本語部分を無理やりURLと解釈させる場合は159-160行目あたりの正規表現を
  my $reg1 = q{(https?|ftp)://(([-\w.!~*'();/?:\@=+\$,%#]|&(?![lg]t;))+)}; # URL検索1
  my $reg2 = q{<(https?|ftp)::(([-\w.!~*'();/?:\@=+\$,%#]|&(?![lg]t;))+)>}; # URL検索2
以下のように書き換えてください。
  my $reg1 = q{(https?|ftp)://([^ "]+)}; # URL検索1
  my $reg2 = q{<(https?|ftp)::([^ "]+)>}; # URL検索2
ただし、こちらに関してはリンクが有効であることを保証できません。

>>184
システム設定->基本設定の「掲示板配置ディレクトリ」の項目は
基本的には「..」にしておいてください。

186 :名無しさん@ぜろちゃんねるプラス:2014/05/03(土) 23:05:06.40 ID:PENF0JbJ0
>>185
ありがとうございます

187 :日本語リンク:2014/05/04(日) 13:07:37.29 ID:QH4jY79G0
>>185
ありがとうございます。
日本語という世界最高難易度を誇る言語表記方式の文字列操作は鬼門だ。

188 :名無しさん@ぜろちゃんねるプラス:2014/05/04(日) 13:10:25.20 ID:7VtiTeCV0
リンクなどを貼れないようにするには
どうすればいいのでしょうか

189 :名無しさん@ぜろちゃんねるプラス:2014/05/04(日) 14:42:31.42 ID:51Xj3v5t0
>>188
NGワードで
httpなどを規制すればいけますよ

190 :名無しさん@ぜろちゃんねるプラス:2014/05/04(日) 15:11:30.60 ID:7VtiTeCV0
>>189
有難うございます

191 :名無しさん@ぜろちゃんねるプラス:2014/05/04(日) 22:47:53.13 ID:+IzM14BO0
同じ鯖内で引っ越ししたいのですが、どのようにすればよいでしょうか
http://hoge.com/aaa/read.cgi/bbb これを
              ↓
http://hoge.com/ccc/read.cgi/ddd このように移設したい

よろしくお願いします

192 :0ch+開発担当 ◆0chp.sx.ik :2014/05/05(月) 00:06:46.02 ID:NLNwotwW0
>>191
まずは aaa -> ccc の変更ですが、
FTP等でディレクトリ名を直接変更した後、管理画面にログインし、
システム設定->基本設定で「CGI設置ディレクトリ」の項目を「/ccc」に変更してください。

次に bbb -> ddd の変更ですが、
こちらも同様にFTP等でディレクトリ名を直接変更した後、
管理画面で掲示板一覧から「情報更新」を行ってください。

最後に、掲示板一覧ですべての掲示板に対し「index更新」を行ってください。

193 :191:2014/05/05(月) 00:14:02.71 ID:H35FN4EE0
>>192
返信ありがとうございます
すみません、191の例は実際とは異なっておりまして…
実際にはこうなんです http://hoge.com/aaa/bbb/read.cgi/http://hoge.com/ccc/read.cgi/

階層を1つ上げつつ名前変更する場合も、似たような手順で上げ直せば大丈夫でしょうか?


194 :0ch+開発担当 ◆0chp.sx.ik :2014/05/05(月) 00:36:24.00 ID:NLNwotwW0
>>193
はい、その場合でも変更可能です。

195 :191:2014/05/05(月) 02:11:56.44 ID:H35FN4EE0
ありがとうございます
やってみます

196 :名無しさん@ぜろちゃんねるプラス:2014/05/05(月) 20:09:07.50 ID:Sj8WxZ6r0
すみません、スレッド一覧画面の

subject更新と再結成の違いは何でしょうか?

197 :名無しさん@ぜろちゃんねるプラス:2014/05/08(木) 15:18:00.71 ID:exdWoCVp0
DNSBLのBBQが繋がらない模様です
他のBLリストを利用するにはどうしたらよいでしょうか?

198 :191:2014/05/08(木) 17:45:41.56 ID:+wkP2kGL0
専ブラで読む時にCGIプロセスを立ち上げる場合がありますでしょうか?

199 :0ch+開発担当 ◆0chp.sx.ik :2014/05/08(木) 20:19:07.51 ID:L16XInuy0
>>196
「subject更新」は、一覧のスレッドのレス数などを確認してsubject.txtを更新します。
「subject再生成」は、datフォルダ内の.datファイルを再確認してスレッド一覧を更新します。

>>197
module/galadriel.pl の1217行目あたりで次のような行を追加してください。
  push(@dnsbls, 'dnsbl.example.net');

>>198
読み込むだけなら基本的にCGIへアクセスすることはありません。

200 :名無しさん@ぜろちゃんねるプラス:2014/05/08(木) 23:01:47.29 ID:cEtW/5TD0
失礼します。
現在xreaにぜろちゃんねるプラスを設置してしようしているのですが、
書き込み頻度が多くなると一時的に503エラーを吐いて書き込みできない状態になってしまいます。
何か対策などはないでしょうか。
よろしくお願いします。

201 :198:2014/05/09(金) 13:05:07.49 ID:k0a/5T040
>>199
回答ありがとうございます
通常ブラウザではやはりCGIアクセスは発生しますでしょうか?

202 :0ch+開発担当 ◆0chp.sx.ik :2014/05/09(金) 20:37:34.96 ID:9BOHi55O0
>>200
503エラーはCGIのエラーではありません。
負荷が高くなって一時的にサーバーがCGIの稼働を止めているのだと思います。

>>201
read.cgiでスレッドを読むことになるので当然CGIへのアクセスが発生します。
また、書き込みについてはWebブラウザ、専用ブラウザともにbbs.cgiを使うので
CGIへのアクセスが発生します。

203 :196:2014/05/11(日) 01:14:38.27 ID:QRmD+Uc8i
>>199
理解できました。
ありがとうございます。

204 :200:2014/05/11(日) 01:22:50.50 ID:wPE2FGmA0
>>202
ありがとうございます。

205 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 06:55:35.14 ID:yJ2bJC3E0
さくらのレンタルサーバーで0.7.4(2013.11.06)を使わせてもらってます。
http://アカウント名.sakura.ne.jp/板名/i/ からスレを開こうとすると
Internal Server Error になってしまいます。
エラーログを見ると

(13)Permission denied: cannot read directory for multi: /home/アカウント名/www/板名/, referer: http://アカウント名.sakura.ne.jp/板名/i/
Global symbol "$Sys" requires explicit package name at r.cgi line 148., referer: http://アカウント名.sakura.ne.jp/板名/i/
Global symbol "$Sys" requires explicit package name at r.cgi line 150., referer: http://アカウント名.sakura.ne.jp/板名/i/
Execution of r.cgi aborted due to compilation errors., referer: http://アカウント名.sakura.ne.jp/板名/i/
Premature end of script headers: r.cgi, referer: http://アカウント名.sakura.ne.jp/板名/i/

と出ます。
原因は分かりますでしょうか?
板のパーミッションは管理画面から701に設定しています。
よろしくお願いします。

206 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 12:14:16.23 ID:MTrmlGAI0
!urlを板のurlに置き換えるCGIを作らせて頂いています


まず本文にアクセスする

!urlがあるか確認する

あったら!urlを運営板のurlに置き換える

の流れで大丈夫ですか?
ほかのサンプルコードは色々としていて良くわかりません
(return 0 をしていたりとか)
簡単な解説と例をよろしくお願いします

207 :0ch+開発担当 ◆0chp.sx.ik :2014/05/11(日) 15:50:59.38 ID:B8qsZsOd0
>>205
r.cgiについては0.7.4でバグがあるので、以下のもので差し替えてください。
http://svn.sourceforge.jp/svnroot/zerochplus/zerochplus/branches/0.7.x/test/r.cgi

>>206
おおよそその流れで問題ありません。

次のURLはプラグインのテンプレート(何もしないプラグイン)です。
http://svn.sourceforge.jp/svnroot/zerochplus/codes/0ch_template3.pl
これを元にプラグインを作成する手順を説明します。

まずプラグインのファイル名を適当に「0ch_xxx.pl」に変更します。
さらに、ファイル上部の1行を「package ZPL_xxx;」に変更します。

次に、sub getName がプラグイン名を返すようにします。
  sub getName { return 'プラグインXXX'; }

単純な文字列置換のプラグインなら最低限これだけの変更でOKです。

そして、sub execute 内の最後の return 0; の前に処理を書いていきます。
  my $text = $Form->Get('MESSAGE'); # 本文を取得
  $text =~ s|!url|http://xxx.jp/yyy/|g; # 文字列を置換
  $Form->Set('MESSAGE', $text); # 本文を再設定

以上で最低限動作するプラグインができます。

208 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 16:49:12.93 ID:MTrmlGAI0
>>207
わかり易く返事していただき有難うございます
勉強になりました

209 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 16:56:10.67 ID:MTrmlGAI0
>>207
質問なのですが
sub get name でプログラム名を返すようにして
返した名前は何に使うのでしょうか?

210 :0ch+開発担当 ◆0chp.sx.ik :2014/05/11(日) 17:01:53.33 ID:B8qsZsOd0
>>209
管理画面でプラグイン一覧を表示するときの名前です。
他のプラグインと区別できる名前ならなんでも構いません。

211 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 17:04:02.41 ID:MTrmlGAI0
>>210
管理用でしたか
ありがとうございます

212 :205:2014/05/11(日) 18:46:39.88 ID:yJ2bJC3E0
>>207
ありがとうございます。
r.cgiを差し替えたらエラーログの行数は減ったのですが
まだ内部サーバーエラーを吐き出すので
エラーメッセージをぐぐって
http://d.hatena.ne.jp/otn/20090818/p1
を参考にr.cgiの一行目「#!/usr/bin/perl」を「#!/usr/bin/perl --」にしたら出来ました。
お手数をお掛けしました。

213 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 22:32:50.71 ID:FEu5pmiV0
おみくじ機能を改変して、同時に二つの結果を出したいのですが
どう改変すれば良いのでしょうか?

214 :0ch+開発担当 ◆0chp.sx.ik :2014/05/11(日) 22:59:42.72 ID:B8qsZsOd0
>>213
1コマンドで2つの結果を出すなら、以下のように書き換えてください。

85: my $res = OMIKUJI(time());

85: my $res = OMIKUJI() . '/' . OMIKUJI();

108: srand($seed);
109: return($results[int(rand(65535)) % $count]);

108:
109: return($results[int rand $count]);

215 :名無しさん@ぜろちゃんねるプラス:2014/05/11(日) 23:09:06.94 ID:FEu5pmiV0
>>214
多分言い方がおかしいですね
通常のおみくじの結果の横に1から10までの数字が出るみたいな感じで(例えなので数字ではないですが)
別々の二つの結果を表示したいのです

216 :0ch+開発担当 ◆0chp.sx.ik :2014/05/11(日) 23:27:17.18 ID:B8qsZsOd0
>>215
OMIKUJI関数と同じように sub OMIKUJI2 を作って、
  my $res1 = OMIKUJI();
  my $res2 = OMIKUJI2();
  $from =~ s/!omikuji/<\/b>【$res1 $res2】<b>/;
のような感じでどうでしょうか。

217 :名無しさん@ぜろちゃんねるプラス:2014/05/12(月) 06:37:28.73 ID:gXYNhWvT0
>>216
やってみます

218 :175:2014/05/13(火) 19:54:51.34 ID:AgCQA2h30
ExpressWebで使ってみましたが、管理画面が正常に作動しないです
ログインには成功しますが「掲示板」などのメニュー項目を押すと
こんな状態に...
http://i.imgur.com/yY4GdhY.png

追加で設定やコードの書き換えしなければいけないことがあったら
教えてください


219 :名無しさん@ぜろちゃんねるプラス:2014/05/13(火) 21:47:56.79 ID:dLes7dTY0
>>216
出来ました
ありがとうございます

220 :0ch+開発担当 ◆0chp.sx.ik :2014/05/13(火) 22:52:53.43 ID:Uk5AWUKS0
>>218
よくわからない状態ですね…
パーミッションの設定はどのようにしていますか?

221 :名無しさん@ぜろちゃんねるプラス:2014/05/14(水) 01:40:37.34 ID:WugMqadf0
>>220
特に設定していません。アップロードしただけです
Windowsサーバーでは不要と、ナレッジベースに書いていたので...

一度ログインしても別のブラウザでアクセスすればログインしていない状態になるはずなんですが
ここのサーバーではなぜか一度ログインするとセッションが終わるまでどのブラウザでアクセスしても
画像と同じ状態になります

222 :0ch+開発担当 ◆0chp.sx.ik :2014/05/14(水) 20:26:12.96 ID:+scAjWQx0
>>221
設定が不要とは書かれていないようです。
https://secure.windowshosting.jp/knowledgebase.php?action=displayarticle&id=33
https://secure.windowshosting.jp/knowledgebase.php?action=displayarticle&id=332
>「属性」という概念ではなく「アクセス権」によるパーミッション設定となります。

すべてのフォルダに「変更」のアクセス権が付いていることを確認してみてください。

223 :名無しさん@ぜろちゃんねるプラス:2014/05/14(水) 23:49:31.80 ID:WugMqadf0
>>222
wwwrootに読み込みと変更のアクセス権限をつけて、
「すべての子オブジェクトのアクセス権限を置換する」のチェックボックスを
onにしてアクセス権限を変更し、
wwwroot以下のすべてのファイルとフォルダのアクセス権限が「読み込み」と
「変更」になったことを確認してから、
もう一度試してみましたが、やはり結果は同じです。

224 :名無しさん@ぜろちゃんねるプラス:2014/05/15(木) 21:21:39.84 ID:H3tWO9Wa0
おみくじプラグインでIDが変わらない限り同じ結果になるようにしたいのですが可能ですか?

225 :0ch+開発担当 ◆0chp.sx.ik :2014/05/16(金) 00:10:13.11 ID:2HD7ZRa/0
>>223
原因がよくわかりませんね…
時間のあるときに少し調べてみます。

>>224
可能です。
数日中にサンプルを作ります。

226 :名無しさん@ぜろちゃんねるプラス:2014/05/16(金) 02:22:21.93 ID:B8fj4bBV0
0.7.4を使わせてもらってます。
madakana.cgiを公開したくない場合、単にmadakana.cgiを削除するだけで大丈夫ですか?
また再度公開させる場合、madakana.cgiを再アップするだけで大丈夫でしょうか?
よろしくお願いします。

227 :0ch+開発担当 ◆0chp.sx.ik :2014/05/16(金) 22:19:13.16 ID:2HD7ZRa/0
>>226
はい、madakana.cgiやbbs.cgi、read.cgiなどの各種.cgiはそれぞれ
独立に動いているので、madakana.cgiだけ削除しても問題ありません。

228 :226:2014/05/17(土) 07:10:11.99 ID:lRnlaVSz0
>>227
ありがとうございます。

229 :名無しさん@ぜろちゃんねるプラス:2014/05/17(土) 08:33:34.81 ID:6s6Vg9xE0
パーミッションいじればいいって話じゃないんです?

230 :0ch+開発担当 ◆0chp.sx.ik :2014/05/18(日) 12:48:01.00 ID:lMhWdD150
>>224
こんな感じでどうでしょうか
https://sourceforge.jp/projects/zerochplus/wiki/Codes#newomikuji

231 :名無しさん@ぜろちゃんねるプラス:2014/05/18(日) 13:29:15.79 ID:nWuAuinFi
>>230
ありがとうございます!
ついでに>>215のように使う際の改変方法も教えていただけるとありがたいです
毎度毎度すみません

232 :0ch+開発担当 ◆0chp.sx.ik :2014/05/18(日) 13:40:20.79 ID:lMhWdD150
>>231
  my $rnd = hex(substr($ctx->hexdigest, 0, 8));
  # くじを引く
  my @kuji = qw(大吉 中吉 小吉 吉 末吉 凶 大凶);
  my $result = $kuji[$rnd%@kuji];
  # コマンド部分を結果に書き換える
  $name =~ s|!omikuji|</b>【$result】<b>|g;
の部分を
  # 1くじを引く
  my $rnd1 = hex(substr($ctx->hexdigest, 0, 8));
  my @kuji1 = qw(大吉 中吉 小吉 吉 末吉 凶 大凶);
  my $result1 = $kuji1[$rnd1%@kuji1];
  # 2くじを引く
  my $rnd2 = hex(substr($ctx->hexdigest, 1, 8));
  my @kuji2 = qw(A B C D E);
  my $result2 = $kuji2[$rnd2%@kuji2];
  # コマンド部分を結果に書き換える
  $name =~ s|!omikuji|</b>【$result1 $result2】<b>|g;
のように書き換えてください。

233 :名無しさん@ぜろちゃんねるプラス:2014/05/18(日) 23:22:49.09 ID:CFZ8nKDO0
>>232
ありがとうございます!
試してみます!

234 :名無しさん@ぜろちゃんねるプラス:2014/05/18(日) 23:33:57.67 ID:z+qhWrpF0
質問です
TOPをIEなどで読んだ場合CGIアクセスは発生しますでしょうか?
またCGI負荷を抑えるためIEからのレス後をTOPではなく、そのスレッドへ戻すことは可能でしょうか?
よろしくお願いします

235 :0ch+開発担当 ◆0chp.sx.ik :2014/05/18(日) 23:41:28.33 ID:lMhWdD150
>>234
トップページはhtmlファイルなのでCGIプロセスは生成されません。
CGIの負荷を抑えるのであれば、スレッド(cgi)ではなくトップ(html)へ戻すほうがいいと思います。

236 : ◆NFEHhSNhAJQV :2014/05/19(月) 08:18:54.34 ID:oxfoj5Qv0
専ブラ(2chmate)でアクセスすると、書き込みできるのですが
p2(rep2)でアクセスすると、CGIが利用できない〜とでて書き込み出来ません
設定はどこを弄れば良いでしょうか

237 :名無しさん@ぜろちゃんねるプラス:2014/05/19(月) 11:28:59.32 ID:malhFbj50
>>235
回答ありがとうございます
実況系ですと結局リロードすることになりますので、一度のPOSTでスレ取得までした方が結果的にプロセス消費を抑えられるのではないか?
と思い質問させていただきました

238 :0ch+開発担当 ◆0chp.sx.ik :2014/05/19(月) 22:03:53.35 ID:3mTonA1U0
>>236
掲示板のURLは次のような形になっていますか?
http://example.jp/bbs1/
http://example.jp/test/bbs.cgi
もしそうでなく次のような形だと、対応していない専ブラも多いです。
http://example.jp/path/bbs1/
http://example.jp/path/test/bbs.cgi

>>237
書き込み用CGIと閲覧用CGIの合体は不可能ではありませんがおすすめできません。
CGIプロセスを節約するという点では、PersistentPerl(SpeedyCGI)を利用できるのであれば利用してみてください。

また、Webブラウザ用の処理を減らし、専ブラに特化するという手もあります。
この場合、トップページ(HTML)等は更新されなくなります。
さらに、閲覧用CGI(read.cgi)を削除すれば完全に専ブラ専用掲示板になります。

239 :名無しさん@ぜろちゃんねるプラス:2014/05/20(火) 15:19:17.18 ID:Z9ZXSoZH0
/test
┖ bbs.cgi
上記cgiの中に「投稿確認」の記載がありますが、
これを書き込む前に見せるにはどうしたらよいのでしょうか?


275KB
続きを読む

名前: E-mail(省略可)
READ.CGI - 0ch+ BBS 0.7.5 20220323
ぜろちゃんねるプラス