moodle 如何内外网同时访问

这个问题一个困扰着我,不知有没有完美的解决办法。

安装moodle时你用的什么地址,访问时似乎也只能用什么地址来访问。所以只好我内网使用时,在config.php里改为内网的地址,在外网访问时,再改成外网的地址。很不方便。而同在一个服务器的数据库下安装的discuz论坛却无此麻烦。只要安装好,无论用内网地址,还是用外网地址访问都非常方便。

就是在内网使用时还有如下问题:你在服务器如果用http://localhost/moodle安装好,而在其它客户机上用http://该服务器的IP/moodle可以访问到首页,但你登录或访问moodle上的其它页面时,地址仍是http://localhost/moodle/login.php,所有你非得用http://该服务器的IP/moodle安装才行。

我想问的问题是,对于config.php的"$CFG->wwwroot="地址字符串是否可添加多个?如何添加?

谢谢各位。

#######################################

我的经验是在公网上注册一个域名(例如www.abc.cn),进行泛名解析(*.abc.cn)指向公网IP,然后将在学校内部用ISA发布moodle。公共名称为moodle.abc.cn,IP指向内网moodle服务器的IP。在校内做DNS(可以做在ISA服务器上),将moodle.abc.cn解析到内网IP。在Moodle系统中用域名进行配置,$CFG->wwwroot='http://moodle.abc.cn'。一切OK!

请访问上海市三林中学的仰高课程学习平台。http://moodle.shslzx.cn

这个方案,我在浦东的几个项目学校试过,均没问题。

#########################################

刚刚找到解决方法,根据内外网地址修改$CFG->wwwroot=的值;代码如下:

unset($CFG);

function _get_client_ip()//取得代理的IP等
{
  if(getenv('HTTP_CLIENT_IP'))
  {
    $client_ip = getenv('HTTP_CLIENT_IP');
  } elseif(getenv('HTTP_X_FORWARDED_FOR'))
  {
    $client_ip = getenv('HTTP_X_FORWARDED_FOR');
  } elseif(getenv('REMOTE_ADDR'))
  {
    $client_ip = getenv('REMOTE_ADDR');
  } else
  {
    $client_ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
  }
  Return  $client_ip;
}
function Is_Network()//判断是否为内网network 或 Net foreign
{
  $b=0;
  $c_ip=_get_client_ip();
  $c_ip=substr($c_ip,0,3);
  if (($c_ip=="192")||($c_ip=="127"))//这里添加内网段  {
  $b=1;//内网
  }
  Return $b;
}

$CFG->dbtype    = 'mysql';
$CFG->dbhost    = 'localhost';
$CFG->dbname    = 'moodle';
$CFG->dbuser    = 'root';
$CFG->dbpass    = 'bysj123';
$CFG->dbpersist =  false;
$CFG->prefix    = 'mdl_';

if (Is_Network()==0) {
$CFG->wwwroot   = '  ';//外网地址的ip
} else {
$CFG->wwwroot   = '' ;//内网ip
}

$CFG->dirroot   = 'E:/AppServ/www/moodle';
$CFG->dataroot  = 'E:/AppServ/moodledata';
$CFG->admin     = 'admin';

$CFG->directorypermissions = 00777;  // try 02777 on a server in Safe Mode

$CFG->unicodedb = true;  // Database is utf8

$CFG->unicodecleanfilename = true; // Allow upload with Chinese filename

require_once("$CFG->dirroot/lib/setup.php");
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.
?>

############################################

安装moodle后,找到moodle安装目录下的config.php文件,找到$CFG->wwwroot = 'http://xxx.xxx.xxx.xxx';将它修改为$CFG->wwwroot = 'http://'.$_SERVER['HTTP_HOST'];即可。如果有下级目录的话修改为$CFG->wwwroot = 'http://'.$_SERVER['HTTP_HOST'].'/moodle';

解决思路是让系统自动判定访问路径。完美解决问题 。

我用的最后一种方法,很方便。资源的路径问题,没有完全测试。

更多Moodle信息:http://www.aieln.com/system/moodle/

Moodle——开启reCAPTCHA,增加类注册验证码功能

最近看到Moodle官方上去注册时,要输入像验证码一样的字符,感觉很有意思,经过发掘,发现Moodle已经集成这个功能reCAPTCHA是利用CAPTCHA的原理(CAPTCHA的中文全称是全自动区分计算机和人类的图灵测试),借助于人类大脑对难以识别的字符的辨别能力,进行对古旧书籍中难以被OCR识别的字符进行辨别的技术。

 

 

因此我觉得,可以来适当起到防恶意注册的功能。

现在让我们也来让自己的Moodle站点启用reCAPTCHA

1、首先去reCAPTCHA官方获取KEY

https://admin.recaptcha.net/accounts/signup/?next=

按下面的图示进行注册获取KEY

 

 

 

 

将上图的中PublicKey(公共密钥)、PrivateKey(私用密钥)记下

2、打开Moodle,以管理登陆,进入管理

?用户?身份验证?管理验证方式页面,在底部,有二个空的“ReCAPTCHApublickey”及“ReCAPTCHAprivatekey”表单,这时将将上图得到的PublicKey及PrivateKey粘贴过来。点击保存更改。

 

 

