常见问题

来自Moodle中文网
跳转至: 导航搜索

安装问题[编辑]

硬件[编辑]

软件[编辑]

常见设置[编辑]

基于邮件认证的SMTP设置[编辑]

  • 设置位置:网站管理►插件►消息输出►Email
  • 3.2版本设置位置:网站管理►服务器►电子邮件►发送邮件设置
  • 基于邮件认证的SMTP设置必备条件:
    • 发送邮件帐户必须支持或开通SMTP。
    • 管理员默认邮箱设置为发送邮件账户。
    • 技术支持:支持email要填写发送邮件账户,参见技术支持
    • 了解发送SMTP邮箱的参数设置。
  • 基于邮件认证的SMTP设置注意点:
    • SMTP主机地址:一般格式为:[server]:[port]如smtp.sina.com,(默认端口为25,可不填)。
    • 如果使用安全连接:SSL或TLS,SSL通常使用465端口,TLS通常使用587端口。请在上面的SMTP主机地址中加上端口号,如smtp.sina.com:465
  • 查询服务器系统环境,如sendmail是否安装。SHELL下运行以下命令完成安装:
    • Debian系:apt-get install sendmail
    • CentOS系:yum install sendmail
  • 使用163免费邮箱SMTP设置注意点:
    • 开启“客户端授权密码”:为每个客户端添加专属的加密授权密码,避免密码泄漏造成邮箱安全隐患使用授权密码替代密码在客户端登录邮箱,加密验证更安全。
    • SMTP主机地址为:smtp.163.com
    • SMTP 安全:无
    • SMTP Auth Type:LOGIN或PLAIN(如果尝试选其一)
    • SMTP密码:客户端授权密码
  • 更多设置说明参见Email
  • 3.2版本在电子邮件显示设置增加了"Email via information"参数。默认:总是。可选:从不,仅当从一个no-reply的地址。
    • 默认时,要在“不要回复的地址noreplyaddress”此填写当前的邮箱账号,不能默认:noreply@m3.emoodle.org
  • 如果发送失败,可以打开发送调试功能,了解发送问题,打开办法:
  1. 网站管理开发调试
  2. 调试信息开发者:针对开发者的额外moodle调试信息
  3. 调试email发送过程:勾上。

Moodle3.2版本SMTP出现发送问题[编辑]

 2017-05-04 07:34:38 CLIENT -> SERVER: MAIL FROM:<noreply@m3.emoodle.org> 
 2017-05-04 07:34:38 SMTP -> get_lines(): $data is "" 
 2017-05-04 07:34:38 SMTP -> get_lines(): $str is "553 Envolope sender mismatch with login user.. " 
 2017-05-04 07:34:38 SERVER -> CLIENT: 553 Envolope sender mismatch with login user.. 
 2017-05-04 07:34:38 SMTP ERROR: MAIL FROM command failed: 553 Envolope sender mismatch with login user.. 
 2017-05-04 07:34:38 The following From address failed: noreply@m3.emoodle.org : MAIL FROM command failed,Envolope sender mismatch with login user.. ,553,SMTP server error: MAIL FROM command failed Detail: Envolope sender mismatch with login user.. SMTP code: 553 </pre>
  • 如上面加粗部分为“不要回复的地址”,默认为noreply@当前访问地址,如noreply@m3.emoodle.org。
  • Moodle3.2版本的将邮箱发送与接收选项移到了:网站管理►服务器►电子邮件
  • 并新增了选项“Email via information”, 默认:总是。
  • 如果“不要回复的地址”没有正确设置就会出现如上面发送错误
  • 建议:将“不要回复的地址”设成完整的邮箱名,且要与发送帐号相同,如emodle@sina.com。

报表中文无法正确显示[编辑]

  • 中文语言系统,在访问报表时,出现中文无法正确显示,只有几个小方框。
  • 原因:Moodle报表是通过GD来生成图表的。GD生成时,使用Unicode字体做服务器端的文本渲染。默认字体是lib/default.ttf其适合大多数语言。但缺少中文字体。
  • 解决办法:
    • 从中文操作系统中,复制一个中文字体包文件,改名为default.ttf
    • default.ttf上传到moodledata/lang/zh_cn/fonts目录下,如果没有fonts要目录,请新建。
    • 如果系统语言只单纯提供中文语言,则可以把默认字体lib/default.ttf用中文字体包替代。但一般不建议这样做。

