Punyu Net † Index | Information | Atelier | Link | Mail
PHP script | OnlineDVDrental Search
さくらインターネット
時間のないサイト運営者リング

<<2008/12

010203040506
07080910111213
14151617181920
21222324252627
28293031


リ ス ト 表 示

キャラアニ.com




あなたのホームページ・メールマガジンに広告を載せてみませんか?成功報酬型で広告費を支払うエーハチネットがおすすめ。


Category:Index/トピックス (Total 17 items)

= トピックス一覧 =
PHPスクリプト | POTI-board

■ rNoteのReferer(リンク元)機能について 2004/09/02(木) 17:05
[トピックス/PHPスクリプト]

rNoteを使い始めて、だいぶ立ちました。

0.9.6がリリースされて1週間過ぎました。

そして、昨日 変な現象が起こりました。


その現象とは、一部のリンク元が 'http:' になるという現象で、調べてみると・・・リンク元を 'http:' に偽装してアクセスしてきた輩がいた模様。

でも、それだけで・・・と考えていたとき、rNoteにはリンク元を集計してまとめてくれる機能があったことを思い出す。

この機能をONにしてたから、前からあるURLを 'http:' を含むURLとみなして一緒に集計してしまったようだ。

実際、この後のアクセスで別のリンク元が追加されるわけでもなく、カウントアップされ続けていた。


さて、rnote.php(0.9.6) を覗いてみると、706行目に

if(!ereg("^http",$HTTP_REFERER)) return;

という行があるが、今回の事を考えると

if(!ereg("^https?://",$HTTP_REFERER)) return;

に変えておけば、とりあえず今後 'http:' に偽装されてても問題なさそうだ。