3、启用reCAPTCHA验证注册

还是在管理验证方式页面,点上部表格内的“基于电子邮件的身份验证”的设置,在打开的页面中,将“EnablereCAPTCHAelement”设成“是”,保存更改就好了。

 

 

4、现在我们以新用户的身份来注册,你就看到reCAPTCHA的验证信息了。

如果看不清,可以点击“GetanotherCAPTCHA”,刷新图片,点“GetanaudioCAPTCHA”或“

GetanimageCAPTCHA”可以实现在语音验证或图片验证间的互换。

 

 

体验地址:http://moodle.emoodle.org:8080/login/signup.php

 

基于XAMPP的Moodle一体安装包下载

Moodle官方网推荐下载的基于XAMPP的Moodle一体安装包

集成软件:

+Apache2.2.8

+MySQL5.0.51a

+PHP5.2.5

+XAMPPliteControlVersion2.5fromhttp://www.nat32.com

+XAMPPliteSecurity1.0

+SQLite2.8.15

+OpenSSL0.9.8g

+phpMyAdmin2.11.4

+Webalizer2.01-10

+ZendOptimizer3.3.0

+eAccelerator0.9.5.2forPHP5.2.5(commentinphp.ini)

+moodle1.9+(Build:20080507)'

系统要求:

+64MBRAM(RECOMMENDED)

+200MBfreefixeddisk

+Windows98,ME

+WindowsNT,2000,XP(RECOMMENDED)

----------------------------------------------------------------------

软件来自Moodle.org,更新地址:http://download.moodle.org/windows/

 

软件下载

下载:

大小:59.5 MB

 

moodle平台天气代码

moodle中添加天气的代码

打开编辑功能,添加HTML,配置版块HTML,切换到HTML代码模式,把下面的代码复制进去,提交。

<iframe src=http://old.aieln.com/info/show/1282/"http://weather.265.com/weather.htm" width="168" height="50" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" name="265">

更多Moodle信息:http://www.aieln.com/system/moodle/

moodle17讲第10课:如何在Moodle课程中设计标签

如何在Moodle课程中设计标签.swf

Moodle课程中的最后一种资源是标签,它允许你在课程页面的中间插入文本和图片。试想如果作为教师如果能够在一个学习阶段结束后,及时的将优秀学生在课程中展示出来,应该还是非常受学生欢迎的,例如“0602初一英语”课程中的Module1结束后,将优秀学生在课程阶段学习的内容中发布,效果肯定不错,如图10.1所示。在第10课中我们主要一起来学习如何使用标签这种资源。

 

下载阅读

下载:

大小:419 KB

 

Theme基础一

Moodle中Theme表示主题风格,就是利用Theme,管理员可以定义站点的主题风格,课程创建者可以定义课程的主题风格,学习者可以定义自己所看到课程的主题风格。

1、Moodle中的主题风格目录中有哪些文件?

●  pix文件夹包括在moodle主题中要用到的所有图片和图标。

●  config.php这个文件用于控制CSS如何运行,你可以将自己的Theme整合到标准的Theme中,也可以从其他的父theme中继承那些CSS文件。

●  docstyle.php(可选)

这个文件主要用于设置强制使用一些样式。

●  favicon.ico这个图标是会出现浏览器的地址之前的小图片。

●  header.html和footer.html这是用于控制moodle顶部和底部的页面文件,其中包括顶部的logo、登录、跳转菜单和底部的moodlelogo等。通过修改这两个页面,可以自己定义logo图片的链接地址和文字。

以下是在这两个文件中用到的主要变量:

$CFG(所有系统变量对象)$THEME(所有从config.php中获得的当前theme对象)$course(当前课程对象)$meta(所有元标签,包括stylesheets)$home(boolean)$title(页面标题)$heading(headingforthepage)$navigation(导航)$navmenulist(xhtml)$menu(弹出菜单或按钮)

●  styles.php该文件主要被header.html调用,一般不要修改。

●  styles_layout.css

    styles_fonts.css

    styles_color.css

    styles_moz.css

其中styles_layout.css用于设置页面布局,styles_fonts.css用于设置字体大小,styles_color.css用于设置颜色,styles_moz.css主要用于设置在Firefox或者Mozilla中浏览的格式。

●  其他文件

其他文件包括图片文件,比如主题截图,帮助页面等。

 

Moodle主题皮肤——Miracles of Indonesia

ThemeFeatures

MiraclesofIndonesiaisamoodlethemededicatedtotheschoolsanduniversitiesofIndonesia.Therearenoboundariesforothereducationalusesofcourse.

TestedonMoodlev1.9.

Width:992px.

 

 

下载   Miracles of Indonesia

下载:

大小:186 KB

 

Moodle评论

评价版块可以被添加到任何一个页面,以允许用户添加评论。

网站管理设置

网站管理员可以设置显示评论的数量:设置>网站管理>首页>首页设置。

管理员可以关闭网站的评论:设置>高级特性。

注意:管理员也可以检查用户添加和删除了哪些评论:设置>网站管理>报告>评论。

更多Moodle信息:http://www.aieln.com/system/moodle/