New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Wikipedia:PHPスクリプト - Wikipedia

Wikipedia:PHPスクリプト

出典: フリー百科事典『ウィキペディア(Wikipedia)』

この文書は現在更新されておらず、主に記録のために残されています。この文書を復活させたい場合には、ノートページか井戸端で提案してください。

過去の文書:この文書の内容は古く、現在のMediaWikiソフトウエアについての参考にはなりません。代わりにm:Help:Contents#For MediaWiki hackersにある文書を参照してください。

ウィキペディアは、MediaWikiと呼ばれるGPLフリーソフトウェア上で動作しています。当初は UseModWiki ソフトウェア(Phase I)が使われていましたが、2002年1月25日PHPプログラミング言語を使ってウィキペディアのために書かれた新しいソフトウェア(Phase II)に切替えられました。このPHPスクリプトは同年6月10日に更新され、Phase IIIとして2004年4月現在も使われています。

目次

[編集] 歴史

Magnus Manske はソフトウェアの最初の著者で、PHP を使って、MySQL リレーショナルデータベースの上に作りました。 このソフトウェアは GPL の元に公開されています。 他のプログラマ達は参加することを強く勧められています。 このスクリプトと要求事項のいくつかの議論が Wikipedia-L と、特に Wikitech-L で進んでいます。

[編集] 関連情報

このソフトウェアの情報や議論は以下のページから見つけることが出来ます:

[編集] 参照

もっと詳しい議論や、CVSを受け取るための明確なディレクトリーについては、m:wikipedia3を参照して下さい。

[編集] ソースコードのダウンロード

このコードは匿名のCVSで手にいれることが出来ます。入手先はソースフォージュのウィキペディア・プロジェクト: http://wikipedia.sourceforge.net の(オンラインのCVS閲覧) です。

この最新版を手にいれるには:

 CVSROOT = ":pserver:anonymous@cvs.wikipedia.sourceforge.net:/cvsroot/wikipedia"
 Module: phpwiki
 no password
 Directory: newcodebase

(Unixの)コマンドラインから:

 ~> cvs -d :pserver:anonymous@cvs.wikipedia.sourceforge.net:/cvsroot/wikipedia login
 (Logging in to anonymous@cvs.wikipedia.sourceforge.net)
 CVS password: <ENTER>
 ~> cvs -d :pserver:anonymous@cvs.wikipedia.sourceforge.net:/cvsroot/wikipedia checkout phpwiki/newcodebase

ウインドーズの cvs クライアントから:

 ~> cvs -z3 -d:pserver:anonymous@cvs.wikipedia.sourceforge.net:/cvsroot/wikipedia co phpwiki/newcodebase

[編集] インストール方法

以下のインストール方法は Linux などのUNIX系のOS向けの物です。PHP、mySQL、Apacheが動いたら他のOSでも動くと思います。

インストール方法については、ダウンロードしたファイルの INSTALL が最新の情報を持っているようですが、分かりやすいとは言えません。CVSの閲覧で READMEを見ましたが古い内容です(2003年5月6日)。

ここでは、Apacheウェブサーバー、PHPスクリプト・インタープリタ、mySQLデータベースサーバーが既に載って動いていることを前提にします。Red Hat Linuxの最新のLinuxではこれらは簡単に載せることができます。単に一般的なインストール方法にしたがってインストールすると、全部が動きはじめます。

上のダウンロード方法にしたがって最新のソースコードをダウンロードします。 全てのファイルをまとめたアーカイブファイルも提供されているようですが、メンテナンスされてないようです(2003年5月6日)。


以下の説明では例として

  • 作成するデータベース名:wikidb
  • データベースのユーザ名:wikiwuser
  • そのパスワード:xxxxx
  • サーバーの名前:myserver.net
  • トップページのURL:http://myserver.net/~mine/wiki/wiki.phtml
  • ダウンロードするフォルダー:/home/mine/public_html

とします。

[編集] ダウンロード

CVSによるダウンロード:

$ cvs -d :pserver:anonymous@cvs.wikipedia.sourceforge.net:/cvsroot/wikipedia login
password: <ここでは、単にENTERをおして空のパスワードを送ります>
$ cvs -d :pserver:anonymous@cvs.wikipedia.sourceforge.net:/cvsroot/wikipedia checkout phpwiki/newcodebase

これで、全ての必要なファイルがダウンロードされます。

ソースコードのトップが

http://myserver.net/~mine/wiki/

で、見えるようにします。以下のどれかを選びます。

$ mv phpwiki/newcodebase wiki

スクリプトのフォルダーに移動します。

$ cd wiki

メンテナンス用のコードも同じフォルダーから見えるようにします(シンボリックリンクを張ります)。