・・・'http://' に偽装されたら意味無いけどね(笑

まー根本的な解決はリンク元をまとめる部分を修正することだけど、しばらくはこれで様子をみて、本家で対応してくれるのを待つとします。

if(!ereg("^https?://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+",$HTTP_REFERER)) return;

に変えておけば、http URL に準拠しないURLを除外できるはずだ。


つか・・・

●SJ.NETは、こんな偽装すんなーヽ(・`ω´・)ノ




は、以前の0.9.3の頃にも不具合っぽい現象が・・・


その以前の頃、とあるリンク元からアクセスされたときに2重アクセスされたらしく、リンク元のログが飛んじゃいました。

アクセスログをみると、同時刻にまったく同時にアクセスされているのが確認できた(それもひとつのIPで)

rnote.php の更新部分をみると、ログの読込み → データ更新 → ログの書込み読込み書込み を別々にファイルオープンしているようで、これなら同時(というか連続)にアクセスされたときにログが飛ぶのも納得がいく。

思うに、ログをファイルの後ろに追加していくパターンなら気にする事はないが、更新をする場合は1回のファイルオープンで読込みと書込みをしないとflockで排他にしても意味がない。


まーこのような事は滅多に起らないだろうが、ファイル更新に関しては見直して欲しいところ。




れら以外にも要望。


・ツッコミ受付終了後もリンク元は受け付けるようにして欲しい。

rnote_config.php でON/OFF選択できれば、いままでとの互換も可能かと。


・最新の更新ログで、そのログ内と同じリンク元からなら、その日付を更新し、ログの頭に持ってきて欲しい。

いまのままでは、どの記事のリンク元が頻繁にカウントアップしているかわからない。


[ このエントリへはコメント出来ません ]

■ rNote LogViewer lot.040818 2004/08/18(水) 17:00
[トピックス/PHPスクリプト]

、すみませーん m(_ _)m


0.9.5に移行作業中に以下の不具合を発見しちゃいました。

・簡易テキストエディターで内容を表示するとき、特殊文字の変換をしてなかった。

・更に、SAVEするとき、改行コードを統一してなかった。


申し訳ありませんが、lot.040812版をダウンロードされた方は、不具合を修正したlot.040818版に置き換えてくださいまし。


 DownLoadrNote LogViewer lot.040818 



いでに、うちの要望に応えてバージョンアップした管理者ツールrnoteadmin.php)と連携できるようにしました。


・・・単に、rnoteadmin.php へのリンクを追加してクッキーの保存ボタンを追加しただけなんですけどね(^^;


あと、rnoteadmin.php から rnote_logviewer.php へのリンク追加するには、rnoteadmin.skin 内の

<div class="footer">〜

の前の行に

<div class="toolbar"><a href="rnote_logviewer.php">ログ一覧</a> ( rNote LogViewer )</div>

を挿入してください。

また、rnote_logviewer.php へのリンク追加した rnoteadmin.skin を付属させてますので、これに置き換えるほうが手っ取り早いかもしれません。




【関連】

>>rNote LogViewer公開


[ このエントリへはコメント出来ません ]

■ rNote LogViewer公開 2004/08/12(木) 12:35
[トピックス/PHPスクリプト]

rNoteのログを一覧表示する rNote LogViewer を作成してみた。


ツッコミやリンク元などの最新ログを見れないかと常々思っていたのだが、まだrNoteの開発がそこまでいってないっぽいので自分で作ってみた。

ちなみに、rNoteの0.9.5が出ていたのを知ったのがこれを作ってる最中だったので、それに対応させる為に今日までかかった。


 DownLoadrNote LogViewer lot.041025 [更新:2004/10/25 10:00]

※rNote0.9.7以降の場合は、Entries List Plug-in をご利用ください。(2004/10/05)

【更新履歴】
lot.041025 … 再構築前の一覧に無いものに対応
lot.040930 … 削除機能追加
lot.040818 … バグ修正
lot.040812 … 公開


ダウンロードしたらrNoteのあるフォルダに解凍してください。

rnote_logviewer.php をテキストエディタで開いて設定をし、テキスト(アスキー)モードでアップロードしてください。

 ※設定等の説明は中に記載しています。以下その内容。

【設定説明】

AUTH_TYPE ... BASIC認証は Apacheのモジュール版PHPにしかない機能なので、それ以外はクッキー認証を選択する。※クッキー認証の場合、ログアウトできるようになっています。

MB_CONVERT ... UTF-8以外の文字コードを使用している場合、trueにすると このスクリプトをUTF-8以外で保存し直さなくても利用できます。

ADMIN_ID ... 0.9.5からrNote側で設定できるので、0.9.4以下を利用してる場合のみ設定する。※設定する場合、先頭の'//'は取る

ADMIN_PASSWORD ... 0.9.2からrNote側で設定できるので、0.9.1以下を利用してる場合のみ設定する。※設定する場合、先頭の'//'は取る


【設置方法】

rnote.php等が設置されているところにアップロードする。


【仕様】

このスクリプトは、ログ一覧(キャッシュ)を手動作成してそれを表示しています。

だから、まず「CREATE LOG CACHE」をクリックしてログ一覧を再構築してください。

※ログ一覧の再構築をすることで最新の一覧を取得できます。言い換えれば再構築しないと古いままです。頃合いを見て再構築するようにしましょう。

※ログ一覧はrNote側のキャッシュと同じディレクトリに保存されます。


また、一覧は更新日の新しい順に並んでいます。

ALL LIST ... 以下の3つすべて

DOCUMENT LIST ... 記事ログ

WRITEBACK LIST ... ツッコミログ(トラックバックはこの中にある)

REFERER LIST ... リンク元


【ご注意】

・万が一、このスクリプトにより何らかの損害が発生しても、その責任を私は負いません。自己の責任で利用して下さい。

・著作権は放棄しませんが、改造・再配布は自由にどうぞ。

・ご質問は、<https://www.punyu.net/bbs/ibbs/ibbs.php>までどうぞ。


[追記:2004/08/13 09:30]

サンプルを用意しました。

※サンプルなので内容の更新はできません。



当は、記事投稿機能も付けたかったが、既に rNotePad てのもあるし、本体の開発もこれを優先しているだろうからパス。

rNotePad・・・私だったら、画像アップロード・サムネイル作成・ディレクトリ作成・記事のテンプレート読込みなども付けるかな。つか、本体側でこれらも考慮して開発して欲しいナリ・・・がんばれ、りんさん!

あと、HTMLタグ追加ボタンとかはフリーでJavaScriptを使ったツールが海外にあるからそれを使えば便利(TextAreaPro や BlueShoesのJS Editor など

・・・て、7月にダウンロードできてた TextAreaPro がサイトごと無くなってるやんヽ(´Д`)ノ


[ このエントリへはコメント出来ません ]

■ rNote 0.9.3へ 2004/07/22(木) 18:00
[トピックス/PHPスクリプト]

ージョン上げ。

ifdefマクロのバグが修正されてますねー・・・って、やはりあれってバグだったのか。仕様かと思ってたよ(笑


て。ここいらで、現状で気になった事をまとめてみる。


 (1) RSSリーダーでRSSを読んだら日付が9時間ズレてる。

 (2) rnote.php?mode=admin で自分以外の誰にでも更新できてしまう。

 (3) スキン内でPHPスクリプト記述し、実行できるようになっていない。

 (4) カレンダーに自由度が無い。

 (5) 記事用に $site_link(サイト内リンク記述用) はあるのに $site_url(サイトURL) が無い。


他にもどーでもいいような事もあるが、要望&自分でなんとかできる事はこれくらいかな?

※あと、オンラインでの記事管理ができるようになったら、最新のツッコミ/Referer/トラックバックが見れると便利だな。


は、ひとつずつ説明。


 (1) RSSリーダーでRSSを読んだら日付が9時間ズレてる。

デフォルトのままだとタイムゾーン指定がないので補正されてしまってる模様。

これはオフィシャルで修正してもらいたい事だが、自分で修正する場合は・・・


 - rss_body.skin -

<dc:date><%=$last_modified fmt="%Y-%m-%dT%H-%M-%S"%></dc:date>
             ↓ ↓
<dc:date><%=$last_modified fmt="%Y-%m-%dT%H:%M:%S"%>+09:00</dc:date>

 - rss_item.skin -

<dc:date><%=$Date fmt="%Y-%m-%dT%H:%M:%S"%></dc:date>
             ↓ ↓
<dc:date><%=$Date fmt="%Y-%m-%dT%H:%M:%S"%>+09:00</dc:date>


としてください。

ここで重要なのが rss_body.skin 内の %H-%M-%S の区切り文字。

これを「:(コロン)」にしないと、いくら +09:00 を付け加えても意味がない。


RSSとは関係ないが日付関連で rnote_config.php の日付時刻表示のフォーマット

define(DATETIME_FORMAT,'%Y-%m-%dT%H-%M-%S');

define(DATETIME_FORMAT,'%Y-%m-%dT%H:%M:%S');

のほうがよいはず。






 (2) rnote.php?mode=admin で自分以外の誰にでも更新できてしまう。

現状では、キャッシュの再構築・RSSの生成を rnote.php?mode=admin 一発でできるので、悪意のある者の攻撃を受ける可能性がある。

対処方法として、rnote_config.php にまだ使用していない管理者パスワード設定があるから、これを使って管理者以外は更新できないようにする。


 - rnote.php -

admin で検索すると

if($_GET['mode']=='admin')

が2箇所見つかるはずです。これを2箇所共・・・

if($_GET['mode']=='admin' && $_GET['pwd']==ADMIN_PASSWORD)

に修正して下さい。

これで、rnote.php?mode=admin&pwd=パスワード でしか再構築ができなくなります。






 (3) スキン内でPHPスクリプト記述し、実行できるようになっていない。

スキン内でPHPスクリプトを記述して、カウンターとかアクセスログ収集とか、動的な事ができない。

オフィシャルでは、変数のバッティングを気にしているみたいですが、HTML生成がスクリプトの最後のほうにあるから気にするほどではないと思うのだが。

実際、当サイトでは・・・


 - rnote.php -

print CreateHTML(NUM_ITEMS,$skin_main);
           ↓ ↓
eval('?>'.CreateHTML(NUM_ITEMS,$skin_main));


と変更して使用しているが、問題なく使えてたりする。






 (4) カレンダーに自由度が無い。

現状のカレンダーはデザインが1つしかない。

CSSで多少デザイン変更できそうだが、CSSに依存するのを好まない人もいるだろう。 >ワタシの事(笑

とにかく、デザインを増やして選択できるようにするか、専用スキンが欲しいところ。

あと、これ以外に 先月・次月 といったボタンが必要かと思われる。


・・・って、まーうちではその改造はしているのだけどね。

とりあえず、先月・次月ボタンの追加する為のヒントになる部分だけ紹介します。


 - rnote.php -

  $p_y = $n_y = $y;
  if((int)$s_m == 1){
    $p_m=12;
    $p_y--;
    $n_m='02';
  }elseif((int)$s_m == 12){
    $p_m=11;
    $n_m='01';
    $n_y++;
  }else{
    $p_m=sprintf("%02d",((int)$s_m-1));
    $n_m=sprintf("%02d",((int)$s_m+1));
  }
  $rep.= '<a href="'.MakeLinkUrl('',0,"$p_y-$p_m")
    ."\" title=\"$p_y/$p_m\">&lt;&lt;</a> $y/$s_m <a href=\""
    .MakeLinkUrl('',0,"$n_y-$n_m")
    ."\" title=\"$n_y/$n_m\">&gt;&gt;</a></th></tr>\n";






 (5) 記事用に $site_link(サイト内リンク記述用) はあるのに $site_url(サイトURL) が無い。

サイト内記事リンクのURLを記述するとき <a>タグ内では $site_link だけでいいけど、<a>タグではさむ文字列に フルパスURL を記述したい場合 $site_url があると便利だなと思った。

で。$site_link を元に追加。


 - rnote.php -

function FileGetEntries($fname){
    ・
    ・
    ・
  if(ereg("$site_link/",$a)){
    $a=str_replace('$$site_link/',REPLASE_CHAR,$a);  // no replace
    $a=str_replace('$site_link/',$base,$a);
    $a=str_replace(REPLASE_CHAR,'$site_link/',$a);
  }
  if(ereg("$$site_url/",$a)){
    $a=str_replace('$$$site_url/',REPLASE_CHAR,$a);  // no replace
    $a=preg_replace('/\$site_url\/+/',SITE_URL,$a);
    $a=str_replace(REPLASE_CHAR,'$$site_url/',$a);
  }
  return $a;
}


赤い部分を追加することで、例えば、ここの記事へのリンクをしたい場合・・・

<a href="$site_link/topics/php/d20040722_rnote.htm">$site_url/$site_link/topics/php/d20040722_rnote.htm</a>

と記述すれば

https://www.punyu.net/topics/php/d20040722_rnote.htm

こうなる。







【補足】

これらは 0.9.3 での事で、最新のrNoteでは既に修正されています。


[ このエントリへはコメント出来ません ]

■ 新テンプレート『FUTABA type』 2004/07/16(金) 15:00
[トピックス/POTI-board]

POTI-boardの新しいテンプレートを紹介いたしまーす。

その名も・・・


FUTABA type


そう。名前通りふたば★ちゃんねる仕様のテンプレートでぃす。

元になった futaba.php のデザインも作っておくべきかな〜と思って、いまある機能を使えるようにアレンジしながら虹裏を意識して作ってみた。

まー初心に帰る・・・みたいな?

というか、原点復帰?


ちなみに、虹裏を意識したという事で、広告表示ができるようにしてますよん



【仕様】

 ・画像貼り掲示板としてが前提で、お絵かきはオマケっぽく

 ・お絵かき機能を使う時はアップロード不可

 ・基本的に v1.30 の機能が使える(というか、専用。下位互換考えてない)

 ・広告はメイン&レステンプレート内にリストを追加していく方法で(別ファイルにしてincludeするという手もある)

 ・入口を "futaba.htm" にするとより一層 ふたば★ちゃんねる 風に



 ダウンロード DownLoadFUTABA type lot.050602 [更新:2005/06/02 19:30]

【更新履歴】
・lot.050602 … v1.32対応
・lot.050114 … v1.30対応というか専用
lot.040716 … v1.3b4専用として初公開

※中に readme 入れてないです・・・別にいらないっしょ?

サンプル


を言うと、知り合いとの連絡用に使ってました、このテンプレートを。

だから、本当はv1.0の頃から存在していたりする(笑


[ このエントリへはコメント出来ません ]

Category:Index/トピックス (Total 17 items)

【ロリポップ!】初心者でも安心なレンタルサーバー。200MBで263円から。
CGI・SSI・PHPが使えます。
初心者でも安心なレンタルサーバー。200MBで263円から。
CGI・SSI・PHPが使えます。
Copyright(C) 1999-2024 SakaQ. All rights reserved.
Powered by rNote 0.9.6
Index | Information | Atelier | Link | Mail
PHP script | OnlineDVDrental Search