使用问题[编辑]

上传文件的时候弹出个php下载的对话框,是什么原因?[编辑]

经研究是和IE浏览器的兼容性有关。如下图,建议使用IE8或以上的浏览访问。推荐使用火狐、Chrom等浏览访问,可避免这个问题。
兼容性1.png 兼容性2.png

在IE11访问MOODLE,默认语言为什么是英文?[编辑]

这是因为,IE11默认语言是英文。我们可以改为中文的办法(下面的是基于Win10系统) 详见百度经验

忘记Moodle的管理员帐号admin的密码[编辑]

使用以下命令,把admin帐号密码修改为abc123,数据库密码为123456(请根据实际填写)

root@debian:~# mysql -uroot -p123456
MariaDB [(none)]> UPDATE moodle.mdl_user SET password='e99a18c428cb38d5f260853678922e03' WHERE username='admin';
MariaDB [(none)]> quit

也可以直接使用下面的命令:

root@debian:~# mysql -u root -p123456 -h localhost -e "UPDATE moodle.mdl_user SET password='e99a18c428cb38d5f260853678922e03' WHERE username='admin';"

若想把密码重置为其它密码如123456,则命令中密码字串要改为e10adc3949ba59abbe56e057f20f883e即可,其他密码字串可以按下面的方法获取。

Linux下获取相应密码字串的方法:

root@debian:~# echo -n 'abc23'|md5sum|cut -d ' ' -f1

出现“网站管理”等级联菜单无法点开的问题[编辑]

  • 在部分的系统中,安装后的平台会出现等级联菜单无法点开的问题。
  • 原因:这个问题应该和“斜线参数”相关。在使用Nginx作为WEB的平台上,如果平台未启用“斜线参数”,会产生如上问题。
  • 解决:
    • 在服务器上,找到Nginx虚拟主机的配置文件
    • 在server段添加以下代码
    • if (!-e $request_filename) {rewrite "^(.*\.php)(/)(.*)$" $1?file=/$3 last;}
    • 重启Nginx服务即可解决问题
    • 提示:未来的Moodle版本中(应该是3.0以上的版本)“斜杠参数”将会是必须的。

详解Moodle文件上传限制[编辑]

Moodle文件上传大小限制受到三个方面的制约:

  • Web服务器的制约

1.Nginx的配置nginx.conf (注:包管理器安装的Nginx,其配置文件一般在/etc/nginx下;编译安装的Nginx配置文件一般在安装目录如/usr/local/nginx/conf下) 在http段查找是否有client_max_body_size配置项,如果没有,则使用默认配置值1m,也就你上传文件大小最大1MB,添加或修改其值为你所需要的值:

    client_max_body_size 512m;

修改完成后重启Nginx,使修改生效

2.Apache的配置httpd.conf 查找或修改LimitRequestBody的值,如同样需要上传512MB文件,则设置为

 LimitRequestBody 536870912

(注:512*1024*1024=536870912) 修改完成后重启Apache,使修改生效

  • PHP的制约

php的配置文件修改时注意不能只修改上传文件大小,它还受制于时间 编辑php.ini文件,修改以下参数

 max_execution_time = 300
 max_input_time = 600
 post_max_size = 520M
 upload_max_filesize = 512M

注意:upload_max_filesize是允许上传文件大小的最大值,而post_max_size控制在采用POST方法进行一次表单提交中PHP所能够接收的最大数据量,一定要比upload_max_filesize略大 修改完成后如果是Nginx服务器,重启php-fpm;如果是Apache服务器,重启Apache。

  • Moodle本身的制约

1.网站总控 网站管理→安全→网站策略→上传文件大小的最大值:网站上传限制 (你可以在 网站管理下面的搜索框直接搜索 上传文件)

2.作业 网站管理→插件→活动模块→作业→提交插件→文件提交→最大提交大小:默认1M,自行按需修改

3.互动评价 网站管理→插件→活动模块→互动评价→作业附件大小受限:网站上传限制

4.讨论区 网站管理→插件→活动模块→讨论区→允许上传的附件大小:默认500KB,自行按需修改

5.课程 网站管理→课程→课程缺省设置→最大上文件:网站上传限制