$ ln -s maintenance/* .

[編集] 設定ファイル

LocalSettings.phpを編集して、自分のシステムに合わせます。

設定の例:


<?
# For local site-specific settings.  This should be the
# only thing you need to configure to install the software.

include_once( "./DefaultSettings.php" );

# URLs for the wiki site
#
$wgServer           = "http://myserver.net";
$wgDirectry         = "/home/mine/public_html/wiki";
$wgWebPath          = "/wiki";
$wgStyleSheetPath   = "$wgServer$wgWebPath/stylesheets";
$wgScript           = "$wgWebPath/wiki.phtml";
$wgRedirectScript       = "$wgWebPath/redirect.phtml";
$wgArticlePath      = "$wgServer$wgScript?title=$1";
$wgUploadPath       = "http://myserver.net/~mine/upload";
$wgUploadDirectory      = "/home/mine/public_html/wiki/upload";
$wgMathPath         = "http://wroclaw.taw.pl.eu.org/~taw/wiki/math";
$wgMathDirectory    = "/home/mine/public_html/wiki/math/";
$wgTmpDirectory     = "/home/mine/public_html/wiki/tmp/";
$wgLogo                         = "$wgUploadPath/wiki.png";

# MySQL settings
#
#$wgDBserver         = "127.0.0.1";
$wgDBserver         = "localhost";
$wgDBname           = "wikidb";
$wgDBintlname           = "intl";     
$wgDBuser           = "wikiuser";
$wgDBpassword       = "xxxxx";
$wgDBadminpassword  = "adminpass"; # Only needed for admin works
$wgDBsqluser        = "sqlpass";   # For read-only sql queries by sysops
$wgDBminWordLen         = 3;       # Match this to your MySQL fulltext

# Turn this on during database maintenance
#
# $wgReadOnly = true;

# Turn this on to get HTML debug comments
#
# $wgDebugComments      = true;
$wgDebugLogFile         = "$wgUploadDirectory/logfile";

# Which interwiki prefix represents _this_ wiki?  This
# only needs to be set when installing the software on
# on of the sites recognized as an interwiki.
# 
$wgLocalInterwiki   = "mine";

$wgLanguageCode     = "ja";
$wgInterwikiMagic       = false; # Treat language links as magic connectors, not inline links
#$wgUseNewInterlanguage = true; //don't switch on unless you have intl database ready.

$wgInputEncoding        = "utf-8";
$wgOutputEncoding       = "utf-8";

?>

なお、上の例では、

$wgInterwikiMagic  = false;

としましたので、WIKIの文章中で[[ja:ウィキペディア]]とした場合、ウィキペディア日本語版の記事へ自動的にリンクが張られるようになります。

この機能をインターウィキと呼びますが、この設定は Interwiki.php3 にあります。ウィキペディア以外のサイトへも同様の方法で自動リンクをすることができます。


[編集] データベースの作成

mySQLに必要なデータベースを作ります。ここでは、mysqlの管理ユーザをrootとして説明します。パスワードなどを知らない場合は管理者にデータベースの作成を依頼して下さい。

$ mysql -u root -p
Enter password: <必要なパスワードをいれます>
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16 to server version: 3.xx.xx
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database wikidb;
Query OK, 1 row affected (0.01 sec)
mysql> USE mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> GRANT CREATE,DROP,ALTER,SELECT,INSERT,UPDATE,DELETE ON wikidb.* to wikiuser@localhost identified by 'xxxxx';
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
$ 

なお、筆者のテスト環境は Red Hat Linux 7.2 を更新している版で、PHPの版が 4.1.2 だったので、PHP4.2.x を前提としているらしい データベースの作成スクリプトが動かなかった。(INSTALLには、動かし方も書いていなかった)。

もし、あなたの PHPが、4.1.n 以下なら、createdb.php を編集して、yes で動くようにする。とりあえず簡単に流しました。

古い行:

$fp = fopen( "php://stdin", "r" );
$response = trim( fgets( $fp ) );
fclose( $fp );

新しい行:

#$fp = fopen( "php://stdin", "r" );
#$response = trim( fgets( $fp ) );
#fclose( $fp );
$response="yes";

単に、確認せずに実行するようにしました。

以下の用にしてデータベースを作成させます。

$ php createdb

以後、間違ってデータベースを壊す心配のないように、外部の人が勝手にスクリプトを実行しないように、シンボリックリンクを消します。(ブラウザーからも実行することができますので)。

$ rm createdb.php updated.php

(多分、maintenance から張った全てのシンボリックリンクを削除したほうが良いと思います)。

[編集] ウィキが書き込むフォルダーを作成

必要なサブフォルダーを作ります。

$ cd ..
$ mkdir upload math tmp

Apacheのプロセスが書き込めるようにします。(ここではとりあえず誰でも書き込めるようにします)。

$ chmod o+w upload math tmp

[編集] テスト

では、自分のウィキペディアを参照してみて下さい。

http://localhost/~mine/wiki/wiki.phtml

または、

http://myserver.net/~mine/wiki/wiki.phtml

で見えるはずです。

http://myserver.net/~mine/wiki/

でトップページが見えるようにするには、

$ cd wiki
$ ln -s wiki.phtml index.phtml

で、index.phtml にシンボリックリンクを張っておきます。

[編集] デフォルトのユーザ

二つのユーザがデフォルトで作られます。

  • WikiSysop - システム管理の権限があります。
  • WikiDeveloper - システム管理と開発者の両方の権限があります。

パスワードはデータベースのパスワードと同じものが設定されます。

[編集] システムの保護

LocalSettings.php3 が、あなたとアパッチ以外から見られないように保護します。

  1. 「ファイルの持ち主をあなた、グループをアパッチの走っているユーザ」
  2. または、「ファイルの持ち主をアパッチの走っているユーザ、ファイルのグループをあなた自身またはあなたが入っているグループ」に設定します。
1の場合は、chmod 640 LocalSettings.php3
2の場合は、chmod 460 LocalSettings.php3

にします。

意味が分からなかったら、システム管理者に頼むのが一番です。(システム管理の権利を持っていないと設定が出来ません)。

[編集] スクリプトの更新

スクリプトは常に開発が更新され、問題点が修正され、機能が追加されています。 その後の、CVSで最新のソースコードで更新する場合は、簡単です。

$ cd /home/mine/public_html/wiki
$ cvs -z3 update

あなたが変更したファイルの内容を保存するように、自動的に編集が行われます。(これが CVSの何たるかですが)。 で、自動的に更新されます。このときのメッセージを見ていて下さい。 詳しくは、CVSを見て下さい。

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu