MEDIAWIKI 的安装很简单,首先下载 MediaWiki 的压缩包,然后解压缩到 XAMPP 的 htdocs 目录下,根据提示输入 MYSQL 的配置信息,数据库创建完成后就可以使用了。
关于配置,首先是左上角的 LOGO , 使用自己的图片替换 mediawiki/skins/common/images/wiki.png 文件即可。
MEDIAWIKI 部署的目的是项目组内部使用,禁止游客编辑和查看,因此打开 mediawiki/LocalSettings.php 在最后添加如下三行:
$wgGroupPermissions['*']['createaccount'] = false;
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['read'] = false;
这样就禁止了游客注册账号,同时禁止了游客查看和编辑内容的权限。
最后是配置短路径,就是标题看起来是如下的样子:
http://www.arctos.net/wiki/首页
而不是下面这种样子
http://www.arctos.net/mediawiki/index.php?title=首页
最简单的配置方法是,在 mediawiki/LocalSettings.php 的最后添加如下三行:
$wgScript = "$wgScriptPath/index.php";
$wgArticlePath = '/wiki/$1';
$wgUsePathInfo = true;
需要注意的 $wgScriptPath 指向实际的 mediawiki 虚拟目录,而 $wgArticlePath 的虚拟目录一定要与 mediawiki 不同。
然后我们在 XAMPP 的 htdocs 目录下新建一个 .htaccess 文件,里面内容如下:
RewriteEngine On
RewriteRule ^wiki/(.*)$ /mediawiki/index.php?title=$1 [PT,L,QSA]
RewriteRule ^wiki/*$ /mediawiki/index.php [L,QSA]
RewriteRule ^/*$ /mediawiki/index.php [L,QSA]
重启 apache ,进入 wiki 就可以看到短路径名称了。
未完成的任务:登陆和编辑时看到的仍然是长路径,继续研究中...
详细信息请参阅:MediaWiki:Short_URL
1、首先在LocalSettings.php中$wgEnableEmail = true;、$wgEnableUserEmail = true; 设置为true
2、设置下面的邮件服务器、发送人的用户名和密码、端口等
$wgSMTP = array(
'host' => "smtp.163.com",
'IDHost' => "mail.163.com",
'port' => 25,
'auth' => true,
'username' => "xxx@163.com",
'password' => "xxx"
);
$wgEmergencyContact = "liwenhjuan@163.com";
$wgPasswordSender = "liwenhjuan@163.com";
$wgPasswordSenderName = 'liwenjuan';
$wgEnotifUserTalk = true; # UPO
$wgEnotifWatchlist = false; # UPO
$wgEmailAuthentication = false;
需要注意的是$wgEmergencyContact、$wgPasswordSender必须和username'保持一致,否则会发生组没有验证的错误 :Error sending mail: Group name did not validate.
3、设置好LocalSettings.php内容后运行会发现找不到mail.php。需要说明的是默认情况下php发送邮件是用mail方法。但是window中不支持此方法,所以我们需要用pear 及其组件来发送.所以我们需要安装pear及其组件
4、安装好pear后在LocalSettings.php中添加$path = array( $IP, "$IP/includes", "$IP/languages","D:/wamp/bin/php/php5.3.5/PEAR/PEAR","D:/wamp/bin/php/php5.3.5/PEAR");这样mediawiki就能找到pear的安装目录,不用我们在去发送邮件的代码中改了
5、记得不用改变php.ini中邮件的东西。如果出现连接不到本地邮件服务器的话说明你的设置有问题。我们用了pear之后就不用管本地的了
http://blog.csdn.net/zuiaituantuan/article/details/5816523
在mediawiki中的邮件功能主要有:
1注册新用户时会发邮件到用户注册信箱进行确认。
2用户修改,找回密码时会发邮件确认。
3用户的监视页面发生改变时会发邮件通知已经注册监视了该页面的用户。
对应在wiki设置中,需要改动两个文件:includes下的Default settings文件,以及Local Settings文件。defaultsettings文件中,主要设置管理员邮箱的用户名,密码,邮件服务器的信息等。
但是在设置前有些软件包需要提前下载安装。
mail等pear模块需要独自下载安装。
所以,总结的设置过程如下:
下载安装软件包
http://download.pear.php.net/package/Mail-1.2.0.tgz
http://download.pear.php.net/package/Net_SMTP-1.4.2.tgz
http://download.pear.php.net/package/Net_Socket-1.0.9.tgz
安装
pear install Mail-1.2.0.tgz
pear install Net_SMTP-1.4.2.tgz
pear install Net_Socket-1.0.9.tgz
改动文件
需要改动两个文件:includes下的Default settings文件,以及Local Settings文件。
defaultsettings文件中,主要设置管理员邮箱的用户名,密码,邮件服务器的信息等,如:
$wgSMTP = array(
"host" => 'smtp.opi-corp.com',
"IDHost" => 'opi-corp.com',
"port" => "25",
"auth" => true,
"username" => '管理员的opi邮箱',
"password" => '管理员密码');
记得还要$wgEnableUserEmail = true;$wgEnableEmail = true;
而localsettings文件主要设置对应email服务的路径,以及发送邮件对应的邮箱名字:
$path = array( $IP, "$IP/includes", "$IP/languages","pear安装路径/PEAR/PEAR","pear安装路径/PEAR");
$wgEmergencyContact = "管理员opi邮箱";
$wgPasswordSender = 管理员opi邮箱;
个人修改
登录成功后,在我的参数设置中线验证邮箱,然后将希望的邮箱设置选项相中。然后保存。。。。。。
完成
备注
取消身份验证设置如下:
在defaultsettings文件中,主要设置管理员邮箱的用户名,密码,邮件服务器的信息等,如:
$wgSMTP = array(
"host" => 'smtp.opi-corp.com',
"IDHost" => 'opi-corp.com',
"port" => "25",
);
打开文件/includes/UserMailer.php,在方法 “static function send()”中,找到如下一行
$headers [ 'From' ] = $from -> toString ( ) ;
将最后的信息更改一下即可,如
$headers [ 'From' ] = "wiki@opi-corp.com" ;
但是要注意,这里必须是完全的邮件格式,并且邮件服务器只能是注册时所用的(这里为opi-corp.com),否则出错。
另外,如果取消了身份验证,那么所有用户在注册时只能注册opi-corp.com的邮件,不能为其他的邮件服务器,添加身份验证则没这个限制。